However, as John mentioned, I'm really wondering the purpose of this scenario with a single ceph-mon. We disabled ceph from our upgrades jobs long time ago as the upgrade required having at least three ceph-mons, so maybe you could pass the upgrades part but it would probably fail when running the "external_upgrade_steps_playbook --tags ceph". If the team considers this could work and it's a valid scenario I'm happy to help implementing this feature.
So, the standlone_upgrade by itself does not trigger the external_ upgrade_ tasks with --tags ceph_systemd (which is the piece of code needed to change the ceph_playbook in ceph-ansible: https:/ /opendev. org/openstack/ tripleo- heat-templates/ src/branch/ master/ deployment/ ceph-ansible/ ceph-base. yaml#L675- L681)
If you see the pythontripleo- client code, when calling "openstack tripleo upgrade" we call to all these operations: https:/ /github. com/openstack/ python- tripleoclient/ blob/735acf94e3 791c468ee543b50 c94f359b97814f5 /tripleoclient/ v1/tripleo_ deploy. py#L1292- L1308 which translates into this structure https:/ /github. com/openstack/ python- tripleoclient/ blob/735acf94e3 791c468ee543b50 c94f359b97814f5 /tripleoclient/ constants. py#L110- L132:
1st: upgrade_ steps_playbook. yaml steps_playbook. yaml steps_playbook. yaml upgrade_ steps_playbook. yaml --tags online_upgrade
2nd: deploy_
3th: post_upgrade_
4th: external_
So, no sign of external_ upgrade_ steps_playbook passing --tags ceph_systemd or --tags ceph which is the part we need to execute the ceph ugprade bits https:/ /github. com/openstack/ tripleo- heat-templates/ blob/master/ deployment/ ceph-ansible/ ceph-base. yaml#L694
However, as John mentioned, I'm really wondering the purpose of this scenario with a single ceph-mon. We disabled ceph from our upgrades jobs long time ago as the upgrade required having at least three ceph-mons, so maybe you could pass the upgrades part but it would probably fail when running the "external_ upgrade_ steps_playbook --tags ceph". If the team considers this could work and it's a valid scenario I'm happy to help implementing this feature.