Skip to content

Commit 66f4ea7

Browse files
committed
style(libtofs.jinja): use Black-inspired Jinja formatting [skip ci]
* Automated using myii/ssf-formula#237
1 parent 1c44314 commit 66f4ea7

File tree

1 file changed

+82
-79
lines changed

1 file changed

+82
-79
lines changed

Diff for: nginx/libtofs.jinja

+82-79
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,37 @@
1-
{%- macro files_switch(source_files,
2-
lookup=None,
3-
default_files_switch=['id', 'os_family'],
4-
indent_width=6,
5-
use_subpath=False) %}
6-
{#-
1+
{%- macro files_switch(
2+
source_files,
3+
lookup=None,
4+
default_files_switch=["id", "os_family"],
5+
indent_width=6,
6+
use_subpath=False
7+
) %}
8+
{#-
79
Returns a valid value for the "source" parameter of a "file.managed"
810
state function. This makes easier the usage of the Template Override and
911
Files Switch (TOFS) pattern.
10-
1112
Params:
1213
* source_files: ordered list of files to look for
13-
* lookup: key under '<tplroot>:tofs:source_files' to prepend to the
14+
* lookup: key under "<tplroot>:tofs:source_files" to prepend to the
1415
list of source files
1516
* default_files_switch: if there's no config (e.g. pillar)
16-
'<tplroot>:tofs:files_switch' this is the ordered list of grains to
17+
"<tplroot>:tofs:files_switch" this is the ordered list of grains to
1718
use as selector switch of the directories under
1819
"<path_prefix>/files"
1920
* indent_width: indentation of the result value to conform to YAML
2021
* use_subpath: defaults to `False` but if set, lookup the source file
2122
recursively from the current state directory up to `tplroot`
22-
2323
Example (based on a `tplroot` of `xxx`):
24-
2524
If we have a state:
26-
2725
Deploy configuration:
2826
file.managed:
2927
- name: /etc/yyy/zzz.conf
30-
- source: {{ files_switch(['/etc/yyy/zzz.conf', '/etc/yyy/zzz.conf.jinja'],
31-
lookup='Deploy configuration'
32-
) }}
28+
- source: {{ files_switch(
29+
["/etc/yyy/zzz.conf", "/etc/yyy/zzz.conf.jinja"],
30+
lookup="Deploy configuration",
31+
) }}
3332
- template: jinja
34-
3533
In a minion with id=theminion and os_family=RedHat, it's going to be
3634
rendered as:
37-
3835
Deploy configuration:
3936
file.managed:
4037
- name: /etc/yyy/zzz.conf
@@ -46,67 +43,73 @@
4643
- salt://xxx/files/default/etc/yyy/zzz.conf
4744
- salt://xxx/files/default/etc/yyy/zzz.conf.jinja
4845
- template: jinja
49-
#}
50-
{#- Get the `tplroot` from `tpldir` #}
51-
{%- set tplroot = tpldir.split('/')[0] %}
52-
{%- set path_prefix = salt['config.get'](tplroot ~ ':tofs:path_prefix', tplroot) %}
53-
{%- set files_dir = salt['config.get'](tplroot ~ ':tofs:dirs:files', 'files') %}
54-
{%- set files_switch_list = salt['config.get'](
55-
tplroot ~ ':tofs:files_switch',
56-
default_files_switch
57-
) %}
58-
{#- Lookup source_files (v2), files (v1), or fallback to an empty list #}
59-
{%- set src_files = salt['config.get'](
60-
tplroot ~ ':tofs:source_files:' ~ lookup,
61-
salt['config.get'](tplroot ~ ':tofs:files:' ~ lookup, [])
62-
) %}
63-
{#- Append the default source_files #}
64-
{%- set src_files = src_files + source_files %}
65-
{#- Only add to [''] when supporting older TOFS implementations #}
66-
{%- set path_prefix_exts = [''] %}
67-
{%- if use_subpath and tplroot != tpldir %}
68-
{#- Walk directory tree to find {{ files_dir }} #}
69-
{%- set subpath_parts = tpldir.lstrip(tplroot).lstrip('/').split('/') %}
70-
{%- for path in subpath_parts %}
71-
{%- set subpath = subpath_parts[0:loop.index] | join('/') %}
72-
{%- do path_prefix_exts.append('/' ~ subpath) %}
73-
{%- endfor %}
74-
{%- endif %}
75-
{%- for path_prefix_ext in path_prefix_exts|reverse %}
76-
{%- set path_prefix_inc_ext = path_prefix ~ path_prefix_ext %}
77-
{#- For older TOFS implementation, use `files_switch` from the config #}
78-
{#- Use the default, new method otherwise #}
79-
{%- set fsl = salt['config.get'](
80-
tplroot ~ path_prefix_ext|replace('/', ':') ~ ':files_switch',
81-
files_switch_list
82-
) %}
83-
{#- Append an empty value to evaluate as `default` in the loop below #}
84-
{%- if '' not in fsl %}
85-
{%- set fsl = fsl + [''] %}
86-
{%- endif %}
87-
{%- for fs in fsl %}
88-
{%- for src_file in src_files %}
89-
{%- if fs %}
90-
{%- set fs_dirs = salt['config.get'](fs, fs) %}
91-
{%- else %}
92-
{%- set fs_dirs = salt['config.get'](tplroot ~ ':tofs:dirs:default', 'default') %}
93-
{%- endif %}
94-
{#- Force the `config.get` lookup result as a list where necessary #}
95-
{#- since we need to also handle grains that are lists #}
96-
{%- if fs_dirs is string %}
97-
{%- set fs_dirs = [fs_dirs] %}
98-
{%- endif %}
99-
{%- for fs_dir in fs_dirs %}
100-
{%- set url = [
101-
'- salt:/',
102-
path_prefix_inc_ext.strip('/'),
103-
files_dir.strip('/'),
104-
fs_dir.strip('/'),
105-
src_file.strip('/'),
106-
] | select | join('/') %}
46+
#}
47+
{#- Get the `tplroot` from `tpldir` #}
48+
{%- set tplroot = tpldir.split("/")[0] %}
49+
{%- set path_prefix = salt["config.get"](tplroot ~ ":tofs:path_prefix", tplroot) %}
50+
{%- set files_dir = salt["config.get"](tplroot ~ ":tofs:dirs:files", "files") %}
51+
{%- set files_switch_list = salt["config.get"](
52+
tplroot ~ ":tofs:files_switch", default_files_switch
53+
) %}
54+
{#- Lookup source_files (v2), files (v1), or fallback to an empty list #}
55+
{%- set src_files = salt["config.get"](
56+
tplroot ~ ":tofs:source_files:" ~ lookup,
57+
salt["config.get"](tplroot ~ ":tofs:files:" ~ lookup, []),
58+
) %}
59+
{#- Append the default source_files #}
60+
{%- set src_files = src_files + source_files %}
61+
{#- Only add to [""] when supporting older TOFS implementations #}
62+
{%- set path_prefix_exts = [""] %}
63+
{%- if use_subpath and tplroot != tpldir %}
64+
{#- Walk directory tree to find {{ files_dir }} #}
65+
{%- set subpath_parts = tpldir.lstrip(tplroot).lstrip("/").split("/") %}
66+
{%- for path in subpath_parts %}
67+
{%- set subpath = subpath_parts[0 : loop.index] | join("/") %}
68+
{%- do path_prefix_exts.append("/" ~ subpath) %}
69+
{%- endfor %}
70+
{%- endif %}
71+
{%- for path_prefix_ext in path_prefix_exts | reverse %}
72+
{%- set path_prefix_inc_ext = path_prefix ~ path_prefix_ext %}
73+
{#- For older TOFS implementation, use `files_switch` from the config #}
74+
{#- Use the default, new method otherwise #}
75+
{%- set fsl = salt["config.get"](
76+
tplroot ~ path_prefix_ext | replace("/", ":") ~ ":files_switch",
77+
files_switch_list,
78+
) %}
79+
{#- Append an empty value to evaluate as `default` in the loop below #}
80+
{%- if "" not in fsl %}
81+
{%- set fsl = fsl + [""] %}
82+
{%- endif %}
83+
{%- for fs in fsl %}
84+
{%- for src_file in src_files %}
85+
{%- if fs %}
86+
{%- set fs_dirs = salt["config.get"](fs, fs) %}
87+
{%- else %}
88+
{%- set fs_dirs = salt["config.get"](
89+
tplroot ~ ":tofs:dirs:default", "default"
90+
) %}
91+
{%- endif %}
92+
{#- Force the `config.get` lookup result as a list where necessary #}
93+
{#- since we need to also handle grains that are lists #}
94+
{%- if fs_dirs is string %}
95+
{%- set fs_dirs = [fs_dirs] %}
96+
{%- endif %}
97+
{%- for fs_dir in fs_dirs %}
98+
{#- strip empty elements by using a select #}
99+
{%- set url = (
100+
[
101+
"- salt:/",
102+
path_prefix_inc_ext.strip("/"),
103+
files_dir.strip("/"),
104+
fs_dir.strip("/"),
105+
src_file.strip("/"),
106+
]
107+
| select
108+
| join("/")
109+
) %}
107110
{{ url | indent(indent_width, true) }}
108-
{%- endfor %}
109-
{%- endfor %}
110-
{%- endfor %}
111-
{%- endfor %}
111+
{%- endfor %}
112+
{%- endfor %}
113+
{%- endfor %}
114+
{%- endfor %}
112115
{%- endmacro %}

0 commit comments

Comments
 (0)