From e9f90fe406a4fa147a5cc7bef70d53ebd18f390c Mon Sep 17 00:00:00 2001 From: Gregory Ballantine Date: Tue, 16 May 2017 16:26:23 -0400 Subject: [PATCH] Got the project started with some basic defaults and a package install --- sssd/defaults.yaml | 12 ++++++++++++ sssd/init.sls | 6 ++++++ sssd/map.jinja | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 sssd/defaults.yaml create mode 100644 sssd/init.sls create mode 100644 sssd/map.jinja diff --git a/sssd/defaults.yaml b/sssd/defaults.yaml new file mode 100644 index 0000000..cf2a0ed --- /dev/null +++ b/sssd/defaults.yaml @@ -0,0 +1,12 @@ +sssd: + # package options + package_name: sssd + package_status: installed + + # configuration file options + config_path: /etc/sssd/sssd.conf + + # service options + service_name: sssd + service_status: running + diff --git a/sssd/init.sls b/sssd/init.sls new file mode 100644 index 0000000..ce6c2e2 --- /dev/null +++ b/sssd/init.sls @@ -0,0 +1,6 @@ +{% from "sssd/map.jinja" import sssd_settings as sssd with context %} + +sssd_package: + pkg.{{ sssd.package_status }}: + - name: {{ sssd.package_name }} + diff --git a/sssd/map.jinja b/sssd/map.jinja new file mode 100644 index 0000000..78375c7 --- /dev/null +++ b/sssd/map.jinja @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# vim: ft=jinja + +{## Start with defaults from defaults.sls ##} +{% import_yaml 'sssd/defaults.yaml' as default_settings %} + +{## +Setup variable using grains['os_family'] based logic, only add key:values here +that differ from whats in defaults.yaml +##} +{% set flavor_map = salt['grains.filter_by']( + { + 'Debian': { + 'package_extra': ['libpam-runtime', 'libpam-sss', 'libnss-sss'], + }, + 'FreeBSD': { + 'package_extra': False, + }, + 'RedHat': { + 'package_extra': ['authconfig'], + } + }, + grain='os_family', + merge=salt['pillar.get']('sssd:lookup') +) %} + +{## Merge the flavor_map over the default settings ##} +{% do default_settings.sssd.update(flavor_map) %} + +{## Merge in changes from the sssd:lookup pillar ##} +{% set sssd_settings = salt['pillar.get']( + 'sssd', + default=default_settings.sssd, + merge=True +) %}