diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7e2bc34..d204d7b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,14 +44,15 @@ jobs: fail-fast: false matrix: include: - - distro: debian8 - - distro: debian9 - distro: debian10 - - distro: ubuntu1604 - ansible-version: '>=2.10, <2.11' - - distro: ubuntu1604 + ansible-version: '>=9, <10' + - distro: debian11 + - distro: debian12 - distro: ubuntu1804 + ansible-version: '>=9, <10' - distro: ubuntu2004 + - distro: ubuntu2204 + - distro: ubuntu2404 steps: - name: Check out the codebase @@ -65,8 +66,8 @@ jobs: python-version: '3.x' - name: Install test dependencies - run: pip install 'ansible${{ matrix.ansible-version }}' molecule-plugins[docker] docker - + run: | + pip install 'ansible${{ matrix.ansible-version }}' molecule-plugins[docker] docker - name: Run Molecule tests run: | molecule test diff --git a/README.md b/README.md index 6dafeed..d0c5979 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,8 @@ on **Ubuntu** this package is in **multiverse**. See the *"Recommended"* section * `snmpd_disks.{n}.path`: [required]: The disks mountpoint (e.g. `/`) * `snmpd_disks.{n}.threshold`: [required]: The disks minimum threshold either be specified in kB (MINSPACE) or as a percentage of the total disk (MINPERCENT% with a '%' character) (e.g. `10%`) +* `snmpd_load` [optional]: Unacceptable `1`, `5` and `15`-minute load averages (e.g. `12 10 5`) + * `snmpd_default_monitors` [default: `true`]: Configure the Event `MIB` tables to monitor the various `UCD-SNMP-MIB` tables for problems * `snmpd_link_up_down_notifications` [default: `true`]: Configure the Event `MIB` tables to monitor the `fTable` for network interfaces being taken up or down, and triggering a `linkUp` or `linkDown` notification as appropriate diff --git a/Vagrantfile b/Vagrantfile index a0182a0..e86d32d 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -4,13 +4,6 @@ role = File.basename(File.expand_path(File.dirname(__FILE__))) boxes = [ - { - :name => "ubuntu-1604", - :box => "bento/ubuntu-16.04", - :ip => '10.0.0.12', - :cpu => "50", - :ram => "256" - }, { :name => "ubuntu-1804", :box => "bento/ubuntu-18.04", @@ -23,21 +16,21 @@ boxes = [ :box => "bento/ubuntu-20.04", :ip => '10.0.0.14', :cpu => "50", - :ram => "384" + :ram => "512" }, { - :name => "debian-8", - :box => "bento/debian-8", - :ip => '10.0.0.16', + :name => "ubuntu-2204", + :box => "bento/ubuntu-22.04", + :ip => '10.0.0.15', :cpu => "50", - :ram => "256" + :ram => "512" }, { - :name => "debian-9", - :box => "bento/debian-9", - :ip => '10.0.0.17', + :name => "ubuntu-2404", + :box => "bento/ubuntu-24.04", + :ip => '10.0.0.16', :cpu => "50", - :ram => "256" + :ram => "512" }, { :name => "debian-10", @@ -46,6 +39,20 @@ boxes = [ :cpu => "50", :ram => "256" }, + { + :name => "debian-11", + :box => "bento/debian-11", + :ip => '10.0.0.19', + :cpu => "50", + :ram => "256" + }, + { + :name => "debian-12", + :box => "bento/debian-12", + :ip => '10.0.0.20', + :cpu => "50", + :ram => "384" + }, ] Vagrant.configure("2") do |config| diff --git a/meta/main.yml b/meta/main.yml index 22202ba..c06b47b 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -1,9 +1,8 @@ # meta file --- galaxy_info: - namespace: oefenweb + author: oefenweb role_name: snmpd - author: Mischa ter Smitten company: Oefenweb.nl B.V. description: Set up snmp(d) in Debian-like systems license: MIT @@ -11,14 +10,15 @@ galaxy_info: platforms: - name: Ubuntu versions: - - xenial - bionic - focal + - jammy + - noble - name: Debian versions: - - jessie - - stretch - buster + - bullseye + - bookworm galaxy_tags: - system dependencies: [] diff --git a/molecule/default/collections.yml b/molecule/default/collections.yml index c3d7e2a..1062b36 100644 --- a/molecule/default/collections.yml +++ b/molecule/default/collections.yml @@ -1,6 +1,2 @@ --- -collections: - - name: community.docker - version: '>=1.2.0,<2' - - name: community.general - version: '>=2,<3' +collections: [] diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml index 8841165..908aaf6 100644 --- a/molecule/default/molecule.yml +++ b/molecule/default/molecule.yml @@ -5,7 +5,7 @@ driver: name: docker platforms: - name: instance - image: "geerlingguy/docker-${MOLECULE_DISTRO:-ubuntu1604}-ansible:latest" + image: "geerlingguy/docker-${MOLECULE_DISTRO:-ubuntu2004}-ansible:latest" command: ${MOLECULE_DOCKER_COMMAND:-""} volumes: - /sys/fs/cgroup:/sys/fs/cgroup:rw diff --git a/molecule/default/prepare.yml b/molecule/default/prepare.yml index c6f4ce8..4e9fc84 100644 --- a/molecule/default/prepare.yml +++ b/molecule/default/prepare.yml @@ -2,7 +2,7 @@ - name: Prepare hosts: all become: true - pre_tasks: + tasks: - name: include vars ansible.builtin.include_vars: "{{ playbook_dir }}/../../tests/vars/main.yml" - name: include tasks diff --git a/tasks/main.yml b/tasks/main.yml index d20dffc..73bc9ed 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -26,7 +26,7 @@ dest: /etc/default/snmpd owner: root group: root - mode: 0644 + mode: '0644' notify: restart snmpd tags: - configuration @@ -39,7 +39,7 @@ dest: /etc/snmp/snmpd.conf owner: root group: root - mode: 0600 + mode: '0600' notify: restart snmpd tags: - configuration diff --git a/templates/etc/snmp/snmpd.conf.j2 b/templates/etc/snmp/snmpd.conf.j2 index 8ebe0cc..e179ca8 100644 --- a/templates/etc/snmp/snmpd.conf.j2 +++ b/templates/etc/snmp/snmpd.conf.j2 @@ -31,6 +31,9 @@ includeAllDisks {{ snmpd_disks_include_all_threshold_minpercent }} {% for snmpd_disk in snmpd_disks %} disk {{ snmpd_disk.path }} {{ snmpd_disk.threshold }} {% endfor %} +{% if snmpd_load is defined %} +load {{ snmpd_load }} +{% endif %} defaultMonitors {{ 'yes' if snmpd_default_monitors else 'no' }} linkUpDownNotifications {{ 'yes' if snmpd_link_up_down_notifications else 'no' }} diff --git a/tests/test.yml b/tests/test.yml index 00a505a..4ffa775 100644 --- a/tests/test.yml +++ b/tests/test.yml @@ -1,6 +1,7 @@ # tests file for snmpd --- -- hosts: localhost +- name: converge + hosts: localhost connection: local become: true pre_tasks: diff --git a/tests/vagrant.yml b/tests/vagrant.yml index a30a990..a25af9e 100644 --- a/tests/vagrant.yml +++ b/tests/vagrant.yml @@ -1,6 +1,7 @@ # test file --- -- hosts: all +- name: converge + hosts: all remote_user: vagrant become: true pre_tasks: