Merge lp://staging/~joetalbott/uci-engine/split_infra_failures into lp://staging/uci-engine
- split_infra_failures
- Merge into trunk
Status: | Merged |
---|---|
Merged at revision: | 918 |
Proposed branch: | lp://staging/~joetalbott/uci-engine/split_infra_failures |
Merge into: | lp://staging/uci-engine |
Diff against target: |
152 lines (+57/-19) 3 files modified
ci-utils/ci_utils/amqp_utils.py (+9/-0) ci-utils/ci_utils/amqp_worker.py (+10/-1) ci-utils/ci_utils/tests/test_amqp_worker.py (+38/-18) |
To merge this branch: | bzr merge lp://staging/~joetalbott/uci-engine/split_infra_failures |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Paul Larson | Approve | ||
Francis Ginther | Approve | ||
Vincent Ladeuil (community) | Approve | ||
Larry E Works (community) | Approve | ||
Review via email: mp+245789@code.staging.launchpad.net |
Commit message
amqp_worker - Treat DataStoreExceptions as infrastructure failures.
Description of the change
amqp_worker - Treat DataStoreExceptions as infrastructure failures.
Francis Ginther (fginther) wrote : | # |
When this task was originally discussed, I understood that we wanted to focus on only the test_runner first and so we would need to subclass and override this code just for the test_runner. However, there is much here that I think makes sense and I think the approach should apply to all AMQPWorker components.
The test_runner component does define a couple of exception classes that represent infrastructure failures (for example, TestBedException), but I think the approach of generically treating all non-KeyboardExc
Vincent Ladeuil (vila) wrote : | # |
Good job !
I think that's the right approach (especially introducing progress_errored !).
I agree with Francis remarks overall.
I'll add that we don't want to introduce a coupling between amqp_worker and data_store so I'd rather override in the test runner which knows about data_store.
https:/
As Francis said, we don't want to list all possible exceptions in amqp_worker and TestBedException is definitely specific to the test runner only.
Vincent Ladeuil (vila) wrote : | # |
> I'll add that we don't want to introduce a coupling between amqp_worker and
> data_store so I'd rather override in the test runner which knows about
> data_store.
Wrong, amqp_worker already import data_store.
> TestBedException is definitely specific to the test runner only.
But that is still valid.
Vincent Ladeuil (vila) wrote : | # |
I was vaguely considering allowing daughter classes to define their exceptions but that's not needed at that point.
Francis Ginther (fginther) wrote : | # |
Looks good! I also like the introduction of progress_errored(), just forgot to mention it earlier.
Paul Larson (pwlars) wrote : | # |
I like this, and have a dumb question about it because I haven't had a chance to try it for myself yet. If you run a ticket through with this and get an infrastructure failure, is this enough so that it actually shows up in the ticket completion status to the user as "error" rather than "failure"? If so, even better, but I wonder if as a later task we should actually explain the difference on the UI somehow. +1 from m e
Ubuntu CI Bot (uci-bot) wrote : | # |
The attempt to merge lp:~joetalbott/uci-engine/split_infra_failures into lp:uci-engine failed. Below is the output from the failed tests.
Checking juju status
Private PPAs: disabled
Preparing local branch upload...
Uploading local branch, fingerprint 19728412d2e1dd2
Installing keys from bzr+ssh:
Running juju-deployer -v -c /tmp/tmpHRJjww/
Tests running...
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
Ubuntu CI Bot (uci-bot) wrote : | # |
The attempt to merge lp:~joetalbott/uci-engine/split_infra_failures into lp:uci-engine failed. Below is the output from the failed tests.
2015-01-09 10:12:22 INFO juju.cmd supercommand.go:37 running jujud [1.20.14.
2015-01-09 10:12:22 DEBUG juju.agent agent.go:377 read agent config, format "1.18"
2015-01-09 10:12:22 INFO juju.jujud unit.go:78 unit agent unit-ci-
2015-01-09 10:12:22 INFO juju.worker runner.go:260 start "api"
2015-01-09 10:12:22 INFO juju.state.api apiclient.go:242 dialing "wss://
2015-01-09 10:12:22 INFO juju.state.api apiclient.go:176 connection established to "wss://
2015-01-09 10:12:22 INFO juju.state.api apiclient.go:242 dialing "wss://
2015-01-09 10:12:22 INFO juju.state.api apiclient.go:176 connection established to "wss://
2015-01-09 10:12:23 INFO juju.state.api apiclient.go:242 dialing "wss://
2015-01-09 10:12:23 INFO juju.state.api apiclient.go:176 connection established to "wss://
2015-01-09 10:12:23 INFO juju.worker runner.go:260 start "upgrader"
2015-01-09 10:12:23 INFO juju.worker runner.go:260 start "logger"
2015-01-09 10:12:23 DEBUG juju.worker.logger logger.go:35 initial log config: "<root>=DEBUG"
2015-01-09 10:12:23 INFO juju.worker runner.go:260 start "uniter"
2015-01-09 10:12:23 DEBUG juju.worker.logger logger.go:60 logger setup
2015-01-09 10:12:23 INFO juju.worker runner.go:260 start "apiaddressupdater"
2015-01-09 10:12:23 INFO juju.worker runner.go:260 start "rsyslog"
2015-01-09 10:12:23 DEBUG juju.worker.rsyslog worker.go:75 starting rsyslog worker mode 1 for "unit-ci-
2015-01-09 10:12:23 DEBUG juju.worker.logger logger.go:45 reconfiguring logging from "<root>=DEBUG" to "<root>
2015-01-09 10:12:38 INFO juju-log Making dir /srv/ci-
2015-01-09 10:12:39 INFO juju-log Adding dependencies.
2015-01-09 10:12:39 INFO juju-log installing apt packages...
2015-01-09 10:12:40 INFO config-changed gpg: keyring `/tmp/tmp1rpXVF
2015-01-09 10:12:40 INFO config-changed gpg: keyring `/tmp/tmp1rpXVF
2015-01-09 10:12:40 INFO config-changed gpg: requesting key 6A8DFC40 from hkp server keyserver.
2015-01-09 10:12:40 INFO config-changed gpg: /tmp/tmp1rpXVF/
2015-01-09 10:12:40 INFO config-changed gpg: key 6A8DFC40: public key "Launchpad PPA for Canonical CI Engineering" imported
2015-01-09 10:12:40 INFO config-changed gpg: Total number processed: 1
2015-01-09 10:12:40 INFO config-changed gpg: imported: 1 (RSA: 1)
2015-01-09 10:12:41 INFO config-changed OK
2015-01-09 10:12:44 INFO config-changed Get:1 http://
2015-01-09 10:12:44 INFO config-changed Get:2 http://
2015-01-09 10:12:46 INFO config-changed Hit http://
2015-01-09 10:12:46 INFO config-changed Get:3 http://
Vincent Ladeuil (vila) wrote : | # |
Merging https:/
Firing tarmac_post_merge hook
:32:45 INFO pgsql-relation-
2015-01-09 10:32:45 INFO pgsql-relation-
2015-01-09 10:32:45 INFO juju-log pgsql:12: migration command failed, retrying...
2015-01-09 10:32:51 INFO pgsql-relation-
2015-01-09 10:32:51 INFO pgsql-relation-
2015-01-09 10:32:51 INFO pgsql-relation-
2015-01-09 10:32:51 INFO pgsql-relation-
2015-01-09 10:32:51 INFO juju-log pgsql:12: migration command failed, retrying...
2015-01-09 10:33:00 INFO juju-log pgsql:12: migration command failed
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 INFO pgsql-relation-
2015-01-09 10:33:00 ERROR juju.worker.uniter uniter.go:486 hook failed: exit status 1
C
Ubuntu CI Bot (uci-bot) wrote : | # |
The attempt to merge lp:~joetalbott/uci-engine/split_infra_failures into lp:uci-engine failed. Below is the output from the failed tests.
Checking juju status
Private PPAs: disabled
Preparing local branch upload...
Uploading local branch, fingerprint 7aa345427040a37
Installing keys from bzr+ssh:
Running juju-deployer -v -c /tmp/tmpP7YcJC/
Tests running...
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
ci-utils.
Vincent Ladeuil (vila) wrote : | # |
=======
FAIL: tests.test_
-------
Traceback (most recent call last):
File "/tmp/tarmac/
wait_
File "/dev/shm/
return func(*args, **kwargs)
File "/dev/shm/
return _wait_for(
File "/dev/shm/
_raise(error)
File "/dev/shm/
raise AssertionError(msg)
AssertionError: Timed out waiting for: get_element_by_css
Error during wait: Could not identify element: 0 elements found
Ursula Junque (ursinha) wrote : | # |
Test failures are valid, not just tarmac hiccups (as I supposed). Celso has a branch to fix that: (MP: https:/
LGTM; tested successfully.