diff --git a/tomcat/map.jinja b/tomcat/map.jinja index 987ca2423532d87a274a7f4b0e5f3d0a628578f2..ba7902d6c326680f88ec229db1c8fc810640d7c9 100644 --- a/tomcat/map.jinja +++ b/tomcat/map.jinja @@ -1,25 +1,39 @@ # -*- coding: utf-8 -*- # vim: ft=jinja -{% import_yaml "tomcat/defaults.yaml" as defaults %} -{% import_yaml "tomcat/osmap.yaml" as osmap %} -{% import_yaml "tomcat/codenamemap.yaml" as codemap %} +{#- Get the `tplroot` from `tpldir` #} +{%- set tplroot = tpldir.split('/')[0] %} +{#- Start imports as #} +{%- import_yaml tplroot ~ "/defaults.yaml" as default_settings %} +{%- import_yaml tplroot ~ "/osfamilymap.yaml" as osfamilymap %} +{%- import_yaml tplroot ~ "/osfingermap.yaml" as osfingermap %} -{# get the settings for the os_family grain #} -{% set osfam = salt['grains.filter_by'](osmap) or {} %} -{# get the settings for the oscodename grain, os_family data will override - oscodename data #} -{% set oscode = salt['grains.filter_by'](codemap, - grain='oscodename', - merge=osfam) or {} %} +{#- Retrieve the config dict only once #} +{%- set _config = salt['config.get'](tplroot, default={}) %} -{# merge the os family/codename specific data over the defaults #} -{% do defaults.tomcat.update(oscode) %} +{%- set defaults = salt['grains.filter_by']( + default_settings, + default=tplroot, + merge=salt['grains.filter_by']( + osfamilymap, + grain='os_family', + merge=salt['grains.filter_by']( + osfingermap, + grain='osfinger', + merge=salt['grains.filter_by']( + _config, + default='lookup' + ) + ) + ) + ) +%} -{# merge the pillar:lookup dict into the defaults/os specific dict #} -{% set lookup = salt['pillar.get']('tomcat:lookup', - default=defaults.tomcat, - merge=True) %} +{%- set config = salt['grains.filter_by']( + {'defaults': defaults}, + default='defaults', + merge=_config + ) +%} -{# merge the actual tomcat pillar into the above combined dict #} -{% set tomcat = salt['pillar.get']('tomcat', default=lookup, merge=True) %} +{%- set tomcat = config %} diff --git a/tomcat/osmap.yaml b/tomcat/osfamilymap.yaml similarity index 94% rename from tomcat/osmap.yaml rename to tomcat/osfamilymap.yaml index bc5bcd983540044fb1224970fb8d29a7afb96279..e86ac6b4ad2f4765f1f950f5122fa2176ac2fb37 100644 --- a/tomcat/osmap.yaml +++ b/tomcat/osfamilymap.yaml @@ -19,10 +19,6 @@ RedHat: native_pkg: tomcat-native manager_pkg: tomcat-admin-webapps main_config_template: salt://tomcat/files/tomcat-default-CentOS.template -CentOS: - native_pkg: tomcat-native - manager_pkg: tomcat-admin-webapps - main_config_template: salt://tomcat/files/tomcat-default-CentOS.template openSUSE: ver: 8 native_pkg: libtcnative-1-0 diff --git a/tomcat/codenamemap.yaml b/tomcat/osfingermap.yaml similarity index 72% rename from tomcat/codenamemap.yaml rename to tomcat/osfingermap.yaml index 9e4d14980c9383aee49e7d16c506cdcd757e1398..16188aa400476bda84bbdc81a2823b29c13da103 100644 --- a/tomcat/codenamemap.yaml +++ b/tomcat/osfingermap.yaml @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # vim: ft=yaml --- -trusty: +Ubuntu-14.04: ver: 7 pkg: tomcat7 manager_pkg: tomcat7-admin @@ -11,7 +11,7 @@ trusty: service: tomcat7 user: tomcat7 group: tomcat7 -wheezy: +Debian-7: pkg: tomcat7 manager_pkg: tomcat7-admin conf_dir: /etc/tomcat7 @@ -20,3 +20,12 @@ wheezy: service: tomcat7 user: tomcat7 group: tomcat7 +Debian-10: + ver: 9 + pkg: tomcat9 + manager_pkg: tomcat9-admin + conf_dir: /etc/tomcat9 + main_config: /etc/default/tomcat9 + service: tomcat9 + user: tomcat + group: tomcat