ansible-role-puppet/tasks/main.yml

56 lines
1.7 KiB
YAML

---
- name: ensure hiera datadir
file:
state: directory
path: "{{ hieradata }}/{{ hieraenvironment }}"
owner: root
group: root
mode: 0700
when: copy_hieradata is defined and copy_hieradata
- name: ensure hiera datadir - fqdn
file:
state: directory
path: "{{ hieradata }}/{{ hieraenvironment }}/fqdn"
owner: root
group: root
mode: 0700
when: copy_hieradata is defined and copy_hieradata
- name: ensure hiera datadir - group
file:
state: directory
path: "{{ hieradata }}/{{ hieraenvironment }}/group"
owner: root
group: root
mode: 0700
when: copy_hieradata is defined and copy_hieradata
- name: make file list
puppet_get_hiera_file_list:
fqdn: "{{ inventory_hostname }}"
groups: "{{ hostvars[inventory_hostname].group_names }}"
when: copy_hieradata is defined and copy_hieradata
delegate_to: localhost
register: hiera_file_paths
- name: find which files exist
stat:
path: "{{ hieradata }}/{{ hieraenvironment }}/{{ item }}"
register: st
with_items: hiera_file_paths.paths_dict.paths
delegate_to: localhost
when: copy_hieradata is defined and copy_hieradata
- name: copy hiera files
when: copy_hieradata is defined and copy_hieradataand item.1.stat.exists
copy:
src: "{{ hieradata }}/{{ hieraenvironment }}/{{ item.1.item }}"
dest: "{{ hieradata }}/{{ hieraenvironment }}/{{ item.1.item }}"
mode: 0600
with_together:
- hiera_file_paths.paths_dict.paths
- st.results
- name: run puppet
puppet:
puppetmaster: "{{ puppetmaster|default(omit) }}"
manifest: "{{ manifest|default(omit) }}"
show_diff: "{{ show_diff|default(false) }}"
facts: "{{ facts|default(omit) }}"
facter_basename: "{{ facter_basename|default(omit) }}"