DEBOPS.SALT(5)

NAME
debops.salt - Manage Salt Master service using Ansible

SYNOPSIS

debops run service/salt [--limit group,host,...] [--diff] [--check] [--tags tag1,tag2,...] [--skip-tags tag1,tag2,...] [<ansible-playbook options>] ...

DESCRIPTION

The debops.salt Ansible role can be used to install and configure SaltStack <https://saltstack.com/> Master service. It is expected that Salt Minions are installed using host deployment methods like PXE/preseeding, LXC template scripts, etc. and contact the Salt Master service over DNS.

GETTING STARTED

  Example inventory

To enable management of the Salt Master service, a given host needs to be added to the [debops_service_salt] Ansible inventory group:

[debops_service_salt]
hostname

  Example playbook

If you are using this role without DebOps, here's an example Ansible playbook that uses the debops.salt role:

---
- name: Manage Salt Master service
  collections: [ 'debops.debops', 'debops.roles01',
                 'debops.roles02', 'debops.roles03' ]
  hosts: [ 'debops_service_salt' ]
  become: True
  environment: '{{ inventory__environment | d({})
                   | combine(inventory__group_environment | d({}))
                   | combine(inventory__host_environment  | d({})) }}'
  roles:
    - role: keyring
      tags: [ 'role::keyring', 'skip::keyring', 'role::salt' ]
      keyring__dependent_apt_keys:
        - '{{ salt__keyring__dependent_apt_keys }}'
    - role: etc_services
      tags: [ 'role::etc_services', 'skip::etc_services' ]
      etc_services__dependent_list:
        - '{{ salt__etc_services__dependent_list }}'
    - role: python
      tags: [ 'role::python', 'skip::python' ]
      python__dependent_packages3:
        - '{{ salt__python__dependent_packages3 }}'
      python__dependent_packages2:
        - '{{ salt__python__dependent_packages2 }}'
    - role: ferm
      tags: [ 'role::ferm', 'skip::ferm' ]
      ferm__dependent_rules:
        - '{{ salt__ferm__dependent_rules }}'
    - role: salt
      tags: [ 'role::salt', 'skip::salt' ]

AUTHOR
Maciej Delmanowski

COPYRIGHT
2014-2024, Maciej Delmanowski, Nick Janetakis, Robin Schneider and others