Set vars in YAML files

- Add defaults YAML
- Add osfamilymap YAML
- Add lookup dict merge to support user overrides
- Add Gentoo support
This commit is contained in:
Mark Gomersbach 2018-10-15 15:05:01 +02:00
parent 646159fc5b
commit 7e6ad3bbfd
No known key found for this signature in database
GPG Key ID: B5171AF93EC64F16
3 changed files with 23 additions and 28 deletions

3
timezone/defaults.yaml Normal file
View File

@ -0,0 +1,3 @@
path_localtime: /etc/localtime
path_zoneinfo: /usr/share/zoneinfo/
pkgname: tzdata

View File

@ -1,29 +1,15 @@
{% set map = { {% import_yaml "timezone/defaults.yaml" as defaults %}
'Debian': { {% import_yaml "timezone/osfamilymap.yaml" as osfamilymap %}
'path_localtime': '/etc/localtime',
'path_zoneinfo': '/usr/share/zoneinfo/',
'pkgname': 'tzdata',
},
'RedHat': {
'path_localtime': '/etc/localtime',
'path_zoneinfo': '/usr/share/zoneinfo/',
'pkgname': 'tzdata',
},
'Suse': {
'path_localtime': '/etc/localtime',
'path_zoneinfo': '/usr/share/zoneinfo/',
'pkgname': 'timezone',
},
'Arch': {
'path_localtime': '/etc/localtime',
'path_zoneinfo': '/usr/share/zoneinfo/',
'pkgname': 'tzdata',
},
'FreeBSD': {
'path_localtime': '/etc/localtime',
'path_zoneinfo': '/usr/share/zoneinfo/',
'pkgname': 'zoneinfo',
},
} %}
{% set confmap = map.get(grains.os_family) %} {% set osfam = salt['grains.filter_by'](
osfamilymap,
grain='os_family'
) or {} %}
{% do salt['defaults.merge'](defaults, osfam) %}
{%- set confmap = salt['pillar.get'](
'timezone:lookup',
default=defaults,
merge=True,
) %}

View File

@ -0,0 +1,6 @@
Suse:
pkgname: timezone
FreeBSD:
pkgname: zoneinfo
Gentoo:
pkgname: sys-libs/timezone-data