[tripleo] cleanup upgrade_tasks
Upgrade folks, Please take a look at https://review.openstack.org/622578. We don't run the upgrade_tasks Ansible tasks that stop systemd services and remove the packages since all services are containerized. These tasks were useful in Rocky when we converted the Undercloud from baremetal to containers but in Stein this is not useful anymore. It's actually breaking upgrades for Podman, as containers are now seen by systemd, and these tasks conflicts with the way containers are managed in Paunch. Thanks, -- Emilien Macchi
On Tue, 2018-12-04 at 14:41 -0500, Emilien Macchi wrote:
Upgrade folks,
Please take a look at https://review.openstack.org/622578. We don't run the upgrade_tasks Ansible tasks that stop systemd services and remove the packages since all services are containerized. These tasks were useful in Rocky when we converted the Undercloud from baremetal to containers but in Stein this is not useful anymore.
Would some of them be useful for fast forward upgrades in the future though? I suppose it all depends on where you draw your "upgrade lines" from major version to major version.
It's actually breaking upgrades for Podman, as containers are now seen by systemd, and these tasks conflicts with the way containers are managed in Paunch.
Many of these steps are very similar. It seems like it would be possible to detect podman in the systemd unit file (systemctl show <service> | grep podman) or something and then set your Ansible variables accordingly to disable the block if podman is being used. And improvement might be to put this logic into a playbook and consume it from each module. That is, if we even want to keep this upgrade code for the future.
Thanks, -- Emilien Macchi
On Tue, Dec 4, 2018 at 4:32 PM Dan Prince <dprince@redhat.com> wrote:
Would some of them be useful for fast forward upgrades in the future though? I suppose it all depends on where you draw your "upgrade lines" from major version to major version.
AFIK these tasks aren't useful in master (Stein) for FFU, as they were used between Newton and Queens. Since Queens only have containerized undercloud, and Undercloud isn't upgraded via FFU, I think these tasks could be removed. Many of these steps are very similar. It seems like it would be
possible to detect podman in the systemd unit file (systemctl show <service> | grep podman) or something and then set your Ansible variables accordingly to disable the block if podman is being used.
And improvement might be to put this logic into a playbook and consume it from each module. That is, if we even want to keep this upgrade code for the future.
Indeed, if upgrade team wants to keep or refactor them [0], it's fine. [0] https://review.openstack.org/#/c/582502 -- Emilien Macchi
participants (2)
-
Dan Prince
-
Emilien Macchi