diff options
| author | boom2 <blizzack@blizzack.com> | 2023-12-14 17:24:25 -0500 |
|---|---|---|
| committer | boom2 <blizzack@blizzack.com> | 2023-12-14 17:24:25 -0500 |
| commit | f30709d7dbe88d82c4df66c476db36cb5c0ce903 (patch) | |
| tree | ca861d7aa3e30c73a4fefeb9186f221cf15a8ff5 /ansible-practice/system/10-playbook-copy-system-files-on-node.yml | |
| parent | d8a7729358a2fd3b911022e45d0197fda3e5da94 (diff) | |
- add "new_host" role for system setup
- no longer use "all" to mention all hosts in playbooks
- update of hosts file to now use localhost as "test"
Diffstat (limited to 'ansible-practice/system/10-playbook-copy-system-files-on-node.yml')
| -rw-r--r-- | ansible-practice/system/10-playbook-copy-system-files-on-node.yml | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/ansible-practice/system/10-playbook-copy-system-files-on-node.yml b/ansible-practice/system/10-playbook-copy-system-files-on-node.yml new file mode 100644 index 0000000..c073d44 --- /dev/null +++ b/ansible-practice/system/10-playbook-copy-system-files-on-node.yml @@ -0,0 +1,59 @@ +# create backup copies of system files on control node +# +# https://www.freekb.net/Article?id=759 +# https://docs.ansible.com/ansible/latest/collections/ansible/builtin/copy_module.html +# https://docs.ansible.com/ansible/latest/collections/ansible/builtin/file_module.html +# https://docs.ansible.com/ansible/latest/collections/ansible/builtin/copy_module.html +# https://phoenixnap.com/kb/ansible-check-if-file-exists +# https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_variables.html#registering-variables +# https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_conditionals.html +# +# https://www.howtouselinux.com/post/ansible-copy-module-examples-to-copy-file-to-remote-server +# https://docs.ansible.com/ansible/latest/plugins/become.html +# https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_privilege_escalation.html +# +# had to run the command like so: +# +# ansible-playbook 10-playbook-copy-system-files-on-node.yml --ask-become-pass +# +# -or- +# +# ansible-playbook 10-playbook-copy-system-files-on-node.yml -K +# +--- +- name: "10 - custom ansible - backup system files on node" + hosts: dev + tasks: + - name: check backup directory status + ansible.builtin.stat: + path: "{{ backup_etc_dir }}" + register: backup_dir + tags: ['backup_dir_status'] + + - name: create backup directory if it does not exist + ansible.builtin.file: + path: "{{ backup_etc_dir }}" + state: directory + become: true + become_user: root + when: backup_dir.stat.isdir is not defined + tags: ['create_backup_dir'] + + - name: backup of system files + ansible.builtin.copy: + src: /etc/{{ item }} + remote_src: true + dest: "{{ backup_etc_dir }}/" + mode: preserve + with_items: + - hosts.allow + - hosts.deny + - inetd.conf + - sudoers + - hosts + - fstab + - inittab + become: true + become_user: root + when: backup_dir.stat.isdir is defined + tags: ['backup_files'] |
