Merge "Change the list of extensions to a dict"
This commit is contained in:
commit
46fb37f8bb
@ -31,7 +31,7 @@ intended to be used before output fetching in a base job's post-playbook.
|
|||||||
.. zuul:rolevar:: extensions_to_txt
|
.. zuul:rolevar:: extensions_to_txt
|
||||||
:default: null
|
:default: null
|
||||||
|
|
||||||
A list of file extensions to be replaced with .txt when staging.
|
A dict of file extensions to be replaced with .txt when staging.
|
||||||
This can be useful to ensure that text files with an extension not
|
This can be useful to ensure that text files with an extension not
|
||||||
registered in the web server may be viewed via browser when uploaded
|
registered in the web server may be viewed via browser when uploaded
|
||||||
to a file server.
|
to a file server.
|
||||||
@ -43,8 +43,9 @@ intended to be used before output fetching in a base job's post-playbook.
|
|||||||
Example:
|
Example:
|
||||||
|
|
||||||
extensions_to_txt:
|
extensions_to_txt:
|
||||||
- conf
|
conf: True
|
||||||
- log
|
log: True
|
||||||
|
txt: False
|
||||||
|
|
||||||
zuul.conf --(staged as)--> zuul_conf.txt
|
zuul.conf --(staged as)--> zuul_conf.txt
|
||||||
|
|
||||||
|
@ -5,12 +5,38 @@
|
|||||||
register: sources
|
register: sources
|
||||||
no_log: true
|
no_log: true
|
||||||
|
|
||||||
- name: Build the replace regex
|
- name: Output a warning when input is not a dict and not empty
|
||||||
set_fact:
|
debug:
|
||||||
extensions_regex: "{{ extensions_to_txt | join('|') | default('__do_not_replace__') }}"
|
msg: "WARNING: extensions_to_txt is a list, values defined by parents will be overwritten"
|
||||||
|
when:
|
||||||
|
- extensions_to_txt is not mapping
|
||||||
|
- extensions_to_txt
|
||||||
|
|
||||||
- debug:
|
- name: Build the extensions list when input is not a dict (including empty)
|
||||||
var: extensions_regex
|
set_fact:
|
||||||
|
extension_list: >
|
||||||
|
{% set extensions = ['__does_not_match__'] -%}
|
||||||
|
{% if extensions_to_txt -%}
|
||||||
|
{% set extensions = extensions_to_txt -%}
|
||||||
|
{% endif -%}
|
||||||
|
{{- extensions -}}
|
||||||
|
when: extensions_to_txt is not mapping
|
||||||
|
|
||||||
|
- name: Build the extensions list when input is a dict
|
||||||
|
set_fact:
|
||||||
|
extension_list: >
|
||||||
|
{% set extensions = [] -%}
|
||||||
|
{% for extension, extension_bool in extensions_to_txt.items() -%}
|
||||||
|
{% if extension_bool -%}
|
||||||
|
{% set _ = extensions.append(extension) -%}
|
||||||
|
{% endif -%}
|
||||||
|
{% endfor -%}
|
||||||
|
{{- extensions -}}
|
||||||
|
when: extensions_to_txt is mapping
|
||||||
|
|
||||||
|
- name: Build the extensions regular expression
|
||||||
|
set_fact:
|
||||||
|
extensions_regex: "{{ extension_list | join('|') }}"
|
||||||
|
|
||||||
# TODO(andreaf) We might want to enforce that item.value is a valid value
|
# TODO(andreaf) We might want to enforce that item.value is a valid value
|
||||||
# in docs, artifacts, logs. Null case already handled.
|
# in docs, artifacts, logs. Null case already handled.
|
||||||
|
Loading…
Reference in New Issue
Block a user