[Bug 2077382] Re: [SRU] support additional parametes on deploy()
Mauricio Faria de Oliveira
2077382 at bugs.launchpad.net
Tue Dec 10 13:17:43 UTC 2024
Hi Alan,
If I'm reading it right and not missing anything, the screenshots of the
MAAS UI are an alternative (not the CLI commands in the Test Plan) that
can confirm the 'Hardware sync' part -- as it shows 'Periodic hardware
sync enabled'.
Does anything in there tell whether or not the deployment is ephemeral
(e.g., as the command in the Test Plan)?
Thanks!
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to python-libmaas in Ubuntu.
https://bugs.launchpad.net/bugs/2077382
Title:
[SRU] support additional parametes on deploy()
Status in python-libmaas package in Ubuntu:
Fix Released
Status in python-libmaas source package in Jammy:
Fix Committed
Status in python-libmaas source package in Noble:
Fix Committed
Status in python-libmaas source package in Oracular:
Fix Committed
Status in python-libmaas source package in Plucky:
Fix Released
Bug description:
[ Impact ]
* This SRU is not addressing an existing problem but adds support for
two additional optional parameters being ephemeral_deploy and
enable_hw_sync on deploy(). For more details please see (1).
* The code changes align with the SRU policy's "Other safe cases" (2):
"""
For Long Term Support releases we sometimes want to introduce new features.
They must not change the behaviour on existing installations [...]
If existing software needs to be modified to make use of the new feature,
it must be demonstrated that these changes are non-intrusive,
have a minimal regression potential, and have been tested properly.
"""
[ Test Plan ]
* Pre-Requisits: A MAAS controller, an API key as well as a free
physical machine or VM to perform the deployment tests.
* Install the current version of python3-libmaas
(0.6.8-0ubuntu0.22.04.1), then perform a deployment. Validate the
final results, including the final machine state of Deployed and any
other tests such as SSH. Release the machine after he validation is
complete.
* Install the modified python3-libmaas (0.6.8-0ubuntu0.22.04.2), then
perform a new deployment. Verify the deployment results, similar to
the previous step. Release the machine after completion. This step
ensures there are no regressions as the newly introduced parameters
are set to False by default.
* Repeat the deployment while still on modified version. This time
supply the new additional parameters ephemeral_deploy=True,
enable_hw_sync=True. Verify the final results and release the machine.
Please note that since this is an ephemeral deployment, it completes
very quickly.
* To help streamlining the test process, a test script has been
provided and attached to the bug. It requires maas_endpoint as well as
maas_apikey variables to be filled in the source before being
utilized. Please note that install_python_libmaas_modified() currently
installs the modified package from a temporary PPA - That would
require a modification to install the modified package from the
proposed pocket and similar.
* To manually validate an Ephemeral deployment, SSH to the deployed
machine and issue the following command, while comparing the output
(Note overlayroot):
$ mount | grep -w /
overlayroot on / type overlay (rw,relatime,lowerdir=/media/root-ro,upperdir=/media/root-rw/overlay,workdir=/media/root-rw/overlay-workdir/_,xino=off)
* To manually validate the presence of Hardware Sync, issue the
following command. Note "Finished MAAS Hardware Sync Service" message
line in the output.
$ sudo systemctl status maas_hardware_sync
[ Where problems could occur ]
* Due to the nature of the change and the additional parameters being optional we are not expecting any adverse effect on existing integration using python-libmaas.
Nonetheless, theoretical regressions would likely manifest in library calls
to deploy a system in MAAS; eg, tracebacks showing deploy() in machines.py.
(1) https://github.com/canonical/python-libmaas/issues/300
(2) https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#other-safe-cases
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-libmaas/+bug/2077382/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list