Skip to content

epcim/saltclass-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Generic system model for SaltClass based deployment

This repo is based on existing reclass-model (https://github.com/Mirantis/reclass-system-salt-model)

Contains default pillar data for various systems/apps. Use along with pillar data on - service level (enbeded in formula under /metadata) - cluster level (an class override for individual deployment)

Expected SaltClass root structure:

/srv/salt/env  # installed formulas
/srv/salt/saltclass/
  - nodes
  - services/
               # link installed formulas `<formula>/metadata/service`
               #
               # SaltClass fixup:
               # for i in $(grep -r -e '^applications:' -e '^parameters:' -l ${SALT_CLASS_SERVICE:-/usr/share/salt-formulas/reclass/service}); do
               #   sed -i 's/applications:/states:/g;s/parameters:/pillars:/g' $i;
               # done
  - classes/
     - system  # (this repo as subrepository)
     - cluster # (your overrides)

SaltClass

Added to SaltStack Salt by PR: saltstack/salt#42349.

Configuration

Directly to master.conf:

ext_pillar:
  - saltclass:
    - path: /srv/salt/saltclass

master_tops:
  saltclass:
    path: /srv/salt/saltclass

With the salt-formula-salt saltclass pillar:

salt:
  pillar:
    engine: composite
    saltclass:
      path: /srv/salt/saltclass

Examples

Basic jinja + grains example

# /srv/salt/saltclass/nodes/minion.domain.yml
environment: prod
classes:
{% for class in ['default', 'app1'] %}
  - {{ class }}
{% endfor %}
  - {{ __grains__['os'] }}

pillars:
  default:
    network:
      dns:
        srv3: 192.168.1.1
    os: {{ __grains__['oscodename'] }}

About

SaltClass, shared system classes #saltstack #salt

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published