Openstack-origin vs charm channels


I played with different deployment and I see that now, in the Charm Deployment Guide, the channel is used while before, to specify an Openstack release, you had to fill the “openstack-origin” option on the charms that supported it. I also discovered tat still using openstack-origin deploys the right openstack version but not always and the packages are not the right release (for example, I have a “keystone” app in a focal/yoga cluster, it was deployed with openstack-origin: cloud:focal-yoga without specifying the channel but in the juju status, I see that it is “keystone 21.0.0 latest/stable 539” while it should be “keystone 21.0.0 yoga/stable 572”).

What is the best practice ? Do we still have to configure “openstack-origin” when providing a channel ? Is it mandatory to provide a channel ? Is openstack-origin only sufficient ?

Well, what is the best practice in order to deploy a cluster matching a specific ubuntu/openstack release ?

The new named channels (yoga/stable for example) will by default deploy the same named OpenStack release without the charm user having to specify the openstack-origin configuration option. Switching to a new named channel (zed/stable for example,but not yet released) should change that configuration option automatically and trigger an upgrade.

The latest/stable track and channel actually maps to the previous charm release prior to the split to named channels for each release - that channel does not set a default OpenStack release.