From f30709d7dbe88d82c4df66c476db36cb5c0ce903 Mon Sep 17 00:00:00 2001 From: boom2 Date: Thu, 14 Dec 2023 17:24:25 -0500 Subject: - 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" --- ...9-playbook-copy-system-files-on-controller.yml~ | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 ansible-practice/system/09-playbook-copy-system-files-on-controller.yml~ (limited to 'ansible-practice/system/09-playbook-copy-system-files-on-controller.yml~') diff --git a/ansible-practice/system/09-playbook-copy-system-files-on-controller.yml~ b/ansible-practice/system/09-playbook-copy-system-files-on-controller.yml~ new file mode 100644 index 0000000..90ca529 --- /dev/null +++ b/ansible-practice/system/09-playbook-copy-system-files-on-controller.yml~ @@ -0,0 +1,81 @@ +# 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 +# +# +# had to run the command like so: +# +# ansible-playbook 09-playbook-copy-system-files.yml --ask-become-pass +# +# -or- +# +# ansible-playbook 09-playbook-copy-system-files.yml -K +# +# -or- +# +# ansible-playbook 09-playbook-copy-system-files.yml --become -K +# + +--- +- name: "09 - custom ansible - backup system files" + hosts: localhost + 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 + when: backup_dir.stat.isdir is not defined + tags: ['create_backup_dir'] + +#- name: Print a debug message +# ansible.builtin.debug: +# msg: "isdir isn't defined (path doesn't exist)" +# when: backup_dir.stat.islnk is not defined + +# - name: backup '/etc/fstab' +# ansible.builtin.copy: +# src: /etc/fstab +# remote_src: true +# dest: "{{ backup_etc_dir }}/fstab" +## backup: true +# when: backup_dir.stat.isdir is defined +# delegate_to: localhost +# run_once: true +# tags: ['fstab'] + +# - name: backup '/etc/fstab' locally +# ansible.builtin.shell: sudo cp -a /etc/fstab {{ backup_etc_dir }}/ +# delegate_to: localhost +# run_once: true +# when: backup_dir.stat.isdir is defined +# tags: ['fstab'] + + - name: backup special '/etc/' files locally + ansible.builtin.shell: | + sudo cp -a /etc/hosts.allow {{ backup_etc_dir }}/ + cp -a /etc/hosts.deny {{ backup_etc_dir }}/ + cp -a /etc/inetd.conf {{ backup_etc_dir }}/ + cp -a /etc/sudoers {{ backup_etc_dir }}/ + cp -a /etc/hosts {{ backup_etc_dir }}/ + cp -a /etc/fstab {{ backup_etc_dir }}/ + cp -a /etc/inittab {{ backup_etc_dir }}/ + exit 0 + delegate_to: localhost + run_once: true + when: backup_dir.stat.isdir is defined + tags: ['fstab'] + -- cgit v1.2.3-54-g00ecf