blob: 07fda259c046f87f0dc425245d338b14bd25485c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
---
- name: sudo get vars
include_vars: default.yml
- name: sudo get OS vars
include_vars: '{{ item }}'
with_first_found:
- '{{ ansible_distribution }}.yml'
- default.yml
- stat: path='{{ sudo_rules_dir }}/{{ item.priority }}_{{ item.name }}' #'
with_items:
- '{{ sudo_strings }}'
register: "s"
when: sudo_strings is defined
- name: sudo deploy rules from files
template:
src: "roles/sudo/files/{{ item.file }}"
dest: "{{ sudo_rules_dir }}/{{ item.file | regex_replace('.*/','') }}"
mode: 0440
owner: '{{ sudo_root_user }}'
group: '{{ sudo_root_group }}'
with_items:
- '{{ sudo_files }}'
when:
- sudo_files is defined
- name: sudo remove rules from files
file: path='{{ sudo_rules_dir }}/{{ item.file | regex_replace('.*/','') }}' state='absent'
with_items:
- '{{ sudo_files }}'
when:
- sudo_files is defined
- ( not item.exists ) or ( '{{ item.exists | lower }}' == 'false' )
#- debug: msg='foo'
# with_items: '{{ s.results }}'
- name: sudo deploy rules from strings
lineinfile:
line: "{{ item.item.content }}"
regexp: "{{ item.item.content | regex_replace('^(.{8}).*$','\\1') }}"
dest: '{{ sudo_rules_dir }}/{{ item.item.priority }}_{{ item.item.name }}'
mode: 0600
owner: '{{ sudo_root_user }}'
group: '{{ sudo_root_group }}'
create: yes
state: present
with_items:
- '{{ s.results }}'
when:
- item.stat.exists is defined
- s is defined
- '{{ item.item.exists }}'
- name: sudo remove rules from strings
file: path='{{ sudo_rules_dir }}/{{ item.item.priority }}_{{ item.item.name }}' state='absent'
with_items:
- '{{ s.results }}'
when:
- s is defined
- ( not item.item.exists ) or ( '{{ item.item.exists | lower }}' == 'false' )
|