From 218a7e6096792839c69c3899571f21293c3b0947 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 13 Dec 2023 20:54:15 -0500 Subject: [PATCH 01/18] fix teest.yml for update_all_packages role --- galaxy.yml | 2 +- roles/update_all_packages/tests/test.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/galaxy.yml b/galaxy.yml index fe1d270..0b8ca5a 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -8,7 +8,7 @@ namespace: jchristianh name: baseos # The version of the collection. Must be compatible with semantic versioning -version: 1.0.17 +version: 1.0.18 # The path to the Markdown (.md) readme file. This path is relative to the root of the collection readme: README.md diff --git a/roles/update_all_packages/tests/test.yml b/roles/update_all_packages/tests/test.yml index eecdfa1..568ff14 100644 --- a/roles/update_all_packages/tests/test.yml +++ b/roles/update_all_packages/tests/test.yml @@ -2,4 +2,4 @@ - hosts: localhost remote_user: root roles: - - roles/update_all_packages + - update_all_packages From 4125d011d2cab0d62593d70c71dce518638eda63 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Fri, 15 Dec 2023 08:42:36 -0500 Subject: [PATCH 02/18] Cleanup tests/ folder in roles; its not needed --- galaxy.yml | 2 +- roles/base_packages/tasks/main.yml | 2 +- roles/base_packages/tests/inventory | 2 -- roles/base_packages/tests/test.yml | 5 ----- roles/bashrc/tests/inventory | 2 -- roles/bashrc/tests/test.yml | 5 ----- roles/default_services/tests/inventory | 2 -- roles/default_services/tests/test.yml | 5 ----- roles/etc_hosts/tests/inventory | 2 -- roles/etc_hosts/tests/test.yml | 5 ----- roles/hostname/tests/inventory | 2 -- roles/hostname/tests/test.yml | 5 ----- roles/motd/tests/inventory | 2 -- roles/motd/tests/test.yml | 5 ----- roles/node_status/tests/inventory | 2 -- roles/node_status/tests/test.yml | 5 ----- roles/resolv_conf/tests/inventory | 2 -- roles/resolv_conf/tests/test.yml | 5 ----- roles/snmpd_conf/tests/inventory | 2 -- roles/snmpd_conf/tests/test.yml | 5 ----- roles/update_all_packages/tests/inventory | 2 -- roles/update_all_packages/tests/test.yml | 5 ----- 22 files changed, 2 insertions(+), 72 deletions(-) delete mode 100644 roles/base_packages/tests/inventory delete mode 100644 roles/base_packages/tests/test.yml delete mode 100644 roles/bashrc/tests/inventory delete mode 100644 roles/bashrc/tests/test.yml delete mode 100644 roles/default_services/tests/inventory delete mode 100644 roles/default_services/tests/test.yml delete mode 100644 roles/etc_hosts/tests/inventory delete mode 100644 roles/etc_hosts/tests/test.yml delete mode 100644 roles/hostname/tests/inventory delete mode 100644 roles/hostname/tests/test.yml delete mode 100644 roles/motd/tests/inventory delete mode 100644 roles/motd/tests/test.yml delete mode 100644 roles/node_status/tests/inventory delete mode 100644 roles/node_status/tests/test.yml delete mode 100644 roles/resolv_conf/tests/inventory delete mode 100644 roles/resolv_conf/tests/test.yml delete mode 100644 roles/snmpd_conf/tests/inventory delete mode 100644 roles/snmpd_conf/tests/test.yml delete mode 100644 roles/update_all_packages/tests/inventory delete mode 100644 roles/update_all_packages/tests/test.yml diff --git a/galaxy.yml b/galaxy.yml index 0b8ca5a..193a20c 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -8,7 +8,7 @@ namespace: jchristianh name: baseos # The version of the collection. Must be compatible with semantic versioning -version: 1.0.18 +version: 1.0.19 # The path to the Markdown (.md) readme file. This path is relative to the root of the collection readme: README.md diff --git a/roles/base_packages/tasks/main.yml b/roles/base_packages/tasks/main.yml index b7cb015..3a7b7b8 100644 --- a/roles/base_packages/tasks/main.yml +++ b/roles/base_packages/tasks/main.yml @@ -12,7 +12,7 @@ file: __default_packages.yml -- name: Install EPEL for CentOS hosts - Required for some of our packages +- name: Install EPEL for CentOS hosts - Required for some packages package: name : epel-release state : present diff --git a/roles/base_packages/tests/inventory b/roles/base_packages/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/base_packages/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/base_packages/tests/test.yml b/roles/base_packages/tests/test.yml deleted file mode 100644 index 517b023..0000000 --- a/roles/base_packages/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - base_packages diff --git a/roles/bashrc/tests/inventory b/roles/bashrc/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/bashrc/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/bashrc/tests/test.yml b/roles/bashrc/tests/test.yml deleted file mode 100644 index 50a8ecf..0000000 --- a/roles/bashrc/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - bashrc diff --git a/roles/default_services/tests/inventory b/roles/default_services/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/default_services/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/default_services/tests/test.yml b/roles/default_services/tests/test.yml deleted file mode 100644 index c11db68..0000000 --- a/roles/default_services/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - default_services diff --git a/roles/etc_hosts/tests/inventory b/roles/etc_hosts/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/etc_hosts/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/etc_hosts/tests/test.yml b/roles/etc_hosts/tests/test.yml deleted file mode 100644 index 5efbad1..0000000 --- a/roles/etc_hosts/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - etc_hosts diff --git a/roles/hostname/tests/inventory b/roles/hostname/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/hostname/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/hostname/tests/test.yml b/roles/hostname/tests/test.yml deleted file mode 100644 index 8a43845..0000000 --- a/roles/hostname/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - hostname diff --git a/roles/motd/tests/inventory b/roles/motd/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/motd/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/motd/tests/test.yml b/roles/motd/tests/test.yml deleted file mode 100644 index 3cc2943..0000000 --- a/roles/motd/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - motd diff --git a/roles/node_status/tests/inventory b/roles/node_status/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/node_status/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/node_status/tests/test.yml b/roles/node_status/tests/test.yml deleted file mode 100644 index 0a18bd3..0000000 --- a/roles/node_status/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - node_status diff --git a/roles/resolv_conf/tests/inventory b/roles/resolv_conf/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/resolv_conf/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/resolv_conf/tests/test.yml b/roles/resolv_conf/tests/test.yml deleted file mode 100644 index 004ec38..0000000 --- a/roles/resolv_conf/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - resolv_conf diff --git a/roles/snmpd_conf/tests/inventory b/roles/snmpd_conf/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/snmpd_conf/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/snmpd_conf/tests/test.yml b/roles/snmpd_conf/tests/test.yml deleted file mode 100644 index 1d62978..0000000 --- a/roles/snmpd_conf/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - snmpd_conf diff --git a/roles/update_all_packages/tests/inventory b/roles/update_all_packages/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/update_all_packages/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/update_all_packages/tests/test.yml b/roles/update_all_packages/tests/test.yml deleted file mode 100644 index 568ff14..0000000 --- a/roles/update_all_packages/tests/test.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -- hosts: localhost - remote_user: root - roles: - - update_all_packages From aebaa0d348c973ab535c6d0cd3031c729c1e1d07 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 01:19:54 -0500 Subject: [PATCH 03/18] initial drone build test --- .drone.env | 3 +++ .drone.yml | 26 ++++++++++++++++++++++++++ ansible.cfg | 2 ++ roles/testing/README.md | 4 ++++ roles/testing/meta/main.yml | 29 +++++++++++++++++++++++++++++ roles/testing/tasks/main.yml | 7 +++++++ tests/unit-test.yml | 14 ++++++++++++++ 7 files changed, 85 insertions(+) create mode 100644 .drone.env create mode 100644 .drone.yml create mode 100644 ansible.cfg create mode 100644 roles/testing/README.md create mode 100644 roles/testing/meta/main.yml create mode 100644 roles/testing/tasks/main.yml create mode 100644 tests/unit-test.yml diff --git a/.drone.env b/.drone.env new file mode 100644 index 0000000..5116ab0 --- /dev/null +++ b/.drone.env @@ -0,0 +1,3 @@ +export ANSIBLE_LINT_EXCLUSION="--exclude .gitea" +export ANSIBLE_INVENTORY="-i 127.0.0.1, --connection=local" +export ANSIBLE_PLAYBOOK="baseos.yml" diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..cbdd57f --- /dev/null +++ b/.drone.yml @@ -0,0 +1,26 @@ +--- +kind: pipeline +type: docker +name: CentOS_9-Ansible-Pipeline + +trigger: + branch: + exclude: + - main + event: [push] + +steps: + - name: ansible_environment_verify + image: gitea.thezengarden.net/podman/ansible-dev/centos9:release + commands: + - . ./.drone.env + - env + - git log -1 + - ansible --version + - ansible-lint --version + + - name: ansible_lint + image: gitea.thezengarden.net/podman/ansible-dev/centos9:release + commands: + - . ./.drone.env + - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..fadf537 --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,2 @@ +[defaults] +roles_path = roles diff --git a/roles/testing/README.md b/roles/testing/README.md new file mode 100644 index 0000000..8352313 --- /dev/null +++ b/roles/testing/README.md @@ -0,0 +1,4 @@ +Role Name +========= + +A simple role to say hello to the world. diff --git a/roles/testing/meta/main.yml b/roles/testing/meta/main.yml new file mode 100644 index 0000000..12ab092 --- /dev/null +++ b/roles/testing/meta/main.yml @@ -0,0 +1,29 @@ +galaxy_info: + author: Chris Hammer + description: Simple default role to say hello world. + + license: GPL-2.0-or-later + + min_ansible_version: "2.14" + + platforms: + - name: Fedora + versions: + - all + + - name: EL + versions: + - "8" + - "9" + + galaxy_tags: [] + # List tags for your role here, one per line. A tag is a keyword that describes + # and categorizes the role. Users find roles by searching for tags. Be sure to + # remove the '[]' above, if you add tags to this list. + # + # NOTE: A tag is limited to a single word comprised of alphanumeric characters. + # Maximum 20 tags per role. + +dependencies: [] + # List your role dependencies here, one per line. Be sure to remove the '[]' above, + # if you add dependencies to this list. diff --git a/roles/testing/tasks/main.yml b/roles/testing/tasks/main.yml new file mode 100644 index 0000000..3b82f34 --- /dev/null +++ b/roles/testing/tasks/main.yml @@ -0,0 +1,7 @@ +--- +- name: Hello World. + ansible.builtin.debug: + msg: Hello world. + + +... diff --git a/tests/unit-test.yml b/tests/unit-test.yml new file mode 100644 index 0000000..b4ac657 --- /dev/null +++ b/tests/unit-test.yml @@ -0,0 +1,14 @@ +--- +- name: Test the role provided in extra_vars + hosts: all + become: false + gather_facts: true + + + tasks: + - name: Include role to test + ansible.builtin.include_role: + name: "{{ __test_role | default('testing') }}" + + +... From 08cfe9f87851d22bae2a406c3d32d140515a5f5a Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 02:59:04 -0500 Subject: [PATCH 04/18] Testing gitea actions again Add additional os's into drone test --- .drone.yml | 85 +++++++++++++++++++++++++++++++ .gitea/workflows/ansible-test.yml | 30 +++++++++++ 2 files changed, 115 insertions(+) create mode 100644 .gitea/workflows/ansible-test.yml diff --git a/.drone.yml b/.drone.yml index cbdd57f..c9de9f8 100644 --- a/.drone.yml +++ b/.drone.yml @@ -24,3 +24,88 @@ steps: commands: - . ./.drone.env - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + + +--- +kind: pipeline +type: docker +name: Fedora_39-Ansible-Pipeline + +trigger: + branch: + exclude: + - main + event: [push] + +steps: + - name: ansible_environment_verify + image: gitea.thezengarden.net/podman/ansible-dev/fedora39:release + commands: + - . ./.drone.env + - env + - git log -1 + - ansible --version + - ansible-lint --version + + - name: ansible_lint + image: gitea.thezengarden.net/podman/ansible-dev/fedora39:release + commands: + - . ./.drone.env + - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + + +--- +kind: pipeline +type: docker +name: Debian_11-Ansible-Pipeline + +trigger: + branch: + exclude: + - main + event: [push] + +steps: + - name: ansible_environment_verify + image: gitea.thezengarden.net/podman/ansible-dev/debian11:release + commands: + - . ./.drone.env + - env + - git log -1 + - ansible --version + - ansible-lint --version + + - name: ansible_lint + image: gitea.thezengarden.net/podman/ansible-dev/debian11:release + commands: + - . ./.drone.env + - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + + +--- +kind: pipeline +type: docker +name: Debian_12-Ansible-Pipeline + + +trigger: + branch: + exclude: + - main + event: [push] + +steps: + - name: ansible_environment_verify + image: gitea.thezengarden.net/podman/ansible-dev/debian12:release + commands: + - . ./.drone.env + - env + - git log -1 + - ansible --version + - ansible-lint --version + + - name: ansible_lint + image: gitea.thezengarden.net/podman/ansible-dev/debian12:release + commands: + - . ./.drone.env + - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION diff --git a/.gitea/workflows/ansible-test.yml b/.gitea/workflows/ansible-test.yml new file mode 100644 index 0000000..795f2c3 --- /dev/null +++ b/.gitea/workflows/ansible-test.yml @@ -0,0 +1,30 @@ +name: Ansible Code Pipeline +run-name: ${{ gitea.actor }} is running Ansible Code Pipeline +on: + push: + branches: + - testing + +jobs: + Ansible-Development-Pipeline: + strategy: + matrix: + os: [ ansible-dev-centos9, ansible-dev-fedora39, ansible-dev-debian11, ansible-dev-debian12 ] + runs-on: ${{ matrix.os }} + + steps: + - name: Clone repository + uses: actions/checkout@v3 + + - name: Ansible Environment Verify + run: | + . ./.drone.env + env + git log -1 + ansible --version + ansible-lint --version + + - name: Run Ansible-Lint + run: | + . ./.drone.env + ansible-lint --offline $ANSIBLE_LINT_EXCLUSION From 818187a484f405deb85d01c59268346b82acc59c Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 03:11:35 -0500 Subject: [PATCH 05/18] Ansible-lint compliance for roles/base_packages and slight restructuring --- roles/base_packages/defaults/main.yml | 10 ---------- roles/base_packages/tasks/main.yml | 12 ++++++------ roles/base_packages/vars/centos_7.yml | 2 +- roles/base_packages/vars/centos_8.yml | 2 +- roles/base_packages/vars/centos_9.yml | 2 +- roles/base_packages/vars/debian_11.yml | 2 +- .../{__default_packages.yml => default_packages.yml} | 2 +- roles/base_packages/vars/main.yml | 2 -- 8 files changed, 11 insertions(+), 23 deletions(-) delete mode 100644 roles/base_packages/defaults/main.yml rename roles/base_packages/vars/{__default_packages.yml => default_packages.yml} (94%) delete mode 100644 roles/base_packages/vars/main.yml diff --git a/roles/base_packages/defaults/main.yml b/roles/base_packages/defaults/main.yml deleted file mode 100644 index 26bcea3..0000000 --- a/roles/base_packages/defaults/main.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -__project_author : Chris Hammer -__project_email : chris@thezengarden.net -__project_repo : https://github.com/jchristianh-ansible-collections/baseos - - -__template_header : The Zen Garden - - -... diff --git a/roles/base_packages/tasks/main.yml b/roles/base_packages/tasks/main.yml index 3a7b7b8..3982b5c 100644 --- a/roles/base_packages/tasks/main.yml +++ b/roles/base_packages/tasks/main.yml @@ -2,18 +2,18 @@ - name: Include distribution specific variables or include defaults block: - name: Include distribution specific variables - include_vars: + ansible.builtin.include_vars: file: "{{ ansible_distribution | lower }}_{{ ansible_distribution_major_version }}.yml" rescue: - name: Non-supported distribution; using default package set - include_vars: - file: __default_packages.yml + ansible.builtin.include_vars: + file: default_packages.yml - name: Install EPEL for CentOS hosts - Required for some packages - package: + ansible.builtin.package: name : epel-release state : present when: @@ -21,8 +21,8 @@ - name: Install package set - package: - name : "{{ __base_packages }}" + ansible.builtin.package: + name : "{{ base_packages_package_set }}" state : present diff --git a/roles/base_packages/vars/centos_7.yml b/roles/base_packages/vars/centos_7.yml index 4436738..80f78e2 100644 --- a/roles/base_packages/vars/centos_7.yml +++ b/roles/base_packages/vars/centos_7.yml @@ -1,5 +1,5 @@ --- -__base_packages: +base_packages_package_set: - bc - bind-utils - bzip2 diff --git a/roles/base_packages/vars/centos_8.yml b/roles/base_packages/vars/centos_8.yml index 35952ca..f353814 100644 --- a/roles/base_packages/vars/centos_8.yml +++ b/roles/base_packages/vars/centos_8.yml @@ -1,5 +1,5 @@ --- -__base_packages: +base_packages_package_set: - bc - bind-utils - bzip2 diff --git a/roles/base_packages/vars/centos_9.yml b/roles/base_packages/vars/centos_9.yml index 9057f92..09d2e86 100644 --- a/roles/base_packages/vars/centos_9.yml +++ b/roles/base_packages/vars/centos_9.yml @@ -1,5 +1,5 @@ --- -__base_packages: +base_packages_package_set: - bc - bind-utils - bzip2 diff --git a/roles/base_packages/vars/debian_11.yml b/roles/base_packages/vars/debian_11.yml index f69e143..44b0c15 100644 --- a/roles/base_packages/vars/debian_11.yml +++ b/roles/base_packages/vars/debian_11.yml @@ -1,5 +1,5 @@ --- -__base_packages: +base_packages_package_set: - bc - bind9utils - bzip2 diff --git a/roles/base_packages/vars/__default_packages.yml b/roles/base_packages/vars/default_packages.yml similarity index 94% rename from roles/base_packages/vars/__default_packages.yml rename to roles/base_packages/vars/default_packages.yml index 2572d40..498e4af 100644 --- a/roles/base_packages/vars/__default_packages.yml +++ b/roles/base_packages/vars/default_packages.yml @@ -5,7 +5,7 @@ # Please adjust accordingly, or include a vars file matching the pattern: # _.yml -__base_packages: +base_packages_package_set: - bc - bzip2 - file diff --git a/roles/base_packages/vars/main.yml b/roles/base_packages/vars/main.yml deleted file mode 100644 index d02746f..0000000 --- a/roles/base_packages/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# vars file for base_packages From 24ecb46c309393a31cebed19961516f10afcdf53 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 03:23:00 -0500 Subject: [PATCH 06/18] Ansible-lint compliance for roles/bashrc Ansible-lint compliance for roles/etc_hosts --- roles/bashrc/tasks/main.yml | 4 ++-- roles/etc_hosts/defaults/main.yml | 14 +++++++------- roles/etc_hosts/tasks/main.yml | 10 +++++----- roles/etc_hosts/templates/.keep | 0 roles/etc_hosts/templates/etc_hosts.j2 | 14 +++++++------- 5 files changed, 21 insertions(+), 21 deletions(-) delete mode 100644 roles/etc_hosts/templates/.keep diff --git a/roles/bashrc/tasks/main.yml b/roles/bashrc/tasks/main.yml index c8ebb5a..c4e3f5d 100644 --- a/roles/bashrc/tasks/main.yml +++ b/roles/bashrc/tasks/main.yml @@ -1,9 +1,9 @@ --- - name: Deploy .bashrc - copy: + ansible.builtin.copy: src : files/bashrc dest : /root/.bashrc - mode : 0640 + mode : "0640" ... diff --git a/roles/etc_hosts/defaults/main.yml b/roles/etc_hosts/defaults/main.yml index 88fa1a7..0b02ea7 100644 --- a/roles/etc_hosts/defaults/main.yml +++ b/roles/etc_hosts/defaults/main.yml @@ -1,15 +1,15 @@ --- -__project_author : Chris Hammer -__project_email : chris@thezengarden.net -__project_repo : https://github.com/jchristianh-ansible-collections/baseos +etc_hosts_project_author : Chris Hammer +etc_hosts_project_email : chris@thezengarden.net +etc_hosts_project_repo : https://github.com/jchristianh-ansible-collections/baseos -__template_header : The Zen Garden +etc_hosts_template_header : The Zen Garden -__etc_hosts_file : /etc/hosts -__etc_hosts_version : 1.0.0 -__etc_hosts_revision : 22314 +etc_hosts_etc_hosts_file : /etc/hosts +etc_hosts_etc_hosts_version : 1.0.1 +etc_hosts_etc_hosts_revision : 231216 ... diff --git a/roles/etc_hosts/tasks/main.yml b/roles/etc_hosts/tasks/main.yml index a6b8e47..de63508 100644 --- a/roles/etc_hosts/tasks/main.yml +++ b/roles/etc_hosts/tasks/main.yml @@ -1,16 +1,16 @@ --- -- name: Set etc_hosts_file if running in Docker +- name: Set etc_hosts_etc_hosts_file if running in Docker set_fact: - __etc_hosts_file: "{{ __etc_hosts_file }}.docker" + etc_hosts_etc_hosts_file: "{{ etc_hosts_etc_hosts_file }}.docker" when: - ansible_virtualization_type | regex_search("docker|podman|container") -- name: Deploy {{ __etc_hosts_file }} +- name: Deploy {{ etc_hosts_etc_hosts_file }} template: src: templates/etc_hosts.j2 - dest: "{{ __etc_hosts_file }}" - mode: 0644 + dest: "{{ etc_hosts_etc_hosts_file }}" + mode: "0644" ... diff --git a/roles/etc_hosts/templates/.keep b/roles/etc_hosts/templates/.keep deleted file mode 100644 index e69de29..0000000 diff --git a/roles/etc_hosts/templates/etc_hosts.j2 b/roles/etc_hosts/templates/etc_hosts.j2 index e1e1d26..4bcaeff 100644 --- a/roles/etc_hosts/templates/etc_hosts.j2 +++ b/roles/etc_hosts/templates/etc_hosts.j2 @@ -1,11 +1,11 @@ ############################################### -# {{ __template_header }} +# {{ etc_hosts_template_header }} ############################################### # -# Configuration : {{ __etc_hosts_file }} -# Template Version : {{ __etc_hosts_version}}-{{ __etc_hosts_revision }} +# Configuration : {{ etc_hosts_etc_hosts_file }} +# Template Version : {{ etc_hosts_etc_hosts_version }}-{{ etc_hosts_etc_hosts_revision }} # -# {{ __project_author }} ({{ __project_email }}) +# {{ etc_hosts_project_author }} ({{ etc_hosts_project_email }}) ############################################### @@ -17,13 +17,13 @@ # OUR PERSONAL INFO ############################################# -{{ ansible_default_ipv4.address | default('127.0.0.1') }} {{ ansible_fqdn }} {{ ansible_hostname }} {{ inventory_hostname }} +{{ ansible_default_ipv4.address | default('127.0.0.1') }} {{ ansible_fqdn }} {{ ansible_hostname }} {{ inventory_hostname }} -{% if custom_hosts is defined and custom_hosts != '' %} +{% if etc_hosts_custom_hosts is defined and etc_hosts_custom_hosts != '' %} # CUSTOM HOSTS: ############################################# -{% for item in custom_hosts %} +{% for item in etc_hosts_custom_hosts %} {{ item }} {% endfor %} {% endif %} From 5b1b1732e23bcc1997ca7b3f4f92b69b8864a1f7 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 03:37:53 -0500 Subject: [PATCH 07/18] For CI ansible-lint does not need to output color. This should resolve the Gitea Actions output with no effect on Drone. --- .drone.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index c9de9f8..b310303 100644 --- a/.drone.yml +++ b/.drone.yml @@ -23,7 +23,7 @@ steps: image: gitea.thezengarden.net/podman/ansible-dev/centos9:release commands: - . ./.drone.env - - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + - ansible-lint --offline --nocolor $ANSIBLE_LINT_EXCLUSION --- @@ -51,7 +51,7 @@ steps: image: gitea.thezengarden.net/podman/ansible-dev/fedora39:release commands: - . ./.drone.env - - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + - ansible-lint --offline --nocolor $ANSIBLE_LINT_EXCLUSION --- @@ -79,7 +79,7 @@ steps: image: gitea.thezengarden.net/podman/ansible-dev/debian11:release commands: - . ./.drone.env - - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + - ansible-lint --offline --nocolor $ANSIBLE_LINT_EXCLUSION --- @@ -108,4 +108,4 @@ steps: image: gitea.thezengarden.net/podman/ansible-dev/debian12:release commands: - . ./.drone.env - - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + - ansible-lint --offline --nocolor $ANSIBLE_LINT_EXCLUSION From 97833a546770a60e68b891a1276fc2da84dfc1bb Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 16 Dec 2023 03:39:36 -0500 Subject: [PATCH 08/18] It would help, however, if I updated the workflow file. --- .gitea/workflows/ansible-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/ansible-test.yml b/.gitea/workflows/ansible-test.yml index 795f2c3..601a3aa 100644 --- a/.gitea/workflows/ansible-test.yml +++ b/.gitea/workflows/ansible-test.yml @@ -27,4 +27,4 @@ jobs: - name: Run Ansible-Lint run: | . ./.drone.env - ansible-lint --offline $ANSIBLE_LINT_EXCLUSION + ansible-lint --offline --nocolor $ANSIBLE_LINT_EXCLUSION From 4d045d0c21e6d3600a244324886b96012b99a823 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sun, 17 Dec 2023 01:06:29 -0500 Subject: [PATCH 09/18] Ansible-lint compliance for roles/resolv_conf --- roles/resolv_conf/defaults/main.yml | 19 +++++++++---------- roles/resolv_conf/tasks/main.yml | 8 ++++---- roles/resolv_conf/templates/.keep | 0 roles/resolv_conf/templates/resolv_conf.j2 | 12 ++++++------ 4 files changed, 19 insertions(+), 20 deletions(-) delete mode 100644 roles/resolv_conf/templates/.keep diff --git a/roles/resolv_conf/defaults/main.yml b/roles/resolv_conf/defaults/main.yml index fd253c3..1312bef 100644 --- a/roles/resolv_conf/defaults/main.yml +++ b/roles/resolv_conf/defaults/main.yml @@ -1,20 +1,19 @@ --- -__project_author : Chris Hammer -__project_email : chris@thezengarden.net -__project_repo : https://github.com/jchristianh-ansible-collections/baseos +resolv_conf_project_author : Chris Hammer +resolv_conf_project_email : chris@thezengarden.net +resolv_conf_project_repo : https://github.com/jchristianh-ansible-collections/baseos -__template_header : The Zen Garden +resolv_conf_template_header : The Zen Garden -__resolv_conf_file : /etc/resolv.conf -__resolv_conf_file_docker : /etc/resolv.conf.docker -__resolv_conf_version : 1.0.1 -__resolv_conf_revision : 221007 +resolv_conf_resolv_conf_file : /etc/resolv.conf +resolv_conf_resolv_conf_version : 1.0.1 +resolv_conf_resolv_conf_revision : 221007 -__search_domain : thezengarden.net -__nameservers : +resolv_conf_search_domain : thezengarden.net +resolv_conf_nameservers : - 10.10.10.55 - 10.1.1.15 diff --git a/roles/resolv_conf/tasks/main.yml b/roles/resolv_conf/tasks/main.yml index 9b2116b..70b2e0f 100644 --- a/roles/resolv_conf/tasks/main.yml +++ b/roles/resolv_conf/tasks/main.yml @@ -1,15 +1,15 @@ --- -- name: Set resolv_conf_file if running in Docker +- name: Set resolv_conf_file if running in container ansible.builtin.set_fact: - __resolv_conf_file: "{{ __resolv_conf_file_docker }}" + __resolv_conf_file: "{{ resolv_conf_resolv_conf_file }}.docker" when: - ansible_virtualization_type | regex_search("docker|podman|container") -- name: Deploy {{ __resolv_conf_file }} +- name: Deploy {{ resolv_conf_resolv_conf_file }} ansible.builtin.template: src: templates/resolv_conf.j2 - dest: "{{ __resolv_conf_file }}" + dest: "{{ resolv_conf_resolv_conf_file }}" mode: "0644" diff --git a/roles/resolv_conf/templates/.keep b/roles/resolv_conf/templates/.keep deleted file mode 100644 index e69de29..0000000 diff --git a/roles/resolv_conf/templates/resolv_conf.j2 b/roles/resolv_conf/templates/resolv_conf.j2 index e078f86..f90c211 100644 --- a/roles/resolv_conf/templates/resolv_conf.j2 +++ b/roles/resolv_conf/templates/resolv_conf.j2 @@ -1,15 +1,15 @@ -# {{ __template_header }} +# {{ resolv_conf_template_header }} ############################################### # -# Configuration : {{ __resolv_conf_file }} -# Template Version : {{ __resolv_conf_version}}-{{ __resolv_conf_revision }} +# Configuration : {{ resolv_conf_resolv_conf_file }} +# Template Version : {{ __resolv_confresolv_conf_resolv_conf_version_version}}-{{ resolv_conf_resolv_conf_revision }} # -# {{ __project_author }} ({{ __project_email }}) +# {{ resolv_conf_project_author }} ({{ resolv_conf_project_email }}) ############################################### -search {{ __search_domain }} -{% for item in __nameservers %} +search {{ resolv_conf_search_domain }} +{% for item in resolv_conf_nameservers %} nameserver {{ item }} {% endfor %} From 795c85cc73592431fcb5fc5f72777af441b26251 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sun, 17 Dec 2023 01:17:21 -0500 Subject: [PATCH 10/18] Ansible-lint compliance for roles/resolv_conf, FIX --- roles/resolv_conf/templates/resolv_conf.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/resolv_conf/templates/resolv_conf.j2 b/roles/resolv_conf/templates/resolv_conf.j2 index f90c211..74c9b96 100644 --- a/roles/resolv_conf/templates/resolv_conf.j2 +++ b/roles/resolv_conf/templates/resolv_conf.j2 @@ -2,7 +2,7 @@ ############################################### # # Configuration : {{ resolv_conf_resolv_conf_file }} -# Template Version : {{ __resolv_confresolv_conf_resolv_conf_version_version}}-{{ resolv_conf_resolv_conf_revision }} +# Template Version : {{ resolv_conf_resolv_conf_version_version}}-{{ resolv_conf_resolv_conf_revision }} # # {{ resolv_conf_project_author }} ({{ resolv_conf_project_email }}) ############################################### From a8b66b12e09b37b27b68e3091ccf98755b55a208 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sun, 17 Dec 2023 01:19:04 -0500 Subject: [PATCH 11/18] Ansible-lint compliance for roles/resolv_conf, FIX 2 --- roles/resolv_conf/templates/resolv_conf.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/resolv_conf/templates/resolv_conf.j2 b/roles/resolv_conf/templates/resolv_conf.j2 index 74c9b96..d28ea05 100644 --- a/roles/resolv_conf/templates/resolv_conf.j2 +++ b/roles/resolv_conf/templates/resolv_conf.j2 @@ -2,7 +2,7 @@ ############################################### # # Configuration : {{ resolv_conf_resolv_conf_file }} -# Template Version : {{ resolv_conf_resolv_conf_version_version}}-{{ resolv_conf_resolv_conf_revision }} +# Template Version : {{ resolv_conf_resolv_conf_version }}-{{ resolv_conf_resolv_conf_revision }} # # {{ resolv_conf_project_author }} ({{ resolv_conf_project_email }}) ############################################### From d96e6bf9e151d39cd8082a1bbb2e507f9aa65d32 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 20 Dec 2023 02:58:55 -0500 Subject: [PATCH 12/18] change ansible requirement to trigger build --- meta/runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/runtime.yml b/meta/runtime.yml index 1205f86..4f8988b 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -1,2 +1,2 @@ --- -requires_ansible: ">=2.14" +requires_ansible: ">=2.10" From 189bea6c7d1da23ffbe8053ed87ac8634e59e754 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 20 Dec 2023 03:02:18 -0500 Subject: [PATCH 13/18] Ansible-lint compliance for roles/update_all_packages, FIX 2 --- roles/update_all_packages/tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/roles/update_all_packages/tasks/main.yml b/roles/update_all_packages/tasks/main.yml index 66d25e8..55d5674 100644 --- a/roles/update_all_packages/tasks/main.yml +++ b/roles/update_all_packages/tasks/main.yml @@ -1,7 +1,7 @@ --- - name: Update package cache for Debian hosts apt: - update_cache: yes + update_cache: true when: - ansible_distribution|lower == 'debian' tags: @@ -10,7 +10,7 @@ - name: Update package cache for RHEL/CentOS/Fedora hosts dnf: - update_cache: yes + update_cache: true when: - (ansible_distribution|lower == 'centos' or ansible_distribution|lower == 'fedora' or From e51d124198e67e9523bec40b7603b0bcd843120d Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 20 Dec 2023 22:31:05 -0500 Subject: [PATCH 14/18] Ansible-lint compliance for galaxy.yml and meta/runtime.yml --- .ansible-lint | 1 + galaxy.yml | 11 ++++++----- meta/runtime.yml | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.ansible-lint b/.ansible-lint index b6d3809..f60fd2b 100644 --- a/.ansible-lint +++ b/.ansible-lint @@ -3,3 +3,4 @@ skip_list: - yaml[empty-lines] - yaml[line-length] - no-changed-when + - galaxy[no-changelog] diff --git a/galaxy.yml b/galaxy.yml index 193a20c..7216e64 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -8,7 +8,7 @@ namespace: jchristianh name: baseos # The version of the collection. Must be compatible with semantic versioning -version: 1.0.19 +version: 1.0.20 # The path to the Markdown (.md) readme file. This path is relative to the root of the collection readme: README.md @@ -16,7 +16,7 @@ readme: README.md # A list of the collection's content authors. Can be just the name or in the format 'Full Name (url) # @nicks:irc/im.site#channel' authors: -- Chris Hammer + - Chris Hammer ### OPTIONAL but strongly recommended @@ -25,8 +25,8 @@ description: A collection of roles to manage your environment. # Either a single license or a list of licenses for content inside of a collection. Ansible Galaxy currently only # accepts L(SPDX,https://spdx.org/licenses/) licenses. This key is mutually exclusive with 'license_file' -#license: -#- GPL-2.0-or-later +# license: +# - GPL-2.0-or-later # The path to the license file for the collection. This path is relative to the root of the collection. This key is # mutually exclusive with 'license' @@ -34,7 +34,8 @@ license_file: 'LICENSE' # A list of tags you want to associate with the collection for indexing/searching. A tag name has the same character # requirements as 'namespace' and 'name' -tags: [] +tags: + - linux # Collections that this collection requires to be installed for it to be usable. The key of the dict is the # collection label 'namespace.name'. The value is a version range diff --git a/meta/runtime.yml b/meta/runtime.yml index 4f8988b..ce6befd 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -1,2 +1,2 @@ --- -requires_ansible: ">=2.10" +requires_ansible: ">=2.14.0" From c8ffa1011b8895dda956455b4530d5b092b2a62a Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Fri, 22 Dec 2023 00:05:22 -0500 Subject: [PATCH 15/18] var fix for roles/resolv_conf --- roles/resolv_conf/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/resolv_conf/tasks/main.yml b/roles/resolv_conf/tasks/main.yml index 70b2e0f..be83abc 100644 --- a/roles/resolv_conf/tasks/main.yml +++ b/roles/resolv_conf/tasks/main.yml @@ -1,7 +1,7 @@ --- - name: Set resolv_conf_file if running in container ansible.builtin.set_fact: - __resolv_conf_file: "{{ resolv_conf_resolv_conf_file }}.docker" + resolv_conf_resolv_conf_file: "{{ resolv_conf_resolv_conf_file }}.docker" when: - ansible_virtualization_type | regex_search("docker|podman|container") From c5e6681e6d80f96dff07edf66a0941e3f3b8b731 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 23 Dec 2023 00:38:28 -0500 Subject: [PATCH 16/18] Ansible-lint compliance for roles/etc_hosts, roles/hostname, and roles/motd --- roles/etc_hosts/tasks/main.yml | 4 ++-- roles/hostname/handlers/main.yml | 36 ++++++++++++++++---------------- roles/hostname/tasks/main.yml | 4 ++-- roles/motd/defaults/main.yml | 13 +----------- roles/motd/tasks/main.yml | 12 +++++------ roles/motd/templates/.keep | 0 6 files changed, 29 insertions(+), 40 deletions(-) delete mode 100644 roles/motd/templates/.keep diff --git a/roles/etc_hosts/tasks/main.yml b/roles/etc_hosts/tasks/main.yml index de63508..c296933 100644 --- a/roles/etc_hosts/tasks/main.yml +++ b/roles/etc_hosts/tasks/main.yml @@ -1,13 +1,13 @@ --- - name: Set etc_hosts_etc_hosts_file if running in Docker - set_fact: + ansible.builtin.set_fact: etc_hosts_etc_hosts_file: "{{ etc_hosts_etc_hosts_file }}.docker" when: - ansible_virtualization_type | regex_search("docker|podman|container") - name: Deploy {{ etc_hosts_etc_hosts_file }} - template: + ansible.builtin.template: src: templates/etc_hosts.j2 dest: "{{ etc_hosts_etc_hosts_file }}" mode: "0644" diff --git a/roles/hostname/handlers/main.yml b/roles/hostname/handlers/main.yml index ba3bb12..3eb198f 100644 --- a/roles/hostname/handlers/main.yml +++ b/roles/hostname/handlers/main.yml @@ -1,46 +1,46 @@ --- -- name: restart_syslog_centos_7 - service: +- name: Restart_syslog_centos_7 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_centos_8 - service: +- name: Restart_syslog_centos_8 + ansible.builtin.service: name : syslog state : restarted -- name: restart_syslog_centos_9 - service: +- name: Restart_syslog_centos_9 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_redhat_8 - service: +- name: Restart_syslog_redhat_8 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_redhat_9 - service: +- name: Restart_syslog_redhat_9 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_debian_11 - service: +- name: Restart_syslog_debian_11 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_debian_12 - service: +- name: Restart_syslog_debian_12 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_fedora_35 - service: +- name: Restart_syslog_fedora_35 + ansible.builtin.service: name : rsyslog state : restarted -- name: restart_syslog_fedora_38 - service: +- name: Restart_syslog_fedora_38 + ansible.builtin.service: name : rsyslog state : started diff --git a/roles/hostname/tasks/main.yml b/roles/hostname/tasks/main.yml index 89d79f3..21984cb 100644 --- a/roles/hostname/tasks/main.yml +++ b/roles/hostname/tasks/main.yml @@ -1,9 +1,9 @@ --- - name: Set hostname for host - hostname: + ansible.builtin.hostname: name: "{{ inventory_hostname }}" notify: - - "restart_syslog_{{ ansible_distribution | lower }}_{{ ansible_distribution_major_version }}" + - "Restart_syslog_{{ ansible_distribution | lower }}_{{ ansible_distribution_major_version }}" ... diff --git a/roles/motd/defaults/main.yml b/roles/motd/defaults/main.yml index ae0b4be..497e09c 100644 --- a/roles/motd/defaults/main.yml +++ b/roles/motd/defaults/main.yml @@ -1,16 +1,5 @@ --- -__project_author : Chris Hammer -__project_email : chris@thezengarden.net -__project_repo : https://github.com/jchristianh-ansible-collections/baseos - - -__template_header : The Zen Garden - - -__motd_file : /etc/motd -__motd_file_docker : /etc/motd -__motd_version : 1.0.0 -__motd_revision : 22318 +motd_motd_file : /etc/motd ... diff --git a/roles/motd/tasks/main.yml b/roles/motd/tasks/main.yml index 43ab06f..3c0a65c 100644 --- a/roles/motd/tasks/main.yml +++ b/roles/motd/tasks/main.yml @@ -1,27 +1,27 @@ --- - name: Set host IP address or set a default - set_fact: + ansible.builtin.set_fact: host_ip : "{{ ansible_default_ipv4.address | default('127.0.0.1') }}" - name: Install Perl if needed - package: + ansible.builtin.package: name : perl state : present - name: Get system uptime from script - script: + ansible.builtin.script: cmd : "scripts/get_uptime.pl {{ ansible_uptime_seconds }}" register : node_uptime changed_when : false - name: Update MOTD - template: + ansible.builtin.template: src : templates/motd.j2 - dest : "{{ __motd_file }}" - mode : 0644 + dest : "{{ motd_motd_file }}" + mode : "0644" changed_when : false diff --git a/roles/motd/templates/.keep b/roles/motd/templates/.keep deleted file mode 100644 index e69de29..0000000 From 04b10864dc0f56b5a6f7c3b952f08419c6fcbf47 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Sat, 23 Dec 2023 01:03:58 -0500 Subject: [PATCH 17/18] Ansible-lint compliance for roles/snmpd_conf --- roles/snmpd_conf/defaults/main.yml | 22 ++++++------ roles/snmpd_conf/tasks/main.yml | 35 +++++++++----------- roles/snmpd_conf/templates/snmpd_conf.j2 | 12 +++---- roles/snmpd_conf/vars/__default_packages.yml | 5 --- roles/snmpd_conf/vars/centos_7.yml | 5 --- roles/snmpd_conf/vars/centos_8.yml | 5 --- roles/snmpd_conf/vars/centos_9.yml | 5 --- roles/snmpd_conf/vars/debian_11.yml | 5 --- roles/snmpd_conf/vars/debian_12.yml | 5 --- roles/snmpd_conf/vars/fedora_39.yml | 5 --- 10 files changed, 32 insertions(+), 72 deletions(-) delete mode 100644 roles/snmpd_conf/vars/__default_packages.yml delete mode 100644 roles/snmpd_conf/vars/centos_7.yml delete mode 100644 roles/snmpd_conf/vars/centos_8.yml delete mode 100644 roles/snmpd_conf/vars/centos_9.yml delete mode 100644 roles/snmpd_conf/vars/debian_11.yml delete mode 100644 roles/snmpd_conf/vars/debian_12.yml delete mode 100644 roles/snmpd_conf/vars/fedora_39.yml diff --git a/roles/snmpd_conf/defaults/main.yml b/roles/snmpd_conf/defaults/main.yml index 8a14d4b..3fbb130 100644 --- a/roles/snmpd_conf/defaults/main.yml +++ b/roles/snmpd_conf/defaults/main.yml @@ -1,23 +1,23 @@ --- -__project_author : Chris Hammer -__project_email : chris@thezengarden.net -__project_repo : https://github.com/jchristianh-ansible-collections/baseos +snmpd_conf_project_author : Chris Hammer +snmpd_conf_project_email : chris@thezengarden.net +snmpd_conf_project_repo : https://github.com/jchristianh-ansible-collections/baseos -__template_header : The Zen Garden +snmpd_conf_template_header : The Zen Garden -__snmpd_conf_file : /etc/snmp/snmpd.conf -__snmpd_conf_version : 1.0.1 -__snmpd_conf_revision : 231210 +snmpd_conf_snmpd_conf_file : /etc/snmp/snmpd.conf +snmpd_conf_snmpd_conf_version : 1.0.1 +snmpd_conf_snmpd_conf_revision : 231210 -__snmp_pkg : net-snmp +snmpd_conf_snmp_pkg : net-snmp -__snmpd_location : 'Newport News, VA' -__snmpd_contact_name : 'Chris Hammer' -__snmpd_contact_email : '' +snmpd_conf_snmpd_location : 'Newport News, VA' +snmpd_conf_snmpd_contact_name : 'Chris Hammer' +snmpd_conf_snmpd_contact_email : '' ... diff --git a/roles/snmpd_conf/tasks/main.yml b/roles/snmpd_conf/tasks/main.yml index 91f6e4c..601d5b1 100644 --- a/roles/snmpd_conf/tasks/main.yml +++ b/roles/snmpd_conf/tasks/main.yml @@ -1,40 +1,35 @@ --- -- name: Include distribution specific variables or include defaults - block: - - name: Include distribution specific variables - include_vars: - file: "{{ ansible_distribution | lower }}_{{ ansible_distribution_major_version }}.yml" - - - rescue: - - name: Non-supported distribution; using default package set - include_vars: - file: __default_packages.yml - - - name: Deploy and configure SNMP block: + - name: Set package name for Debian 12 + ansible.builtin.set_fact: + snmpd_conf_snmp_pkg: snmpd + when: + - ansible_distribution | lower == 'debian' + - ansible_distribution_major_version == '12' + - name: Install SNMP - package: - name: "{{ __snmp_pkg }}" + ansible.builtin.package: + name: "{{ snmpd_conf_snmp_pkg }}" state: present - name: Ensure /etc/snmp directory is present - file: + ansible.builtin.file: path: /etc/snmp state: directory + mode: "0755" - name: Deploy snmpd.conf - template: + ansible.builtin.template: src: templates/snmpd_conf.j2 - dest: "{{ __snmpd_conf_file }}" - mode: 0644 + dest: "{{ snmpd_conf_snmpd_conf_file }}" + mode: "0644" notify: Restart_SNMPd rescue: - name: Unable to deploy SNMP - debug: + ansible.builtin.debug: msg: "Unable to deploy SNMP to {{ inventory_hostname }}." diff --git a/roles/snmpd_conf/templates/snmpd_conf.j2 b/roles/snmpd_conf/templates/snmpd_conf.j2 index 1d01231..8833dc0 100644 --- a/roles/snmpd_conf/templates/snmpd_conf.j2 +++ b/roles/snmpd_conf/templates/snmpd_conf.j2 @@ -1,11 +1,11 @@ ############################################### -# {{ __template_header }} +# {{ snmpd_conf_template_header }} ############################################### # -# Configuration : {{ __snmpd_conf_file }} -# Template Version : {{ __snmpd_conf_version}}-{{ __snmpd_conf_revision }} +# Configuration : {{ snmpd_conf_snmpd_conf_file }} +# Template Version : {{ snmpd_conf_snmpd_conf_version }}-{{ snmpd_conf_snmpd_conf_revision }} # -# {{ __project_author }} ({{ __project_email }}) +# {{ snmpd_conf_project_author }} ({{ snmpd_conf_project_email }}) ############################################### @@ -33,6 +33,6 @@ access MyRWGroup "" any noauth exact all all none ############################################################################### # System contact information # -syslocation {{ __snmpd_location }} -syscontact {{ __snmpd_contact_name }} {{ __snmpd_contact_email }} +syslocation {{ snmpd_conf_snmpd_location }} +syscontact {{ snmpd_conf_snmpd_contact_name }} {{ snmpd_conf_snmpd_contact_email }} # ----------------------------------------------------------------------------- diff --git a/roles/snmpd_conf/vars/__default_packages.yml b/roles/snmpd_conf/vars/__default_packages.yml deleted file mode 100644 index 6666f66..0000000 --- a/roles/snmpd_conf/vars/__default_packages.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: net-snmp - - -... diff --git a/roles/snmpd_conf/vars/centos_7.yml b/roles/snmpd_conf/vars/centos_7.yml deleted file mode 100644 index 6666f66..0000000 --- a/roles/snmpd_conf/vars/centos_7.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: net-snmp - - -... diff --git a/roles/snmpd_conf/vars/centos_8.yml b/roles/snmpd_conf/vars/centos_8.yml deleted file mode 100644 index 6666f66..0000000 --- a/roles/snmpd_conf/vars/centos_8.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: net-snmp - - -... diff --git a/roles/snmpd_conf/vars/centos_9.yml b/roles/snmpd_conf/vars/centos_9.yml deleted file mode 100644 index 6666f66..0000000 --- a/roles/snmpd_conf/vars/centos_9.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: net-snmp - - -... diff --git a/roles/snmpd_conf/vars/debian_11.yml b/roles/snmpd_conf/vars/debian_11.yml deleted file mode 100644 index a47b044..0000000 --- a/roles/snmpd_conf/vars/debian_11.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: snmpd - - -... diff --git a/roles/snmpd_conf/vars/debian_12.yml b/roles/snmpd_conf/vars/debian_12.yml deleted file mode 100644 index a47b044..0000000 --- a/roles/snmpd_conf/vars/debian_12.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: snmpd - - -... diff --git a/roles/snmpd_conf/vars/fedora_39.yml b/roles/snmpd_conf/vars/fedora_39.yml deleted file mode 100644 index 6666f66..0000000 --- a/roles/snmpd_conf/vars/fedora_39.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -__snmp_pkg: net-snmp - - -... From e5910f073d6fa9e6a118f218770cca1e7c9a27a8 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Mon, 1 Jan 2024 23:10:37 -0500 Subject: [PATCH 18/18] update ansible version requirement --- meta/runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/runtime.yml b/meta/runtime.yml index ce6befd..1e85b01 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -1,2 +1,2 @@ --- -requires_ansible: ">=2.14.0" +requires_ansible: ">=2.15.0"