From 35815c0ec4e1791f1195b298889a25a6ecc3a48d Mon Sep 17 00:00:00 2001 From: Gabor Orosz Date: Fri, 7 Sep 2018 17:31:05 +0200 Subject: [PATCH] Introduce template option for linux.system.file Change-Id: Ifb45b2cf72d71caa9c8a63f8e7684fd15b81e450 Implements: jira/CLOUDB-487 Signed-off-by: Gabor Orosz --- .kitchen.yml | 8 ++++++++ README.rst | 8 ++++++++ linux/system/file.sls | 4 ++++ tests/example/file_template.jinja | 1 + tests/pillar/system_file.sls | 8 +++++++- 5 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 tests/example/file_template.jinja diff --git a/.kitchen.yml b/.kitchen.yml index 51d6a26f..122f5de7 100644 --- a/.kitchen.yml +++ b/.kitchen.yml @@ -63,4 +63,12 @@ suites: pillars-from-files: linux.sls: tests/pillar/system.sls + - name: system_file + provisioner: + pillars-from-files: + linux.sls: tests/pillar/system_file.sls + pillars_from_directories: + - source: tests/example + dest: srv/salt/linux/files/test + # vim: ft=yaml sw=2 ts=2 sts=2 tw=125 diff --git a/README.rst b/README.rst index cd9d5c22..0a00089d 100644 --- a/README.rst +++ b/README.rst @@ -467,6 +467,14 @@ Ensure presence of file by specifying its source: name: /tmp/test.txt source: http://example.com/test.txt + linux: + system: + file: + test2: + name: /tmp/test2.txt + source: http://example.com/test2.jinja + template: jinja + Ensure presence of file by specifying its contents: .. code-block:: yaml diff --git a/linux/system/file.sls b/linux/system/file.sls index ffc1d76c..e8a6d528 100644 --- a/linux/system/file.sls +++ b/linux/system/file.sls @@ -21,6 +21,9 @@ linux_file_{{ file_name }}: {%- else %} - skip_verify: True {%- endif %} + {%- if file.template is defined %} + - template: {{ file.template }} + {%- endif %} {%- elif file.contents is defined %} - contents: {{ file.contents|yaml }} {%- elif file.contents_pillar is defined %} @@ -28,6 +31,7 @@ linux_file_{{ file_name }}: {%- elif file.contents_grains is defined %} - contents_grains: {{ file.contents_grains }} {%- endif %} + {%- endif %} {%- if file.name is defined %} - name: {{ file.name }} diff --git a/tests/example/file_template.jinja b/tests/example/file_template.jinja new file mode 100644 index 00000000..1779fcd1 --- /dev/null +++ b/tests/example/file_template.jinja @@ -0,0 +1 @@ +foo{{ pillar["test"]["example"] }} diff --git a/tests/pillar/system_file.sls b/tests/pillar/system_file.sls index 0769b184..09900afb 100644 --- a/tests/pillar/system_file.sls +++ b/tests/pillar/system_file.sls @@ -23,4 +23,10 @@ linux: mode: 700 dir_mode: 700 encoding: utf-8 - makedirs: true \ No newline at end of file + makedirs: true + test3: + name: /tmp/test3.txt + source: salt://linux/files/test/file_template.jinja + template: jinja +test: + example: "bar"