61 lines
1.3 KiB
YAML
61 lines
1.3 KiB
YAML
- set_fact:
|
|
defaultfile:
|
|
group: root
|
|
owner: root
|
|
mode: "0700"
|
|
state: touch
|
|
src: ~
|
|
content: ~
|
|
template: ~
|
|
template_vars: {}
|
|
src: ~
|
|
|
|
- set_fact:
|
|
file: "{{ defaultfile|combine(item.value|d({}), {'path': item.key} ) }}"
|
|
|
|
- name: create file/folder (file)
|
|
when:
|
|
- not file.content
|
|
- not file.template
|
|
- not file.src
|
|
file:
|
|
path: "{{ file.path }}"
|
|
group: "{{ file.group }}"
|
|
owner: "{{ file.owner }}"
|
|
mode: "{{ file.mode }}"
|
|
src: "{{ file.src }}"
|
|
state: "{{ file.state }}"
|
|
|
|
- name: create file/folder (copy content)
|
|
when:
|
|
- file.content
|
|
- not file.src
|
|
copy:
|
|
dest: "{{ file.path }}"
|
|
group: "{{ file.group }}"
|
|
owner: "{{ file.owner }}"
|
|
mode: "{{ file.mode }}"
|
|
content: "{{ file.content }}"
|
|
|
|
- name: create file/folder (copy src)
|
|
when:
|
|
- file.src
|
|
- file.state != "link"
|
|
copy:
|
|
dest: "{{ file.path }}"
|
|
group: "{{ file.group }}"
|
|
owner: "{{ file.owner }}"
|
|
mode: "{{ file.mode }}"
|
|
src: "{{ file.src }}"
|
|
|
|
- name: create file/folder (symlink)
|
|
when:
|
|
- file.src
|
|
- file.state == "link"
|
|
file:
|
|
path: "{{ file.path }}"
|
|
group: "{{ file.group }}"
|
|
owner: "{{ file.owner }}"
|
|
mode: "{{ file.mode }}"
|
|
state: "{{ file.state }}"
|
|
src: "{{ file.src }}"
|