Merge lp://staging/~sinzui/juju-ci-tools/azure-arm-ha into lp://staging/juju-ci-tools
Status: | Merged |
---|---|
Merged at revision: | 1482 |
Proposed branch: | lp://staging/~sinzui/juju-ci-tools/azure-arm-ha |
Merge into: | lp://staging/juju-ci-tools |
Diff against target: |
289 lines (+130/-23) 5 files modified
assess_recovery.py (+6/-2) deploy_stack.py (+2/-2) substrate.py (+38/-7) tests/test_assess_recovery.py (+27/-4) tests/test_substrate.py (+57/-8) |
To merge this branch: | bzr merge lp://staging/~sinzui/juju-ci-tools/azure-arm-ha |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Aaron Bentley (community) | Approve | ||
Review via email: mp+296484@code.staging.launchpad.net |
Description of the change
Assess HA recovery on azure-arm.
This branch adds support for testing HA recovery using the Azure RM API. A new
AzureARMAccount class is added to substrate.py.
assess_recovery.py calls convert_
azure vm ids. This is intrusive, but must happen in assess_recovery because no Account in
Substrate uses client. I have tested HA on 2.x and 1.x quite a bit. I added a timeout to
wait_for_
slower and the 30 seconds we allotted was not enough 50% of the time.
I removed the special rule to create a lxd account. There is nothing special about it, the
default rule creates it. AzureARMAccount is tiny. I had planned to replace the old AzureAccount
because we can list and delete SMS-based services as if they were resource groups. We cannot
delete an individual VM though :(. The new azure lib has legacy support for SMS and I didn't
need to change the old class to use it.
This branch is save to merge, but the functional-
it is moved to a new server. the new azure library does not support legacy storage, and
we need that installed on master to publish streams.
This looks good.
One small thing: In the test data, I try to avoid reusing variable names as their value, e.g. {'subscription-id': 'subscription-id'}, to avoid the class of problem where value was supposed to be used, but the name was used instead. I'll do {'subscription-id': 'subscription-id1'} instead.