-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DeepSea packaging stores (and possibly clobbers) files in /srv (not allowed in openSUSE) #360
Comments
This is not trivial. Salt only looks in two places effectively: /usr/lib/python2.7/site-packages/salt and /srv. The most correct answer is likely migrating from /srv to site_packages/salt for modules and runners. With respect to all 534 sls files in /srv/salt/ceph, I don't know the best answer. Reconfiguring Salt to accommodate a separate location seems silly and will like cause integration issues with other Salt solutions like SUSE Manager. Salt, itself, says "put your files in /srv/salt". I went one directory lower with /srv/salt/ceph. If we try copying files from the actual rpm to an srv location as part of the installation, we are just reinventing rpm in trying to do proper upgrades and not clobber the wrong files. |
Right - this is just a starting point for a discussion we need to be having with the openSUSE release managers and the Salt stakeholders. |
admins ie humans are supposed to put files in /srv. a package is not a human. as os vendor we have to put files elsewhere. |
For that you can use file_roots and pillar_roots in /etc/salt/master: For example how this is defined for SUSE Manager
pillar_roots:
Even better is to define the roots not in /etc/salt/master but in a separate file in /etc/salt/master.d |
First, this issue refers to the discussion at https://build.opensuse.org/request/show/503528 where the openSUSE maintainers explain why the DeepSea spec file, in its current form, cannot be accepted.
One of the issues is that the package should not be owning files in
/srv
Could this could be accomplished by having DeepSea store the state files and pillar data in some other place, like
/usr/lib/DeepSea/{state,pillar}
and usingfile_roots
[1] andpillar_roots
[2] to point the Salt Master to these alternative locations?[1] https://docs.saltstack.com/en/latest/ref/configuration/master.html#roots-master-s-local-file-server
[2] https://docs.saltstack.com/en/latest/topics/pillar/#declaring-the-master-pillar
The text was updated successfully, but these errors were encountered: