44 lines
656 B
Django/Jinja
44 lines
656 B
Django/Jinja
|
|
{% set common = salt['grains.filter_by']({
|
|
'Debian': {
|
|
'packages': [
|
|
'vim'
|
|
],
|
|
},
|
|
'RedHat': {
|
|
'packages': [
|
|
'vim-enhanced'
|
|
],
|
|
},
|
|
}) %}
|
|
|
|
{% set distro = salt['grains.filter_by']({
|
|
'Fedora': {
|
|
'packages': [
|
|
'pcp-system-tools'
|
|
]
|
|
},
|
|
'default': {
|
|
'packages': [
|
|
'dstat'
|
|
]
|
|
}
|
|
}, grain='os') %}
|
|
|
|
{% set defaults = {
|
|
'packages': [
|
|
'iotop',
|
|
'nano',
|
|
'screen',
|
|
'git'
|
|
]
|
|
} %}
|
|
|
|
{# custom deep merge #}
|
|
{% for key in distro.keys() %}
|
|
{% do common[key].extend(distro[key]) %}
|
|
{% endfor %}
|
|
{% for key in defaults.keys() %}
|
|
{% do common[key].extend(defaults[key]) %}
|
|
{% endfor %}
|