diff --git a/TEMPLATE/map.jinja b/TEMPLATE/map.jinja index 4fd936a1..d70e2afa 100644 --- a/TEMPLATE/map.jinja +++ b/TEMPLATE/map.jinja @@ -34,7 +34,8 @@ {%- for map_source in map_sources %} {# Lookup the grain/pillar/... #} - {%- set map_values = salt['config.get'](map_source, []) %} + {# Fallback to use the source name as a direct filename #} + {%- set map_values = salt['config.get'](map_source, [map_source]) %} {%- if map_values is string %} {%- set map_values = [map_values] %} {%- endif %} diff --git a/TEMPLATE/parameters/defaults.yaml b/TEMPLATE/parameters/defaults.yaml index 8c437396..11d124a4 100644 --- a/TEMPLATE/parameters/defaults.yaml +++ b/TEMPLATE/parameters/defaults.yaml @@ -12,7 +12,12 @@ subcomponent: # Just here for testing added_in_defaults: defaults_value winner: defaults -# Configure map.jinja to load formula parameters values +# Configure map.jinja to load formula parameters values and merge them +# in the order from most generic (first) to most specific (last). +# Each source can define the merging `strategy` which default to the +# `smart` strategy of `salt.slsutil.merge`. +# Note: Any value not evaluated by `config.get` will be used literally. +# This can be used to set custom paths, as many levels deep as required. map.jinja: sources: - osarch @@ -20,3 +25,4 @@ map.jinja: - os - osfinger - roles + - any/path/can/be/used/here.yaml