Salt File Locations and Structure

This diagram shows the Salt file structure, as it is used by the Uyuni Server. The files are listed in the /etc/salt/master.d/susemanager.conf configuration file.

# Configure different file roots

file_roots:
  base:
    - /usr/share/susemanager/salt    #Should not be touched by a user
    - /srv/susemanager/salt          #Should not be touched by a user
    - /srv/salt                      #Your custom states go here

# Configure different pillar roots

pillar_roots:
  base:
    - /usr/share/susemanager/pillar  #Should not be touched by a user
    - /srv/pillar                    #Custom pillars go here

# Extension modules path

extension_modules: /usr/share/susemanager/modules

# Master top configuration

master_tops:
  mgr_master_tops: True

When you are working with /etc/salt/master.d/susemanager.conf, be aware that:

  • Files listed are searched in the order they appear

  • The first matching file found is called

The Uyuni Server reads Salt state data from three root directories:

/usr/share/susemanager/salt

This directory is shipped and updated with Uyuni and includes certificate setup and common state logic to be applied to packages and channels.

Do not edit or add custom Salt data to this directory.

/srv/susemanager/salt

This directory is generated by Uyuni, based on assigned channels and packages for clients, groups, and organizations. This directory will be overwritten and regenerated. It is the Salt equivalent of the Uyuni database.

Do not edit or add custom Salt data to this directory.

/srv/salt

This directory is used for custom state data, modules, and related data. Uyuni does not operate or use this directory directly. The state data in this directory is used by the client highstate, and is merged with the total state result generated by Uyuni. Use this directory for custom Salt data.

The Uyuni Server reads Salt pillar data from two root directories:

/usr/share/susemanager/pillar

This directory is generated by Uyuni. It is shipped and updated together with Uyuni.

Do not edit or add custom Salt data to this directory.

/srv/pillar

By default, Uyuni does not operate or use this directory directly. The custom pillar data in this directory is merged with the pillar result created by Uyuni. Use this directory for custom Salt pillar data.