Openstack: personal-files usage - dot-config-openstack + etc-openstack

Due to the namespace conflict between the openstack snap and the auto-aliase of the openstack command in the openstackclients snap we’re going to bundle the required python parts as part of the openstack snap to avoid this conflict and allow end users to use the openstack command.

This additional functionality will require use of the following personal-files interfaces inline with the openstackclients snap:

plugs:
  dot-config-openstack:
    interface: personal-files
    write:
    - $HOME/.config/openstack
  etc-openstack:
    interface: system-files
    read:
    - /etc/openstack

there is one minor variation; for the openstack snap we need write permissions to dot-config-openstack in order to be able to write cloud configuration information about the deployment OpenStack cloud - the current openstackclients snap only has read access to this path.

Thanks

Perhaps I am missing something but I don’t see what the conflict is - the openstack snap itself does not declare an openstack command - so I don’t see how it would conflict?

However, if you feel users would expect the openstack snap to bundle the client utils and so wish to do this, then I think it makes sense for it to have access to both of these locations OOTB.

As such, assuming I can understand this conflict, +1 from me for both personal-files and system-files as outlined above.

Hi @alexmurray

Here is the current experience of installing the openstackclients snap after the openstack snap is installed:

$ sudo snap install openstackclients
error: cannot perform the following tasks:
- Set automatic aliases for snap "openstackclients" (cannot enable alias "openstack" for "openstackclients", it conflicts with
 the command namespace of installed snap "openstack")

it is possible to install without the aliases:

$ sudo snap install --unaliased openstackclients
openstackclients (yoga/stable) yoga from Canonical✓ installed

but then is not the default openstack command to execute.

Oh TIL - thanks @jamespage - as I said above - +1 from me for both of these.

1 Like

+1 from me for openstack to use personal-files for write access to $HOME/.config/openstack and system-files for reading /etc/openstack.

+2 votes for, 0 votes against, granted use of and auto-connect for a personal-files instance named dot-config-openstack with write access to $HOME/.config/openstack and a system-files instance named etc-openstack with read access to /etc/openstack. This is now live.