[feature request] Changing name of models in Juju

The ability to change or set model names is a long sought for feature. It comes up regularly and I thought to cover this some here:

Juju does not currently support changing names of models (2025-February) version 3.6+

Why be able to change name of models?

Names on models is how we can organize ourselves when multiple users collaborate with juju services and their use. Its how we can communicate efficiently to find, organize and reason about our systems together in teams. Names matters alot there.

For example, one might name models after clients that are hosted, like: “client-system-foo”, “client-system-bar”. Then suddenly the client decided to change name. How would we communicate with team-members about this when a client name suddenly doesn’t mean the same thing any more? A redeploy is the only option, when a simple name change would have resolved it.

Another example is that you might have a domain name for a SaaS being used in the model name to help keep track of that this service is hosted from a particular model. Like “my-service-example-com”. If its then decided to “rebrand” the service into "another-service-example-com. Imagine the confusion when this name suddenly indicates something that isn’t there any more. A name change would have resolved it, but now a redeploy is needed again.

The ability to “rename” juju models would be a nice improvement to Juju going forward and help us be even more efficient in operating complex infrastructure.

What do you think?

I think this is impossible with the present implementation, because it would be unpractical with kubernetes models as they correspond to namespaces. IIRC there were talks of a future possibility to conceptually separate models and k8s namespaces. If and when, this could be opened up again?

@wallyworld perhaps can confirm or deny