From 708f0a59f895f0c3da04007593c9aff4781d1150 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Thu, 11 Apr 2024 19:47:38 +0200 Subject: [PATCH 01/10] Clean up errors Signed-off-by: Noah Knegt --- inventory/hosts.yml | 11 ++++------- site.yml | 17 ++++++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/inventory/hosts.yml b/inventory/hosts.yml index 905d17d..75d1a6c 100644 --- a/inventory/hosts.yml +++ b/inventory/hosts.yml @@ -24,12 +24,11 @@ pis: ansible_host: 192.168.90.3 ansible_user: ansible -equinox-servers: +localhost: hosts: - apollo: - ansible_host: 23.97.157.206 - ansible_port: 2004 + localhost: ansible_user: ansible + ansible_host: 127.0.0.1 all: children: @@ -39,6 +38,4 @@ all: datacenter: children: vpses: - equinox: - children: - equinox-servers: + localhost: diff --git a/site.yml b/site.yml index 732886b..ffdcb1b 100644 --- a/site.yml +++ b/site.yml @@ -8,13 +8,15 @@ # =================================================================================================== --- -- hosts: datacenter +- name: Setup + hosts: datacenter remote_user: root roles: - role: setup when: setup is defined -- hosts: datacenter +- name: Install tools + hosts: datacenter remote_user: ansible roles: - role: docker @@ -23,18 +25,19 @@ - role: corepack # Clean up the system -- hosts: datacenter +- name: Cleanup + hosts: datacenter remote_user: ansible become: true tasks: - - name: cleanup package cache (debian and ubuntu) - apt: + - name: Cleanup package cache (debian and ubuntu) + ansible.builtin.apt: autoclean: true changed_when: false when: ansible_os_family == "Debian" - - name: autoremove packages (debian and ubuntu) - apt: + - name: Autoremove packages (debian and ubuntu) + ansible.builtin.apt: autoremove: true purge: true when: ansible_os_family == "Debian" -- 2.49.1 From c726211dff20c979f364c3d487b7b18c7dc83f36 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 14:50:13 +0200 Subject: [PATCH 02/10] Delete docker role Signed-off-by: Noah Knegt --- roles/docker/defaults/main.yml | 2 -- roles/docker/files/temp | 0 roles/docker/handlers/main.yml | 2 -- roles/docker/tasks/addusers.yml | 18 ----------------- roles/docker/tasks/buildx.yml | 24 ----------------------- roles/docker/tasks/check_version.yml | 29 ---------------------------- roles/docker/tasks/cleanup.yml | 14 -------------- roles/docker/tasks/download.yml | 15 -------------- roles/docker/tasks/install.yml | 13 ------------- roles/docker/tasks/main.yml | 25 ------------------------ roles/docker/templates/temp.j2 | 0 roles/docker/tests/inventory | 2 -- roles/docker/tests/test.yml | 5 ----- roles/docker/vars/main.yml | 5 ----- 14 files changed, 154 deletions(-) delete mode 100644 roles/docker/defaults/main.yml delete mode 100644 roles/docker/files/temp delete mode 100644 roles/docker/handlers/main.yml delete mode 100644 roles/docker/tasks/addusers.yml delete mode 100644 roles/docker/tasks/buildx.yml delete mode 100644 roles/docker/tasks/check_version.yml delete mode 100644 roles/docker/tasks/cleanup.yml delete mode 100644 roles/docker/tasks/download.yml delete mode 100644 roles/docker/tasks/install.yml delete mode 100644 roles/docker/tasks/main.yml delete mode 100644 roles/docker/templates/temp.j2 delete mode 100644 roles/docker/tests/inventory delete mode 100644 roles/docker/tests/test.yml delete mode 100644 roles/docker/vars/main.yml diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml deleted file mode 100644 index f0327f6..0000000 --- a/roles/docker/defaults/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# defaults file for docker diff --git a/roles/docker/files/temp b/roles/docker/files/temp deleted file mode 100644 index e69de29..0000000 diff --git a/roles/docker/handlers/main.yml b/roles/docker/handlers/main.yml deleted file mode 100644 index a2bea01..0000000 --- a/roles/docker/handlers/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# handlers file for docker diff --git a/roles/docker/tasks/addusers.yml b/roles/docker/tasks/addusers.yml deleted file mode 100644 index 1662a71..0000000 --- a/roles/docker/tasks/addusers.yml +++ /dev/null @@ -1,18 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 31-03-2023 -# @description : This will add selected users to the docker group. -# =================================================================================================== - ---- -- name: Add users to the docker group - become: true - user: - name: "{{ item }}" - groups: docker - append: true - with_items: "{{ docker_users }}" - when: docker_users is defined diff --git a/roles/docker/tasks/buildx.yml b/roles/docker/tasks/buildx.yml deleted file mode 100644 index 82515a9..0000000 --- a/roles/docker/tasks/buildx.yml +++ /dev/null @@ -1,24 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will make sure that docker buildx is installed. -# =================================================================================================== - ---- -- name: Check for docker-buildx - shell: docker buildx version - register: docker_buildx - ignore_errors: true - -- name: Install docker-buildx - package: - name: docker-buildx - state: present - when: docker_buildx.stdout is not defined - -- name: Alias docker-buildx - shell: docker buildx install - when: docker_buildx.stdout is not defined diff --git a/roles/docker/tasks/check_version.yml b/roles/docker/tasks/check_version.yml deleted file mode 100644 index dcf0db7..0000000 --- a/roles/docker/tasks/check_version.yml +++ /dev/null @@ -1,29 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 31-03-2023 -# @description : This will check if docker is installed as the latest version. -# =================================================================================================== - ---- -- name: Check docker version - shell: docker --version - register: docker_version - ignore_errors: true - -- name: Install jq - become: true - package: - name: jq - state: present - -- name: Check if latest version is stable - shell: "curl -s https://api.github.com/repos/docker/cli/tags | jq -r '.[0].name' | grep -E -o '[0-9]+\\.[0-9]+\\.[0-9]+\\-?'" - register: docker_latest_version - -- name: Compare versions - set_fact: - docker_update: true - when: docker_version.stdout is not defined diff --git a/roles/docker/tasks/cleanup.yml b/roles/docker/tasks/cleanup.yml deleted file mode 100644 index d47087e..0000000 --- a/roles/docker/tasks/cleanup.yml +++ /dev/null @@ -1,14 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 31-03-2023 -# @description : This will cleanup the docker script from the machine. -# =================================================================================================== - ---- -- name: Cleanup docker script - file: - path: /tmp/get-docker.sh - state: absent diff --git a/roles/docker/tasks/download.yml b/roles/docker/tasks/download.yml deleted file mode 100644 index fa619fc..0000000 --- a/roles/docker/tasks/download.yml +++ /dev/null @@ -1,15 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 31-03-2023 -# @description : This will download the docker install script. -# =================================================================================================== - ---- -- name: Download the docker install script - get_url: - url: https://get.docker.com - dest: /tmp/get-docker.sh - mode: 0755 diff --git a/roles/docker/tasks/install.yml b/roles/docker/tasks/install.yml deleted file mode 100644 index 002c1a8..0000000 --- a/roles/docker/tasks/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 31-03-2023 -# @description : This will install the docker engine. -# =================================================================================================== - ---- -- name: Run the docker install script - shell: /tmp/get-docker.sh - when: docker_update is defined diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml deleted file mode 100644 index 9c4eb28..0000000 --- a/roles/docker/tasks/main.yml +++ /dev/null @@ -1,25 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 27-03-2023 -# @description : This will make sure that docker is installed on the machine. -# =================================================================================================== - ---- -- include_tasks: check_version.yml - -- include_tasks: download.yml - when: docker_update is defined - -- include_tasks: install.yml - when: docker_update is defined - -- include_tasks: addusers.yml - when: docker_update is defined - -- include_tasks: cleanup.yml - when: docker_update is defined - -- include_tasks: buildx.yml diff --git a/roles/docker/templates/temp.j2 b/roles/docker/templates/temp.j2 deleted file mode 100644 index e69de29..0000000 diff --git a/roles/docker/tests/inventory b/roles/docker/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/docker/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/docker/tests/test.yml b/roles/docker/tests/test.yml deleted file mode 100644 index 7aabdb0..0000000 --- a/roles/docker/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - docker diff --git a/roles/docker/vars/main.yml b/roles/docker/vars/main.yml deleted file mode 100644 index 941d6f5..0000000 --- a/roles/docker/vars/main.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -# vars file for docker -docker_users: - - noahk - - root -- 2.49.1 From e9efb2dfa87711271ef80b0c95b2adca9bfb4be7 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 14:50:20 +0200 Subject: [PATCH 03/10] Delete mode role Signed-off-by: Noah Knegt --- roles/node/defaults/main.yml | 2 -- roles/node/files/temp | 0 roles/node/handlers/main.yml | 2 -- roles/node/tasks/main.yml | 21 --------------------- roles/node/templates/temp.j2 | 0 roles/node/tests/inventory | 2 -- roles/node/tests/test.yml | 5 ----- roles/node/vars/main.yml | 3 --- 8 files changed, 35 deletions(-) delete mode 100644 roles/node/defaults/main.yml delete mode 100644 roles/node/files/temp delete mode 100644 roles/node/handlers/main.yml delete mode 100644 roles/node/tasks/main.yml delete mode 100644 roles/node/templates/temp.j2 delete mode 100644 roles/node/tests/inventory delete mode 100644 roles/node/tests/test.yml delete mode 100644 roles/node/vars/main.yml diff --git a/roles/node/defaults/main.yml b/roles/node/defaults/main.yml deleted file mode 100644 index aaf0e36..0000000 --- a/roles/node/defaults/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# defaults file for node diff --git a/roles/node/files/temp b/roles/node/files/temp deleted file mode 100644 index e69de29..0000000 diff --git a/roles/node/handlers/main.yml b/roles/node/handlers/main.yml deleted file mode 100644 index 00e2a15..0000000 --- a/roles/node/handlers/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# handlers file for node diff --git a/roles/node/tasks/main.yml b/roles/node/tasks/main.yml deleted file mode 100644 index 059e4c4..0000000 --- a/roles/node/tasks/main.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -- name: Check node version - shell: node --version - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - register: node_version - ignore_errors: true - -- name: Install node - shell: nvm install --lts - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - when: node_version.stdout is "" diff --git a/roles/node/templates/temp.j2 b/roles/node/templates/temp.j2 deleted file mode 100644 index e69de29..0000000 diff --git a/roles/node/tests/inventory b/roles/node/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/node/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/node/tests/test.yml b/roles/node/tests/test.yml deleted file mode 100644 index 657d568..0000000 --- a/roles/node/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - node diff --git a/roles/node/vars/main.yml b/roles/node/vars/main.yml deleted file mode 100644 index e5c444e..0000000 --- a/roles/node/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -# vars file for nvm -noahk_password: 'Voorzitter17' -- 2.49.1 From 613c54b5bbeec4437e20007c664261f05cf35b72 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 14:50:28 +0200 Subject: [PATCH 04/10] Delete nvm role Signed-off-by: Noah Knegt --- roles/nvm/defaults/main.yml | 2 -- roles/nvm/files/temp | 0 roles/nvm/handlers/main.yml | 2 -- roles/nvm/tasks/check_installed.yml | 20 -------------------- roles/nvm/tasks/cleanup.yml | 22 ---------------------- roles/nvm/tasks/download.yml | 16 ---------------- roles/nvm/tasks/get_version.yml | 13 ------------- roles/nvm/tasks/install.yml | 19 ------------------- roles/nvm/tasks/main.yml | 9 --------- roles/nvm/templates/temp.j2 | 0 roles/nvm/tests/inventory | 2 -- roles/nvm/tests/test.yml | 5 ----- roles/nvm/vars/main.yml | 3 --- 13 files changed, 113 deletions(-) delete mode 100644 roles/nvm/defaults/main.yml delete mode 100644 roles/nvm/files/temp delete mode 100644 roles/nvm/handlers/main.yml delete mode 100644 roles/nvm/tasks/check_installed.yml delete mode 100644 roles/nvm/tasks/cleanup.yml delete mode 100644 roles/nvm/tasks/download.yml delete mode 100644 roles/nvm/tasks/get_version.yml delete mode 100644 roles/nvm/tasks/install.yml delete mode 100644 roles/nvm/tasks/main.yml delete mode 100644 roles/nvm/templates/temp.j2 delete mode 100644 roles/nvm/tests/inventory delete mode 100644 roles/nvm/tests/test.yml delete mode 100644 roles/nvm/vars/main.yml diff --git a/roles/nvm/defaults/main.yml b/roles/nvm/defaults/main.yml deleted file mode 100644 index e7c5d9b..0000000 --- a/roles/nvm/defaults/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# defaults file for nvm diff --git a/roles/nvm/files/temp b/roles/nvm/files/temp deleted file mode 100644 index e69de29..0000000 diff --git a/roles/nvm/handlers/main.yml b/roles/nvm/handlers/main.yml deleted file mode 100644 index a1ed161..0000000 --- a/roles/nvm/handlers/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# handlers file for nvm diff --git a/roles/nvm/tasks/check_installed.yml b/roles/nvm/tasks/check_installed.yml deleted file mode 100644 index c98a481..0000000 --- a/roles/nvm/tasks/check_installed.yml +++ /dev/null @@ -1,20 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will check if nvm is installed as the latest version. -# =================================================================================================== - ---- -- name: Check nvm version - shell: nvm --version - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - register: nvm_version - ignore_errors: true diff --git a/roles/nvm/tasks/cleanup.yml b/roles/nvm/tasks/cleanup.yml deleted file mode 100644 index 931ba78..0000000 --- a/roles/nvm/tasks/cleanup.yml +++ /dev/null @@ -1,22 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will cleanup the system. -# =================================================================================================== - ---- -- name: Cleanup - file: - path: "{{ item }}" - state: absent - with_items: - - /tmp/nvm-install.sh - - /tmp/nvm-install.log - - /tmp/nvm-install.out - - /tmp/nvm-install.err - - /tmp/nvm-install.debug - - /tmp/nvm-install.info - - /tmp/nvm-install.warn diff --git a/roles/nvm/tasks/download.yml b/roles/nvm/tasks/download.yml deleted file mode 100644 index ca9328c..0000000 --- a/roles/nvm/tasks/download.yml +++ /dev/null @@ -1,16 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will download the nvm install script. -# =================================================================================================== - ---- -- name: Download nvm - get_url: - url: https://raw.githubusercontent.com/nvm-sh/nvm/{{ nvm_latest_version.stdout }}/install.sh - dest: /tmp/nvm-install.sh - mode: 0755 - when: nvm_version.stdout != nvm_latest_version.stdout or nvm_version.stdout == "" diff --git a/roles/nvm/tasks/get_version.yml b/roles/nvm/tasks/get_version.yml deleted file mode 100644 index 6aa1ccf..0000000 --- a/roles/nvm/tasks/get_version.yml +++ /dev/null @@ -1,13 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will get the latest version of nvm. -# =================================================================================================== - ---- -- name: Get the latest nvm version - shell: curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest | grep tag_name | cut -d '"' -f 4 - register: nvm_latest_version diff --git a/roles/nvm/tasks/install.yml b/roles/nvm/tasks/install.yml deleted file mode 100644 index 5d9510b..0000000 --- a/roles/nvm/tasks/install.yml +++ /dev/null @@ -1,19 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 06-04-2023 -# @description : This will install nvm as the latest version. -# =================================================================================================== - ---- -- name: Install nvm - shell: /tmp/nvm-install.sh - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - when: nvm_version.stdout != nvm_latest_version.stdout or nvm_version.stdout == "" diff --git a/roles/nvm/tasks/main.yml b/roles/nvm/tasks/main.yml deleted file mode 100644 index f85affb..0000000 --- a/roles/nvm/tasks/main.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -- import_tasks: check_installed.yml -- import_tasks: get_version.yml - -- import_tasks: download.yml - -- import_tasks: install.yml - -- import_tasks: cleanup.yml diff --git a/roles/nvm/templates/temp.j2 b/roles/nvm/templates/temp.j2 deleted file mode 100644 index e69de29..0000000 diff --git a/roles/nvm/tests/inventory b/roles/nvm/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/nvm/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/nvm/tests/test.yml b/roles/nvm/tests/test.yml deleted file mode 100644 index a57e3ac..0000000 --- a/roles/nvm/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - nvm diff --git a/roles/nvm/vars/main.yml b/roles/nvm/vars/main.yml deleted file mode 100644 index e5c444e..0000000 --- a/roles/nvm/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -# vars file for nvm -noahk_password: 'Voorzitter17' -- 2.49.1 From 2aa42f6e6f32e77153c5d4e24f8aa12fac0390b5 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 14:51:50 +0200 Subject: [PATCH 05/10] Delete corepack role Signed-off-by: Noah Knegt --- roles/corepack/defaults/main.yml | 2 -- roles/corepack/files/temp | 0 roles/corepack/handlers/main.yml | 2 -- roles/corepack/tasks/main.yml | 58 -------------------------------- roles/corepack/templates/temp.j2 | 0 roles/corepack/tests/inventory | 2 -- roles/corepack/tests/test.yml | 5 --- roles/corepack/vars/main.yml | 3 -- 8 files changed, 72 deletions(-) delete mode 100644 roles/corepack/defaults/main.yml delete mode 100644 roles/corepack/files/temp delete mode 100644 roles/corepack/handlers/main.yml delete mode 100644 roles/corepack/tasks/main.yml delete mode 100644 roles/corepack/templates/temp.j2 delete mode 100644 roles/corepack/tests/inventory delete mode 100644 roles/corepack/tests/test.yml delete mode 100644 roles/corepack/vars/main.yml diff --git a/roles/corepack/defaults/main.yml b/roles/corepack/defaults/main.yml deleted file mode 100644 index 63a4b91..0000000 --- a/roles/corepack/defaults/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# defaults file for corepack diff --git a/roles/corepack/files/temp b/roles/corepack/files/temp deleted file mode 100644 index e69de29..0000000 diff --git a/roles/corepack/handlers/main.yml b/roles/corepack/handlers/main.yml deleted file mode 100644 index 288089a..0000000 --- a/roles/corepack/handlers/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# handlers file for corepack diff --git a/roles/corepack/tasks/main.yml b/roles/corepack/tasks/main.yml deleted file mode 100644 index 0a2e344..0000000 --- a/roles/corepack/tasks/main.yml +++ /dev/null @@ -1,58 +0,0 @@ ---- -- name: Check node version - shell: node --version - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - register: node_version - ignore_errors: true - -- name: Set node version if empty - set_fact: - node_version: 0.0.0 - when: node_version.stdout is "" - -- name: Enable corepack - shell: corepack enable - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - when: node_version.stdout is version('16.0.0', '<') - -- name: Verify corepack - shell: corepack --version - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - register: corepack_version - ignore_errors: true - -- name: Enable pnpm latest version - shell: corepack prepare pnpm@latest --activate - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - when: node_version.stdout is version('16.0.0', '<') - -- name: Test pnpm - shell: pnpm --version - become: true - become_user: noahk - become_method: su - become_flags: '--login' - vars: - ansible_become_pass: "{{ noahk_password }}" - register: pnpm_version - ignore_errors: true diff --git a/roles/corepack/templates/temp.j2 b/roles/corepack/templates/temp.j2 deleted file mode 100644 index e69de29..0000000 diff --git a/roles/corepack/tests/inventory b/roles/corepack/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/corepack/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/corepack/tests/test.yml b/roles/corepack/tests/test.yml deleted file mode 100644 index ca8395e..0000000 --- a/roles/corepack/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - corepack diff --git a/roles/corepack/vars/main.yml b/roles/corepack/vars/main.yml deleted file mode 100644 index e5c444e..0000000 --- a/roles/corepack/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -# vars file for nvm -noahk_password: 'Voorzitter17' -- 2.49.1 From 0488446a71c97362e6598fd403aca0a5d5de86c4 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 14:54:00 +0200 Subject: [PATCH 06/10] Rework zsh installer Signed-off-by: Noah Knegt --- roles/setup/tasks/system/zsh.yml | 41 +++------ roles/setup/templates/zshrc.j2 | 147 ------------------------------- 2 files changed, 11 insertions(+), 177 deletions(-) delete mode 100644 roles/setup/templates/zshrc.j2 diff --git a/roles/setup/tasks/system/zsh.yml b/roles/setup/tasks/system/zsh.yml index fd7a518..5435775 100644 --- a/roles/setup/tasks/system/zsh.yml +++ b/roles/setup/tasks/system/zsh.yml @@ -1,49 +1,30 @@ --- - - name: Install zsh become: true - package: + ansible.builting.package: name: zsh state: present - name: Install oh-my-zsh become: true become_user: noahk - shell: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" + ansible.builtin.command: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" + changed_when: true - name: Install zsh-syntax-highlighting become: true - become_user: noahk - git: - repo: https://github.com/zsh-users/zsh-syntax-highlighting.git - dest: /home/noahk/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting - update: true + ansible.builtin.package: + name: zsh-syntax-highlighting + state: present - name: Install zsh-autosuggestions become: true - become_user: noahk - git: - repo: https://github.com/zsh-users/zsh-autosuggestions.git - dest: /home/noahk/.oh-my-zsh/custom/plugins/zsh-autosuggestions - update: true + ansible.builtin.package: + name: zsh-autosuggestions + state: present - name: Install starship become: true become_user: noahk - shell: sh -c "$(curl -fsSL https://starship.rs/install.sh)" - -- name: Configure ZSH - become: true - become_user: noahk - template: - src: zshrc.j2 - dest: /home/noahk/.zshrc - owner: noahk - group: noahk - mode: 0644 - -- name: Install nushell - become: true - package: - name: nushell - state: present + ansible.builtin.command: sh -c "$(curl -fsSL https://starship.rs/install.sh)" + changed_when: true diff --git a/roles/setup/templates/zshrc.j2 b/roles/setup/templates/zshrc.j2 deleted file mode 100644 index 4877784..0000000 --- a/roles/setup/templates/zshrc.j2 +++ /dev/null @@ -1,147 +0,0 @@ -# If you come from bash you might have to change your $PATH. -# export PATH=$HOME/bin:/usr/local/bin:$PATH - -# Path to your oh-my-zsh installation. -ZSH=/usr/share/oh-my-zsh/ - -# Set name of the theme to load --- if set to "random", it will -# load a random theme each time oh-my-zsh is loaded, in which case, -# to know which specific one was loaded, run: echo $RANDOM_THEME -# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes -ZSH_THEME="amuse" - -# Set list of themes to pick from when loading at random -# Setting this variable when ZSH_THEME=random will cause zsh to load -# a theme from this variable instead of looking in $ZSH/themes/ -# If set to an empty array, this variable will have no effect. -# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) - -# Uncomment the following line to use case-sensitive completion. -# CASE_SENSITIVE="true" - -# Uncomment the following line to use hyphen-insensitive completion. -# Case-sensitive completion must be off. _ and - will be interchangeable. -# HYPHEN_INSENSITIVE="true" - -# Uncomment the following line to disable bi-weekly auto-update checks. -DISABLE_AUTO_UPDATE="true" - -# Uncomment the following line to automatically update without prompting. -# DISABLE_UPDATE_PROMPT="true" - -# Uncomment the following line to change how often to auto-update (in days). -# export UPDATE_ZSH_DAYS=13 - -# Uncomment the following line if pasting URLs and other text is messed up. -# DISABLE_MAGIC_FUNCTIONS="true" - -# Uncomment the following line to disable colors in ls. -# DISABLE_LS_COLORS="true" - -# Uncomment the following line to disable auto-setting terminal title. -# DISABLE_AUTO_TITLE="true" - -# Uncomment the following line to enable command auto-correction. -ENABLE_CORRECTION="true" - -# Uncomment the following line to display red dots whilst waiting for completion. -# COMPLETION_WAITING_DOTS="true" - -# Uncomment the following line if you want to disable marking untracked files -# under VCS as dirty. This makes repository status check for large repositories -# much, much faster. -# DISABLE_UNTRACKED_FILES_DIRTY="true" - -# Uncomment the following line if you want to change the command execution time -# stamp shown in the history command output. -# You can set one of the optional three formats: -# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" -# or set a custom format using the strftime function format specifications, -# see 'man strftime' for details. -# HIST_STAMPS="mm/dd/yyyy" - -# Would you like to use another custom folder than $ZSH/custom? -# ZSH_CUSTOM=/path/to/new-custom-folder - -# Which plugins would you like to load? -# Standard plugins can be found in $ZSH/plugins/ -# Custom plugins may be added to $ZSH_CUSTOM/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -# Add wisely, as too many plugins slow down shell startup. -plugins=( - zsh-autosuggestions - zsh-syntax-highlighting - git - - cp - docker - docker-compose - dotenv - extract - git-auto-fetch - gitignore - golang - helm - jsontools - kubectl - nvm - rust - rsync - sudo - systemd - themes - tmux - vscode - nmap -) - - -# User configuration - -# Set the XDG_CONFIG_HOME in this file -XDG_CONFIG_HOME=${XDG_CONFIG_HOME:=${HOME}/.config} - -# Source the env variables from the XDG_CONFIG_HOME -source $XDG_CONFIG_HOME/zsh/.zshenv - -# export MANPATH="/usr/local/man:$MANPATH" - -# You may need to manually set your language environment -# export LANG=en_US.UTF-8 - -# Preferred editor for local and remote sessions -# if [[ -n $SSH_CONNECTION ]]; then -# export EDITOR='vim' -# else -# export EDITOR='mvim' -# fi - -# Compilation flags -# export ARCHFLAGS="-arch x86_64" - -# Set personal aliases, overriding those provided by oh-my-zsh libs, -# plugins, and themes. Aliases can be placed here, though oh-my-zsh -# users are encouraged to define aliases within the ZSH_CUSTOM folder. -# For a full list of active aliases, run `alias`. -# -# Example aliases -# alias zshconfig="mate ~/.zshrc" -# alias ohmyzsh="mate ~/.oh-my-zsh" - -# Custom aliases -alias zshrc="nvim ~/.zshrc && source ~/.zshrc" -source $XDG_CONFIG_HOME/zsh/.aliases - -ZSH_CACHE_DIR=$HOME/.cache/oh-my-zsh -if [[ ! -d $ZSH_CACHE_DIR ]]; then - mkdir $ZSH_CACHE_DIR -fi - -source $ZSH/oh-my-zsh.sh - -# For sharship rs loading -eval "$(starship init zsh)" - -# tabtab source for packages -# uninstall by removing these lines -[[ -f ~/.config/tabtab/zsh/__tabtab.zsh ]] && . ~/.config/tabtab/zsh/__tabtab.zsh || true -- 2.49.1 From f12f17658b94c5d56ad19a657c6cc88d92aab4a6 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 15:12:19 +0200 Subject: [PATCH 07/10] Remove the roles from the datacenter Signed-off-by: Noah Knegt --- site.yml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/site.yml b/site.yml index ffdcb1b..9858652 100644 --- a/site.yml +++ b/site.yml @@ -15,15 +15,6 @@ - role: setup when: setup is defined -- name: Install tools - hosts: datacenter - remote_user: ansible - roles: - - role: docker - - role: nvm - - role: node - - role: corepack - # Clean up the system - name: Cleanup hosts: datacenter -- 2.49.1 From 2cdea1f6c39f0b5221ebd7d8270fd3498692a950 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 15:12:30 +0200 Subject: [PATCH 08/10] Update the setup tasks Signed-off-by: Noah Knegt --- roles/setup/handlers/main.yml | 10 ++--- roles/setup/tasks/main.yml | 20 ++++++--- roles/setup/tasks/software/acl.yml | 15 ------- roles/setup/tasks/software/repositories.yml | 4 +- roles/setup/tasks/software/ufw.yml | 47 +++++++++++++++++++++ roles/setup/tasks/system/openssh.yml | 34 +++++++++++---- roles/setup/tasks/users/ansible.yml | 17 ++------ roles/setup/tasks/users/noahk.yml | 21 +++------ roles/setup/vars/Archlinux.yml | 8 ++-- roles/setup/vars/Debian.yml | 8 ++-- roles/setup/vars/Ubuntu.yml | 9 ++-- roles/setup/vars/main.yml | 4 +- 12 files changed, 116 insertions(+), 81 deletions(-) delete mode 100644 roles/setup/tasks/software/acl.yml create mode 100644 roles/setup/tasks/software/ufw.yml diff --git a/roles/setup/handlers/main.yml b/roles/setup/handlers/main.yml index fa64a88..547738d 100644 --- a/roles/setup/handlers/main.yml +++ b/roles/setup/handlers/main.yml @@ -8,11 +8,11 @@ # =================================================================================================== --- -- name: apt_update - apt: - update_cache: true +- name: Update apt + ansible.builtin.apt: + update-cache: true -- name: restart_sshd - service: +- name: Restart sshd + ansible.builtin.service: name: "{{ openssh_service }}" state: restarted diff --git a/roles/setup/tasks/main.yml b/roles/setup/tasks/main.yml index 08b2dd8..4eeb246 100644 --- a/roles/setup/tasks/main.yml +++ b/roles/setup/tasks/main.yml @@ -9,16 +9,22 @@ # =================================================================================================== --- -- include_vars: "{{ ansible_distribution }}.yml" +- name: Include distribution variables + ansible.builtin.include_vars: "{{ ansible_distribution }}.yml" # Setup the ansible user -- include_tasks: users/ansible.yml -- include_tasks: users/noahk.yml +- name: Create ansible user + ansible.builtin.include_tasks: users/ansible.yml +- name: Create usable user + ansible.builtin.include_tasks: users/noahk.yml -# Setup the sshd -- include_tasks: system/openssh.yml + # Setup the sshd +- name: Setup openssh + ansible.builtin.include_tasks: system/openssh.yml # Setup the repositories for Debian based systems -- include_tasks: software/repositories.yml +- name: Setup Debian based repositories + ansible.builtin.include_tasks: software/repositories.yml -- include_tasks: software/acl.yml +- name: Install and configure UFW + ansible.builtin.include_tasks: software/ufw.yml diff --git a/roles/setup/tasks/software/acl.yml b/roles/setup/tasks/software/acl.yml deleted file mode 100644 index 5c3e5aa..0000000 --- a/roles/setup/tasks/software/acl.yml +++ /dev/null @@ -1,15 +0,0 @@ -# =================================================================================================== -# ? ABOUT -# @author : Noah Knegt -# @email : personal@noahknegt.com -# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations -# @createdOn : 01-06-2023 -# @description : -# =================================================================================================== - ---- -- name: Install acl - package: - name: - - acl - state: latest diff --git a/roles/setup/tasks/software/repositories.yml b/roles/setup/tasks/software/repositories.yml index 1fdac40..47740d6 100644 --- a/roles/setup/tasks/software/repositories.yml +++ b/roles/setup/tasks/software/repositories.yml @@ -9,9 +9,9 @@ --- - name: Install aptitude and software-properties-common - package: + ansible.builtin.package: name: - aptitude - software-properties-common - state: latest + state: present when: ansible_distribution in ["Debian", "Pop!_OS", "Ubuntu"] diff --git a/roles/setup/tasks/software/ufw.yml b/roles/setup/tasks/software/ufw.yml new file mode 100644 index 0000000..1fd275e --- /dev/null +++ b/roles/setup/tasks/software/ufw.yml @@ -0,0 +1,47 @@ +# =================================================================================================== +# ? ABOUT +# @author : Noah Knegt +# @email : personal@noahknegt.com +# @repo : https://git.noahknegt.com/noah.knegt/ansible-automations +# @createdOn : 01-06-2023 +# @description : +# =================================================================================================== + +--- +- name: Install UFW + ansible.builtin.package: + name: ufw + state: present + +- name: UFW deny all incoming traffic + community.general.ufw: + default: deny + direction: incoming + +- name: UFW allow all outbound traffic + community.general.ufw: + default: allow + direction: outgoing + +- name: Allow all access from RFC1918 networks to this host + community.general.ufw: + direction: incoming + rule: allow + src: "{{ item }}" + loop: + - 10.0.0.0/8 + - 172.16.0.0/12 + - 192.168.0.0/16 + +- name: UFW allow default ssh port + community.general.ufw: + direction: incoming + rule: limit + port: ssh + +- name: UFW allow custom ssh port + when: setup_openssh_port is defined + community.general.ufw: + direction: incoming + rule: allow + port: "{{ setup_openssh_port }}" diff --git a/roles/setup/tasks/system/openssh.yml b/roles/setup/tasks/system/openssh.yml index 71e2ceb..fb1f2ce 100644 --- a/roles/setup/tasks/system/openssh.yml +++ b/roles/setup/tasks/system/openssh.yml @@ -9,20 +9,22 @@ --- - name: Install or update openssh - package: - name: "{{ openssh_package }}" - state: latest + ansible.builtin.package: + name: "{{ setup_openssh_package }}" + state: present notify: - restart_sshd -- name: enable ssh daemon - service: +- name: Enable ssh daemon + when: inventory_hostname in groups['datacenter'] + ansible.builtin.service: name: "{{ openssh_service }}" state: started enabled: true -- name: configure sshd - template: +- name: Configure sshd + when: inventory_hostname in groups['datacenter'] + ansible.builtin.template: src: sshd_config.j2 dest: /etc/ssh/sshd_config owner: root @@ -31,10 +33,24 @@ notify: - restart_sshd -- name: copy sshd banner - copy: +- name: Copy sshd banner + ansible.builtin.copy: src: ssh_banner.net dest: /etc/issue.net owner: root group: root mode: 0644 + +- name: Copy ssh public key + ansible.builtin.authorized_key: + user: ansible + key: "{{ item }}" + with_file: + - ansible/ansible.pub + +- name: Copy ssh public key + ansible.builtin.authorized_key: + user: noahk + key: "{{ item }}" + with_file: + - noahk/noahk.pub diff --git a/roles/setup/tasks/users/ansible.yml b/roles/setup/tasks/users/ansible.yml index 08a7508..efb7010 100644 --- a/roles/setup/tasks/users/ansible.yml +++ b/roles/setup/tasks/users/ansible.yml @@ -9,12 +9,12 @@ --- - name: Add ansible group - group: + ansible.builtin.group: name: ansible state: present - name: Add new ansible user - user: + ansible.builtin.user: name: ansible group: ansible groups: ansible,{{ sudo_group }} @@ -23,7 +23,7 @@ shell: /bin/bash - name: Add ansible user to sudoers - copy: + ansible.builtin.copy: src: ansible/ansible_sudoers dest: /etc/sudoers.d/ansible owner: root @@ -31,18 +31,9 @@ mode: 0440 - name: Create .ssh directory - file: + ansible.builtin.file: path: /home/ansible/.ssh state: directory owner: ansible group: ansible mode: 0700 - with_items: - - dir: /home/ansible/.ssh - -- name: Copy ssh public key - authorized_key: - user: ansible - key: "{{ item }}" - with_file: - - ansible/ansible.pub diff --git a/roles/setup/tasks/users/noahk.yml b/roles/setup/tasks/users/noahk.yml index 89c923c..4c5be16 100644 --- a/roles/setup/tasks/users/noahk.yml +++ b/roles/setup/tasks/users/noahk.yml @@ -9,21 +9,21 @@ --- - name: Create the group - group: + ansible.builtin.group: name: noahk state: present - name: Create the user - user: + ansible.builtin.user: name: noahk group: noahk - groups: noahk,{{ sudo_group }} - password: "{{ noahk_password }}" + groups: noahk,{{ setup_sudo_group }} + password: "{{ setup_noahk_password }}" state: present shell: /bin/bash - name: Add user to sudoers - copy: + ansible.builtin.copy: src: noahk/noahk_sudoers dest: /etc/sudoers.d/noahk owner: root @@ -31,18 +31,9 @@ mode: 0440 - name: Create .ssh directory - file: + ansible.builtin.file: path: /home/noahk/.ssh state: directory owner: noahk group: noahk mode: 0700 - with_items: - - dir: /home/noahk/.ssh - -- name: Copy ssh public key - authorized_key: - user: noahk - key: "{{ item }}" - with_file: - - noahk/noahk.pub diff --git a/roles/setup/vars/Archlinux.yml b/roles/setup/vars/Archlinux.yml index c514b50..be67295 100644 --- a/roles/setup/vars/Archlinux.yml +++ b/roles/setup/vars/Archlinux.yml @@ -8,7 +8,7 @@ # =================================================================================================== --- -sudo_group: wheel -openssh_service: sshd -openssh_package: openssh -sftp_path: /usr/lib/ssh/sftp-server +setup_sudo_group: wheel +setup_openssh_service: sshd +setup_openssh_package: openssh +setup_sftp_path: /usr/lib/ssh/sftp-server diff --git a/roles/setup/vars/Debian.yml b/roles/setup/vars/Debian.yml index fb86373..9997744 100644 --- a/roles/setup/vars/Debian.yml +++ b/roles/setup/vars/Debian.yml @@ -8,7 +8,7 @@ # =================================================================================================== --- -sudo_group: sudo -openssh_service: ssh -openssh_package: openssh-server -sftp_path: /usr/lib/openssh/sftp-server +setup_sudo_group: sudo +setup_openssh_service: ssh +setup_openssh_package: openssh-server +setup_sftp_path: /usr/lib/openssh/sftp-server diff --git a/roles/setup/vars/Ubuntu.yml b/roles/setup/vars/Ubuntu.yml index 65d6eda..9997744 100644 --- a/roles/setup/vars/Ubuntu.yml +++ b/roles/setup/vars/Ubuntu.yml @@ -8,8 +8,7 @@ # =================================================================================================== --- -sudo_group: sudo -openssh_service: ssh -openssh_package: openssh-server -sftp_path: /usr/lib/openssh/sftp-server -ssh_port: 4422 +setup_sudo_group: sudo +setup_openssh_service: ssh +setup_openssh_package: openssh-server +setup_sftp_path: /usr/lib/openssh/sftp-server diff --git a/roles/setup/vars/main.yml b/roles/setup/vars/main.yml index d5795ca..cee4bb1 100644 --- a/roles/setup/vars/main.yml +++ b/roles/setup/vars/main.yml @@ -8,5 +8,5 @@ # =================================================================================================== --- -ansible_password: '$6$8eLzx6DNI/aamHAp$ZJK3kpbXDaMDUxuCFzRbbYL78aqdDnRRd1zbQPO2ED.pQQdcuAEnwBI2Vf3a36j7I5ED4STx6TLQnB8RiY3Vw/' -noahk_password: '$6$8eLzx6DNI/aamHAp$ZJK3kpbXDaMDUxuCFzRbbYL78aqdDnRRd1zbQPO2ED.pQQdcuAEnwBI2Vf3a36j7I5ED4STx6TLQnB8RiY3Vw/' +setup_ansible_password: "$6$8eLzx6DNI/aamHAp$ZJK3kpbXDaMDUxuCFzRbbYL78aqdDnRRd1zbQPO2ED.pQQdcuAEnwBI2Vf3a36j7I5ED4STx6TLQnB8RiY3Vw/" +setup_noahk_password: "$6$8eLzx6DNI/aamHAp$ZJK3kpbXDaMDUxuCFzRbbYL78aqdDnRRd1zbQPO2ED.pQQdcuAEnwBI2Vf3a36j7I5ED4STx6TLQnB8RiY3Vw/" -- 2.49.1 From da391d2f1f30c6b589815df30117375e362ff8de Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 17:38:09 +0200 Subject: [PATCH 09/10] Add dotfiles integration Signed-off-by: Noah Knegt --- .yamllint.yml | 4 +++- roles/setup/tasks/config/noahk.yml | 17 +++++++++++++++++ roles/setup/tasks/main.yml | 28 +++++++++++++++++++++------- roles/setup/tasks/software/stow.yml | 6 ++++++ 4 files changed, 47 insertions(+), 8 deletions(-) create mode 100644 roles/setup/tasks/config/noahk.yml create mode 100644 roles/setup/tasks/software/stow.yml diff --git a/.yamllint.yml b/.yamllint.yml index cf1c947..10d2a8b 100644 --- a/.yamllint.yml +++ b/.yamllint.yml @@ -7,7 +7,9 @@ ignore: | rules: truthy: - allowed-values: ['true', 'false'] + allowed-values: ["true", "false"] check-keys: false level: error line-length: disable + comments: + min-spaces-from-content: 1 diff --git a/roles/setup/tasks/config/noahk.yml b/roles/setup/tasks/config/noahk.yml new file mode 100644 index 0000000..c280aed --- /dev/null +++ b/roles/setup/tasks/config/noahk.yml @@ -0,0 +1,17 @@ +--- +- name: Setup dotfiles repo + when: inventory_hostname in groups['localhost'] + ansible.builtin.git: + repo: https://git.noahknegt.com/noah.knegt/dotfiles.git # noqa: latest + depth: 1 + dest: /home/noahk/dotfiles + accept_hostkey: true + +- name: Use stow to set up config data + when: inventory_hostname in groups['localhost'] + become: true + become_user: noahk + become_method: ansible.builtin.su + ansible.builtin.command: cd /home/noahk/dotfiles && stow -t ~ . + register: stow_output + changed_when: stow_output.rc != 0 diff --git a/roles/setup/tasks/main.yml b/roles/setup/tasks/main.yml index 4eeb246..11af54c 100644 --- a/roles/setup/tasks/main.yml +++ b/roles/setup/tasks/main.yml @@ -10,21 +10,35 @@ --- - name: Include distribution variables - ansible.builtin.include_vars: "{{ ansible_distribution }}.yml" + ansible.builtin.include_vars: + file: "{{ ansible_distribution }}.yml" # Setup the ansible user - name: Create ansible user - ansible.builtin.include_tasks: users/ansible.yml + ansible.builtin.include_tasks: + file: users/ansible.yml - name: Create usable user - ansible.builtin.include_tasks: users/noahk.yml + ansible.builtin.include_tasks: + file: users/noahk.yml - # Setup the sshd +# Setup the sshd - name: Setup openssh - ansible.builtin.include_tasks: system/openssh.yml + ansible.builtin.include_tasks: + file: system/openssh.yml # Setup the repositories for Debian based systems - name: Setup Debian based repositories - ansible.builtin.include_tasks: software/repositories.yml + ansible.builtin.include_tasks: + file: software/repositories.yml - name: Install and configure UFW - ansible.builtin.include_tasks: software/ufw.yml + ansible.builtin.include_tasks: + file: software/ufw.yml + +- name: Install stow + ansible.builtin.include_tasks: + file: software/stow.yml + +- name: Configure the usable user + ansible.builtin.include_tasks: + file: config/noahk.yml diff --git a/roles/setup/tasks/software/stow.yml b/roles/setup/tasks/software/stow.yml new file mode 100644 index 0000000..f29b3b5 --- /dev/null +++ b/roles/setup/tasks/software/stow.yml @@ -0,0 +1,6 @@ +--- +- name: Install stow + when: inventory_hostname in groups['localhost'] + ansible.builtin.package: + name: stow + state: present -- 2.49.1 From 9c638deee31fac74c5793033d7eb27fdd2d60ea8 Mon Sep 17 00:00:00 2001 From: Noah Knegt Date: Fri, 12 Apr 2024 19:37:45 +0200 Subject: [PATCH 10/10] Correctly specify localhost Signed-off-by: Noah Knegt --- inventory/hosts.yml | 5 ++--- site.yml | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/inventory/hosts.yml b/inventory/hosts.yml index 75d1a6c..91448c1 100644 --- a/inventory/hosts.yml +++ b/inventory/hosts.yml @@ -26,9 +26,8 @@ pis: localhost: hosts: - localhost: - ansible_user: ansible - ansible_host: 127.0.0.1 + localhost-machine: + ansible_connection: local all: children: diff --git a/site.yml b/site.yml index 9858652..f898c33 100644 --- a/site.yml +++ b/site.yml @@ -9,7 +9,7 @@ --- - name: Setup - hosts: datacenter + hosts: all remote_user: root roles: - role: setup @@ -17,7 +17,7 @@ # Clean up the system - name: Cleanup - hosts: datacenter + hosts: all remote_user: ansible become: true tasks: -- 2.49.1