Execute a list of functions after series upgrade if one is
supplied. This change is driven by the upgrade testing of vault.
Vault needs to be unsealed after it is rebooted.
It is likely that there are other commands that we
would like to run in our tests, so this is a new SSH
command runner that the existing SSH check has been
updated to use.
resource_removed is used in many places to monitor removal of
different kinds of OpenStack resource. It is reasonable to expect a
flavor to be removed in a few seconds where as an image based instance
may take minutes to be removed. With that in mind this change
exposes the retry options used by tenacity allowing the caller to
set reasonable expectations for the resource removal.
At present Zaza will wait until it hits a timeout if one of the
units enters a error state while it awaits a idle model.
Add check for errored units to ``block_until_all_units_idle()``
and ``wait_for_application_states()``
Fixes#100
* Expose resource_reaches_status' retry options
resource_reaches_status is used in many places to monitor many
different kinds of OpenStack resource. It is reasonable to expect a
flavor to be created in a few seconds where as an image based instance
may take minutes to become active. With that in mind this change
exposes the retry options used by tenacity allowing the caller to
set reasonable expectations for the resource state change.
In addition the image based instance creation call is updated
to retry for longer as this has been timing out.
* Remove swap files
Zaza explicitly limits which environment variables are allowed for
template rendering. Allow the variables that OSCI actually uses. Without
this OSCI fails to render vips.
This enables zaza tests with HA in OSCI.
Make the series_upgrade_mongodb less specific to mongodb. We may
eventually use this to series upgrade vault.
Fix bug in the generalized series_upgrade_non_leaders_first.
Fix change in switch --agree to --yes.
Python-libjuju does not update the local cache of juju models on model
create. If no juju switch command or juju models command is run juju
will report model not found.
Issue is being tracked by
https://github.com/juju/python-libjuju/issues/267
Add a juju models command to update the local cache and make the new
model available to the juju binary.
A number of packages were requiring interaction on upgrade even with
do-release-upgrade -f DistUpgradeViewNonInteractive. By setting DPkg
options in apt.conf upgraded packages do the right thing.
Set 'DPkg::options { "--force-confdef"; };' on hosts being upgraded.