From 25f3545bbe3aa407837bc4e56ba9358550632563 Mon Sep 17 00:00:00 2001 From: AnsibleRoles <> Date: Fri, 22 Nov 2019 03:27:31 +0000 Subject: [PATCH 01/34] Initial commit --- .gitignore | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 2 ++ 2 files changed, 99 insertions(+) create mode 100644 .gitignore create mode 100644 README.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ce59d0b --- /dev/null +++ b/.gitignore @@ -0,0 +1,97 @@ +# ---> Ansible +*.retry + +# ---> Windows +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# ---> macOS +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# ---> Linux +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +# ---> Vim +# Swap +[._]*.s[a-v][a-z] +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + +# ---> VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + diff --git a/README.md b/README.md new file mode 100644 index 0000000..4cb023c --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# ensure_os_patch + From 73256203ccea2cfe0e09966c9e1b60d261390e09 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Thu, 21 Nov 2019 21:35:13 -0600 Subject: [PATCH 02/34] Ensure OS Patch --- .travis.yml | 29 ++++++++++++++++++++++++++ README.md | 38 ++++++++++++++++++++++++++++++++- defaults/main.yml | 2 ++ handlers/main.yml | 7 +++++++ meta/main.yml | 53 +++++++++++++++++++++++++++++++++++++++++++++++ tasks/main.yml | 25 ++++++++++++++++++++++ tests/inventory | 2 ++ tests/test.yml | 5 +++++ vars/main.yml | 2 ++ 9 files changed, 162 insertions(+), 1 deletion(-) create mode 100644 .travis.yml create mode 100644 defaults/main.yml create mode 100644 handlers/main.yml create mode 100644 meta/main.yml create mode 100644 tasks/main.yml create mode 100644 tests/inventory create mode 100644 tests/test.yml create mode 100644 vars/main.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..36bbf62 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,29 @@ +--- +language: python +python: "2.7" + +# Use the new container infrastructure +sudo: false + +# Install ansible +addons: + apt: + packages: + - python-pip + +install: + # Install ansible + - pip install ansible + + # Check ansible version + - ansible --version + + # Create ansible.cfg with correct roles_path + - printf '[defaults]\nroles_path=../' >ansible.cfg + +script: + # Basic role syntax check + - ansible-playbook tests/test.yml -i tests/inventory --syntax-check + +notifications: + webhooks: https://galaxy.ansible.com/api/v1/notifications/ \ No newline at end of file diff --git a/README.md b/README.md index 4cb023c..5eef1c7 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,38 @@ -# ensure_os_patch +Role Name +========= +Ensure OS is patched + +Requirements +------------ + +Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required. + +Role Variables +-------------- + +A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well. + +Dependencies +------------ + +A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles. + +Example Playbook +---------------- + +Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: + + - hosts: servers + roles: + - { role: username.rolename, x: 42 } + +License +------- + +LGPL >= 3 + +Author Information +------------------ + +An optional section for the role authors to include contact information, or a website (HTML is not allowed). diff --git a/defaults/main.yml b/defaults/main.yml new file mode 100644 index 0000000..41bd0d1 --- /dev/null +++ b/defaults/main.yml @@ -0,0 +1,2 @@ +--- +# defaults file for ensure_os_patch \ No newline at end of file diff --git a/handlers/main.yml b/handlers/main.yml new file mode 100644 index 0000000..553407b --- /dev/null +++ b/handlers/main.yml @@ -0,0 +1,7 @@ +--- +# handlers file for ensure_os_patch +- name: 'package_facts' + package_facts: +- name: 'service_facts' + service_facts: + diff --git a/meta/main.yml b/meta/main.yml new file mode 100644 index 0000000..227ad9c --- /dev/null +++ b/meta/main.yml @@ -0,0 +1,53 @@ +galaxy_info: + author: your name + description: your role description + company: your company (optional) + + # If the issue tracker for your role is not on github, uncomment the + # next line and provide a value + # issue_tracker_url: http://example.com/issue/tracker + + # Choose a valid license ID from https://spdx.org - some suggested licenses: + # - BSD-3-Clause (default) + # - MIT + # - GPL-2.0-or-later + # - GPL-3.0-only + # - Apache-2.0 + # - CC-BY-4.0 + license: license (GPL-2.0-or-later, MIT, etc) + + min_ansible_version: 2.9 + + # If this a Container Enabled role, provide the minimum Ansible Container version. + # min_ansible_container_version: + + # + # Provide a list of supported platforms, and for each platform a list of versions. + # If you don't wish to enumerate all versions for a particular platform, use 'all'. + # To view available platforms and versions (or releases), visit: + # https://galaxy.ansible.com/api/v1/platforms/ + # + # platforms: + # - name: Fedora + # versions: + # - all + # - 25 + # - name: SomePlatform + # versions: + # - all + # - 1.0 + # - 7 + # - 99.99 + + 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. + \ No newline at end of file diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..309f288 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,25 @@ +--- +# tasks file for ensure_os_patch +- name: 'package discovery' + when: + - ansible_system == 'Linux' + - packages is not defined + package_facts: +- name: 'service discovery' + when: + - ansible_system == 'Linux' + - services is not defined + service_facts: +- name: 'ensure patch' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'CentOS' or ansible_distribution == 'Fedora' or ansible_distribution == 'OracleLinux' + package: + name: '*' + state: 'latest' + notify: + - 'package_facts' + - 'service_facts' +- name: 'flush handlers' + meta: 'flush_handlers' + diff --git a/tests/inventory b/tests/inventory new file mode 100644 index 0000000..878877b --- /dev/null +++ b/tests/inventory @@ -0,0 +1,2 @@ +localhost + diff --git a/tests/test.yml b/tests/test.yml new file mode 100644 index 0000000..024e967 --- /dev/null +++ b/tests/test.yml @@ -0,0 +1,5 @@ +--- +- hosts: localhost + remote_user: root + roles: + - ensure_os_patch \ No newline at end of file diff --git a/vars/main.yml b/vars/main.yml new file mode 100644 index 0000000..fcb2238 --- /dev/null +++ b/vars/main.yml @@ -0,0 +1,2 @@ +--- +# vars file for ensure_os_patch \ No newline at end of file From 09a336598e315e8922c1c62c0ebdd13db188d5d0 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 24 Dec 2019 23:30:01 -0600 Subject: [PATCH 03/34] Make work for any dnf/yum compatible system, not just what we know about --- tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index 309f288..ecc9445 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -13,7 +13,7 @@ - name: 'ensure patch' when: - ansible_system == 'Linux' - - ansible_distribution == 'CentOS' or ansible_distribution == 'Fedora' or ansible_distribution == 'OracleLinux' + - ansible_pkg_mgr == 'dnf' or ansible_pkg_mgr == 'yum' package: name: '*' state: 'latest' From 9a29d460dd17d943e019a7297c6cd367fd7ae3d7 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 30 Dec 2019 15:53:51 -0600 Subject: [PATCH 04/34] Mark handlers with psuedo namespace to prevent unintended consequences --- handlers/main.yml | 4 ++-- tasks/main.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/handlers/main.yml b/handlers/main.yml index 553407b..c58f2fa 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -1,7 +1,7 @@ --- # handlers file for ensure_os_patch -- name: 'package_facts' +- name: 'ensure_os_patch.package_facts' package_facts: -- name: 'service_facts' +- name: 'ensure_os_patch.service_facts' service_facts: diff --git a/tasks/main.yml b/tasks/main.yml index ecc9445..7a1168c 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -18,8 +18,8 @@ name: '*' state: 'latest' notify: - - 'package_facts' - - 'service_facts' + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' - name: 'flush handlers' meta: 'flush_handlers' From a3dab8f6d3ada591fc167cfc8a43935c70638b9c Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Wed, 1 Jan 2020 22:57:56 -0600 Subject: [PATCH 05/34] Add support for apt based distributions like Debian --- tasks/main.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index 7a1168c..bc0ed71 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -20,6 +20,14 @@ notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' +- name: 'ensure patch' + when: + - ansible_system == 'Linux' + - ansible_pkg_mgr == 'apt' + apt: + autoclean: 'yes' + autoremove: 'yes' + upgrade: 'dist' - name: 'flush handlers' meta: 'flush_handlers' From aeaaab59bb6c243daeaa4a55c8034fc23090aa77 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 28 Mar 2020 17:39:40 -0500 Subject: [PATCH 06/34] Update galaxy metadata --- meta/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/meta/main.yml b/meta/main.yml index 227ad9c..42b4504 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -1,6 +1,6 @@ galaxy_info: - author: your name - description: your role description + author: Jason Rothstein + description: Ensure OS patches are applied company: your company (optional) # If the issue tracker for your role is not on github, uncomment the @@ -14,7 +14,7 @@ galaxy_info: # - GPL-3.0-only # - Apache-2.0 # - CC-BY-4.0 - license: license (GPL-2.0-or-later, MIT, etc) + license: LGPL-3.0-or-later min_ansible_version: 2.9 From f424b645719bd33bf6ac599d8d575c30ef84da40 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 16 Aug 2020 13:43:17 -0500 Subject: [PATCH 07/34] Enable Fedora to use dnf-automatic to install os patches --- tasks/main.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index bc0ed71..6c806a6 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -28,6 +28,30 @@ autoclean: 'yes' autoremove: 'yes' upgrade: 'dist' +- name: 'Ensure dnf-automatic installation' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Fedora' + - ansible_distribution_major_version >= 21 + package: + name: + - 'dnf-automatic' + state: 'present' + notify: + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' +- name: 'Ensure dnf-automatic runs' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Fedora' + - ansible_distribution_major_version >= 21 + service: + enabled: 'yes' + name: 'dnf-automatic-install.timer' + state: 'running' + notify: + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' - name: 'flush handlers' meta: 'flush_handlers' From cf7832b3fb1b41d00831e49c34ac439e97988b40 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 16 Aug 2020 15:09:56 -0500 Subject: [PATCH 08/34] Use ansible version to perform the version compare --- tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 6c806a6..fe6bd3a 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -32,7 +32,7 @@ when: - ansible_system == 'Linux' - ansible_distribution == 'Fedora' - - ansible_distribution_major_version >= 21 + - ansible_distribution_major_version is version('21', '>=') package: name: - 'dnf-automatic' @@ -44,7 +44,7 @@ when: - ansible_system == 'Linux' - ansible_distribution == 'Fedora' - - ansible_distribution_major_version >= 21 + - ansible_distribution_major_version is version('21', '>=') service: enabled: 'yes' name: 'dnf-automatic-install.timer' From 7b393ff720e4c0eb490c79b164b3efd1497aa956 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 16 Aug 2020 15:13:20 -0500 Subject: [PATCH 09/34] started not running --- tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index fe6bd3a..9c4b9bb 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -48,7 +48,7 @@ service: enabled: 'yes' name: 'dnf-automatic-install.timer' - state: 'running' + state: 'started' notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' From 1af187e7018b5c7ce1b9e3037b10f9ff441f750b Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 29 Nov 2020 18:09:48 -0600 Subject: [PATCH 10/34] Update to use FQCN --- README.md | 2 +- handlers/main.yml | 4 ++-- tasks/main.yml | 15 +++++++++------ 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 5eef1c7..3356870 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Including an example of how to use your role (for instance, with variables passe License ------- -LGPL >= 3 +LGPL-3.0-or-later Author Information ------------------ diff --git a/handlers/main.yml b/handlers/main.yml index c58f2fa..536e374 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -1,7 +1,7 @@ --- # handlers file for ensure_os_patch - name: 'ensure_os_patch.package_facts' - package_facts: + ansible.builtin.package_facts: - name: 'ensure_os_patch.service_facts' - service_facts: + ansible.builtin.service_facts: diff --git a/tasks/main.yml b/tasks/main.yml index 9c4b9bb..df1117d 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -4,17 +4,17 @@ when: - ansible_system == 'Linux' - packages is not defined - package_facts: + ansible.builtin.package_facts: - name: 'service discovery' when: - ansible_system == 'Linux' - services is not defined - service_facts: + ansible.builtin.service_facts: - name: 'ensure patch' when: - ansible_system == 'Linux' - ansible_pkg_mgr == 'dnf' or ansible_pkg_mgr == 'yum' - package: + ansible.builtin.package: name: '*' state: 'latest' notify: @@ -24,16 +24,19 @@ when: - ansible_system == 'Linux' - ansible_pkg_mgr == 'apt' - apt: + ansible.builtin.apt: autoclean: 'yes' autoremove: 'yes' upgrade: 'dist' + notify: + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' - name: 'Ensure dnf-automatic installation' when: - ansible_system == 'Linux' - ansible_distribution == 'Fedora' - ansible_distribution_major_version is version('21', '>=') - package: + ansible.builtin.package: name: - 'dnf-automatic' state: 'present' @@ -45,7 +48,7 @@ - ansible_system == 'Linux' - ansible_distribution == 'Fedora' - ansible_distribution_major_version is version('21', '>=') - service: + ansible.builtin.service: enabled: 'yes' name: 'dnf-automatic-install.timer' state: 'started' From 8ce72d368928be480bdb9f9de67d453150e54007 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 20 Dec 2020 07:51:47 -0600 Subject: [PATCH 11/34] CentOS >= 8 has dnf-automatic, so enable it --- tasks/main.yml | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index df1117d..cd13557 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -34,8 +34,13 @@ - name: 'Ensure dnf-automatic installation' when: - ansible_system == 'Linux' - - ansible_distribution == 'Fedora' - - ansible_distribution_major_version is version('21', '>=') + - ( + ansible_distribution == 'Fedora' and + ansible_distribution_major_version is version('21', '>=') + ) or ( + ansible_distirbution == 'CentOS' and + ansible_distribution_major_version is version('8', '>=') + ) ansible.builtin.package: name: - 'dnf-automatic' @@ -46,8 +51,13 @@ - name: 'Ensure dnf-automatic runs' when: - ansible_system == 'Linux' - - ansible_distribution == 'Fedora' - - ansible_distribution_major_version is version('21', '>=') + - ( + ansible_distribution == 'Fedora' and + ansible_distribution_major_version is version('21', '>=') + ) or ( + ansible_distirbution == 'CentOS' and + ansible_distribution_major_version is version('8', '>=') + ) ansible.builtin.service: enabled: 'yes' name: 'dnf-automatic-install.timer' From 22d27cef2f83f52df0bdfbca88408460cb2c8b2b Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 20 Dec 2020 07:56:36 -0600 Subject: [PATCH 12/34] Syntax cleanup for style --- tasks/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index cd13557..12b07cd 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -13,7 +13,8 @@ - name: 'ensure patch' when: - ansible_system == 'Linux' - - ansible_pkg_mgr == 'dnf' or ansible_pkg_mgr == 'yum' + - ansible_pkg_mgr == 'dnf' or + ansible_pkg_mgr == 'yum' ansible.builtin.package: name: '*' state: 'latest' From 766274f4ac0066e4c2154c16c5562009eba0d054 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 20 Dec 2020 08:13:20 -0600 Subject: [PATCH 13/34] Spelling --- tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 12b07cd..eff48dd 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -39,7 +39,7 @@ ansible_distribution == 'Fedora' and ansible_distribution_major_version is version('21', '>=') ) or ( - ansible_distirbution == 'CentOS' and + ansible_distribution == 'CentOS' and ansible_distribution_major_version is version('8', '>=') ) ansible.builtin.package: @@ -56,7 +56,7 @@ ansible_distribution == 'Fedora' and ansible_distribution_major_version is version('21', '>=') ) or ( - ansible_distirbution == 'CentOS' and + ansible_distribution == 'CentOS' and ansible_distribution_major_version is version('8', '>=') ) ansible.builtin.service: From 5fa4c57f3c663d800ec65eaaca836b1b08a5fb5a Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 28 Jun 2021 20:13:49 -0500 Subject: [PATCH 14/34] Make patching async because it can take some time. --- tasks/main.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index eff48dd..da9a5b6 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -18,6 +18,8 @@ ansible.builtin.package: name: '*' state: 'latest' + async: 900 + poll: 5 notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' @@ -29,6 +31,8 @@ autoclean: 'yes' autoremove: 'yes' upgrade: 'dist' + async: 900 + poll: 5 notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' From 2d696a22e737f5f88086d5fc01127385f9dedf91 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 Jul 2021 03:23:32 +0000 Subject: [PATCH 15/34] Genericize the roal to look like the rest --- tasks/Debian-default.yml | 16 ++++++ tasks/default.yml | 3 ++ tasks/main.yml | 100 +++++++++++++++++++++++-------------- vars/CentOS-6-default.yml | 6 +++ vars/CentOS-7-default.yml | 6 +++ vars/CentOS-8-default.yml | 12 +++++ vars/Fedora-21-default.yml | 12 +++++ vars/Fedora-22-default.yml | 12 +++++ vars/Fedora-23-default.yml | 12 +++++ vars/Fedora-24-default.yml | 12 +++++ vars/Fedora-25-default.yml | 12 +++++ vars/Fedora-26-default.yml | 12 +++++ vars/Fedora-27-default.yml | 12 +++++ vars/Fedora-28-default.yml | 12 +++++ vars/Fedora-29-default.yml | 12 +++++ vars/Fedora-30-default.yml | 12 +++++ vars/Fedora-31-default.yml | 12 +++++ vars/Fedora-32-default.yml | 12 +++++ vars/Fedora-33-default.yml | 12 +++++ vars/Fedora-34-default.yml | 12 +++++ vars/default.yml | 2 + 21 files changed, 275 insertions(+), 38 deletions(-) create mode 100644 tasks/Debian-default.yml create mode 100644 tasks/default.yml create mode 100644 vars/CentOS-6-default.yml create mode 100644 vars/CentOS-7-default.yml create mode 100644 vars/CentOS-8-default.yml create mode 100644 vars/Fedora-21-default.yml create mode 100644 vars/Fedora-22-default.yml create mode 100644 vars/Fedora-23-default.yml create mode 100644 vars/Fedora-24-default.yml create mode 100644 vars/Fedora-25-default.yml create mode 100644 vars/Fedora-26-default.yml create mode 100644 vars/Fedora-27-default.yml create mode 100644 vars/Fedora-28-default.yml create mode 100644 vars/Fedora-29-default.yml create mode 100644 vars/Fedora-30-default.yml create mode 100644 vars/Fedora-31-default.yml create mode 100644 vars/Fedora-32-default.yml create mode 100644 vars/Fedora-33-default.yml create mode 100644 vars/Fedora-34-default.yml create mode 100644 vars/default.yml diff --git a/tasks/Debian-default.yml b/tasks/Debian-default.yml new file mode 100644 index 0000000..2d2f16a --- /dev/null +++ b/tasks/Debian-default.yml @@ -0,0 +1,16 @@ +--- +# tasks file for ensure_os_patch +- name: 'ensure Debian patch' + when: + - ansible_system == 'Linux' + - ansible_pkg_mgr == 'apt' + ansible.builtin.apt: + autoclean: 'yes' + autoremove: 'yes' + upgrade: 'dist' + notify: + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' +- name: 'flush handlers' + meta: 'flush_handlers' + diff --git a/tasks/default.yml b/tasks/default.yml new file mode 100644 index 0000000..546bf13 --- /dev/null +++ b/tasks/default.yml @@ -0,0 +1,3 @@ +--- +# tasks file for ensure_os_patch + diff --git a/tasks/main.yml b/tasks/main.yml index da9a5b6..549359a 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,5 +1,42 @@ --- # tasks file for ensure_os_patch +- name: 'include vendor / version specific tasks' + when: + - ansible_system == 'Linux' + include_tasks: + file: '{{ lookup("first_found", findme ) }}' + vars: + findme: + files: + - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' + - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml' + - '{{ ansible_distribution }}-default.yml' + - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' + - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml' + - '{{ ansible_os_family }}-default.yml' + - 'default.yml' + errors: 'ignore' +- name: 'flush handlers' + meta: 'flush_handlers' +- name: 'include variables' + when: + - ansible_system == 'Linux' + include_vars: + file: '{{ lookup("first_found", findme ) }}' + name: 'ensure_os_patch' + vars: + findme: + files: + - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' + - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml' + - '{{ ansible_distribution }}-default.yml' + - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' + - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml' + - '{{ ansible_os_family }}-default.yml' + - 'default.yml' + paths: + - '../vars/' + errors: 'ignore' - name: 'package discovery' when: - ansible_system == 'Linux' @@ -10,20 +47,25 @@ - ansible_system == 'Linux' - services is not defined ansible.builtin.service_facts: -- name: 'ensure patch' +- name: 'ensure packages' when: - ansible_system == 'Linux' - - ansible_pkg_mgr == 'dnf' or - ansible_pkg_mgr == 'yum' + - ensure_os_patch is defined + - ensure_os_patch.package_list is defined + - ensure_os_patch.package_list is iterable + - packages[item.name] is not defined ansible.builtin.package: - name: '*' - state: 'latest' - async: 900 - poll: 5 + name: '{{ item.name }}' + state: '{{ item.state }}' + loop: '{{ ensure_os_patch.package_list }}' + loop_control: + label: '{{ item.name }} will be {{ item.state }}' notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' -- name: 'ensure patch' +- name: 'flush handlers' + meta: 'flush_handlers' +- name: 'ensure Debian patch' when: - ansible_system == 'Linux' - ansible_pkg_mgr == 'apt' @@ -31,42 +73,24 @@ autoclean: 'yes' autoremove: 'yes' upgrade: 'dist' - async: 900 - poll: 5 notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' -- name: 'Ensure dnf-automatic installation' +- name: 'flush handlers' + meta: 'flush_handlers' +- name: 'ensure services' when: - ansible_system == 'Linux' - - ( - ansible_distribution == 'Fedora' and - ansible_distribution_major_version is version('21', '>=') - ) or ( - ansible_distribution == 'CentOS' and - ansible_distribution_major_version is version('8', '>=') - ) - ansible.builtin.package: - name: - - 'dnf-automatic' - state: 'present' - notify: - - 'ensure_os_patch.package_facts' - - 'ensure_os_patch.service_facts' -- name: 'Ensure dnf-automatic runs' - when: - - ansible_system == 'Linux' - - ( - ansible_distribution == 'Fedora' and - ansible_distribution_major_version is version('21', '>=') - ) or ( - ansible_distribution == 'CentOS' and - ansible_distribution_major_version is version('8', '>=') - ) + - ensure_os_patch is defined + - ensure_os_patch.service_list is defined + - ensure_os_patch.service_list is iterable ansible.builtin.service: - enabled: 'yes' - name: 'dnf-automatic-install.timer' - state: 'started' + enabled: '{{ item.enabled }}' + name: '{{ item.name }}' + state: '{{ item.state }}' + loop: '{{ ensure_os_patch.service_list }}' + loop_control: + label: '{{ item.name }} will be {{ item.state }}' notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' diff --git a/vars/CentOS-6-default.yml b/vars/CentOS-6-default.yml new file mode 100644 index 0000000..8db76e2 --- /dev/null +++ b/vars/CentOS-6-default.yml @@ -0,0 +1,6 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: '*' + state: 'latest' + diff --git a/vars/CentOS-7-default.yml b/vars/CentOS-7-default.yml new file mode 100644 index 0000000..8db76e2 --- /dev/null +++ b/vars/CentOS-7-default.yml @@ -0,0 +1,6 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: '*' + state: 'latest' + diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/CentOS-8-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-21-default.yml b/vars/Fedora-21-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-21-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-22-default.yml b/vars/Fedora-22-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-22-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-23-default.yml b/vars/Fedora-23-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-23-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-24-default.yml b/vars/Fedora-24-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-24-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-25-default.yml b/vars/Fedora-25-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-25-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-26-default.yml b/vars/Fedora-26-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-26-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-27-default.yml b/vars/Fedora-27-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-27-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-28-default.yml b/vars/Fedora-28-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-28-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-29-default.yml b/vars/Fedora-29-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-29-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-30-default.yml b/vars/Fedora-30-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-30-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-31-default.yml b/vars/Fedora-31-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-31-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-32-default.yml b/vars/Fedora-32-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-32-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-33-default.yml b/vars/Fedora-33-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-33-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/Fedora-34-default.yml b/vars/Fedora-34-default.yml new file mode 100644 index 0000000..cc81fbf --- /dev/null +++ b/vars/Fedora-34-default.yml @@ -0,0 +1,12 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + diff --git a/vars/default.yml b/vars/default.yml new file mode 100644 index 0000000..fcb2238 --- /dev/null +++ b/vars/default.yml @@ -0,0 +1,2 @@ +--- +# vars file for ensure_os_patch \ No newline at end of file From adffa6a93490ffce89f7dea81a6599e2acf3ed12 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 Jul 2021 03:51:13 +0000 Subject: [PATCH 16/34] Prevent multiple service restarts --- tasks/main.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 549359a..94b7ce5 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -16,8 +16,6 @@ - '{{ ansible_os_family }}-default.yml' - 'default.yml' errors: 'ignore' -- name: 'flush handlers' - meta: 'flush_handlers' - name: 'include variables' when: - ansible_system == 'Linux' @@ -63,8 +61,6 @@ notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' -- name: 'flush handlers' - meta: 'flush_handlers' - name: 'ensure Debian patch' when: - ansible_system == 'Linux' @@ -76,8 +72,6 @@ notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' -- name: 'flush handlers' - meta: 'flush_handlers' - name: 'ensure services' when: - ansible_system == 'Linux' From 352a8b4424b0c58531e71bc5db379d8905a0447d Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 7 Nov 2021 23:00:39 -0600 Subject: [PATCH 17/34] Enable Fedora 35 --- vars/CentOS-6-default.yml | 1 - vars/CentOS-7-default.yml | 1 - vars/CentOS-8-default.yml | 1 - vars/Fedora-21-default.yml | 1 - vars/Fedora-22-default.yml | 1 - vars/Fedora-23-default.yml | 1 - vars/Fedora-24-default.yml | 1 - vars/Fedora-25-default.yml | 1 - vars/Fedora-26-default.yml | 1 - vars/Fedora-27-default.yml | 1 - vars/Fedora-28-default.yml | 1 - vars/Fedora-29-default.yml | 1 - vars/Fedora-30-default.yml | 1 - vars/Fedora-31-default.yml | 1 - vars/Fedora-32-default.yml | 1 - vars/Fedora-33-default.yml | 1 - vars/Fedora-34-default.yml | 1 - vars/Fedora-35-default.yml | 11 +++++++++++ 18 files changed, 11 insertions(+), 17 deletions(-) create mode 100644 vars/Fedora-35-default.yml diff --git a/vars/CentOS-6-default.yml b/vars/CentOS-6-default.yml index 8db76e2..5578b25 100644 --- a/vars/CentOS-6-default.yml +++ b/vars/CentOS-6-default.yml @@ -3,4 +3,3 @@ package_list: - name: '*' state: 'latest' - diff --git a/vars/CentOS-7-default.yml b/vars/CentOS-7-default.yml index 8db76e2..5578b25 100644 --- a/vars/CentOS-7-default.yml +++ b/vars/CentOS-7-default.yml @@ -3,4 +3,3 @@ package_list: - name: '*' state: 'latest' - diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml index cc81fbf..3483ce3 100644 --- a/vars/CentOS-8-default.yml +++ b/vars/CentOS-8-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-21-default.yml b/vars/Fedora-21-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-21-default.yml +++ b/vars/Fedora-21-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-22-default.yml b/vars/Fedora-22-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-22-default.yml +++ b/vars/Fedora-22-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-23-default.yml b/vars/Fedora-23-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-23-default.yml +++ b/vars/Fedora-23-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-24-default.yml b/vars/Fedora-24-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-24-default.yml +++ b/vars/Fedora-24-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-25-default.yml b/vars/Fedora-25-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-25-default.yml +++ b/vars/Fedora-25-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-26-default.yml b/vars/Fedora-26-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-26-default.yml +++ b/vars/Fedora-26-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-27-default.yml b/vars/Fedora-27-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-27-default.yml +++ b/vars/Fedora-27-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-28-default.yml b/vars/Fedora-28-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-28-default.yml +++ b/vars/Fedora-28-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-29-default.yml b/vars/Fedora-29-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-29-default.yml +++ b/vars/Fedora-29-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-30-default.yml b/vars/Fedora-30-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-30-default.yml +++ b/vars/Fedora-30-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-31-default.yml b/vars/Fedora-31-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-31-default.yml +++ b/vars/Fedora-31-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-32-default.yml b/vars/Fedora-32-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-32-default.yml +++ b/vars/Fedora-32-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-33-default.yml b/vars/Fedora-33-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-33-default.yml +++ b/vars/Fedora-33-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-34-default.yml b/vars/Fedora-34-default.yml index cc81fbf..3483ce3 100644 --- a/vars/Fedora-34-default.yml +++ b/vars/Fedora-34-default.yml @@ -9,4 +9,3 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - diff --git a/vars/Fedora-35-default.yml b/vars/Fedora-35-default.yml new file mode 100644 index 0000000..3483ce3 --- /dev/null +++ b/vars/Fedora-35-default.yml @@ -0,0 +1,11 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' From 6372ce0a67aac9d43eee46e844f58ab063ff4622 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 5 Jun 2022 12:27:29 -0500 Subject: [PATCH 18/34] Add Fedora 36 --- vars/Fedora-36-default.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 vars/Fedora-36-default.yml diff --git a/vars/Fedora-36-default.yml b/vars/Fedora-36-default.yml new file mode 100644 index 0000000..3483ce3 --- /dev/null +++ b/vars/Fedora-36-default.yml @@ -0,0 +1,11 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' From 1176408bc6ae70f515c22489f4894f570f031ea7 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 5 Jun 2022 16:29:40 -0500 Subject: [PATCH 19/34] Update handlers --- handlers/main.yml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/handlers/main.yml b/handlers/main.yml index 536e374..37bf9c8 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -4,4 +4,24 @@ ansible.builtin.package_facts: - name: 'ensure_os_patch.service_facts' ansible.builtin.service_facts: - +- name: 'ensure_os_patch.service_reload' + when: + - ansible_system == 'Linux' + - ansible_service_mgr == 'systemd' + - ensure_os_patch is defined + ansible.builtin.systemd: + daemon_reload: 'yes' +- name: 'ensure_os_patch.services' + when: + - ansible_system == 'Linux' + - ensure_os_patch is defined + - ensure_os_patch.service_list is defined + - ensure_os_patch.service_list is iterable + - item.state == 'started' + ansible.builtin.service: + enabled: '{{ item.enabled }}' + name: '{{ item.name }}' + state: 'restarted' + loop: '{{ ensure_os_patch.service_list }}' + loop_control: + label: '{{ item.name }} will be restarted' From bb21596a63fbf9016c4580b4c575a8ac8990858e Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 5 Jun 2022 16:48:06 -0500 Subject: [PATCH 20/34] UPdate tasks --- tasks/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index 94b7ce5..6f63d72 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -51,7 +51,6 @@ - ensure_os_patch is defined - ensure_os_patch.package_list is defined - ensure_os_patch.package_list is iterable - - packages[item.name] is not defined ansible.builtin.package: name: '{{ item.name }}' state: '{{ item.state }}' From eea23ac367425eeec7c3bf70870d1fab7bbfa319 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 3 Oct 2022 23:13:10 -0500 Subject: [PATCH 21/34] If we use dnf-automatic, install the packages too --- vars/CentOS-8-default.yml | 3 +++ vars/CentOS-9-default.yml | 14 ++++++++++++++ vars/Fedora-35-default.yml | 3 +++ vars/Fedora-36-default.yml | 3 +++ 4 files changed, 23 insertions(+) create mode 100644 vars/CentOS-9-default.yml diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml index 3483ce3..ebd4420 100644 --- a/vars/CentOS-8-default.yml +++ b/vars/CentOS-8-default.yml @@ -9,3 +9,6 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/CentOS-9-default.yml b/vars/CentOS-9-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/CentOS-9-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/Fedora-35-default.yml b/vars/Fedora-35-default.yml index 3483ce3..ebd4420 100644 --- a/vars/Fedora-35-default.yml +++ b/vars/Fedora-35-default.yml @@ -9,3 +9,6 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/Fedora-36-default.yml b/vars/Fedora-36-default.yml index 3483ce3..ebd4420 100644 --- a/vars/Fedora-36-default.yml +++ b/vars/Fedora-36-default.yml @@ -9,3 +9,6 @@ service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' From 563802d7f4b141e8c60c19a255c79f3a60636fee Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 6 Dec 2022 20:36:06 -0600 Subject: [PATCH 22/34] Add Fedora 37 --- vars/Fedora-37-default.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 vars/Fedora-37-default.yml diff --git a/vars/Fedora-37-default.yml b/vars/Fedora-37-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Fedora-37-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' From cd0c5bd513c4314806f061e4e53da611180913b2 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 29 Apr 2023 20:15:16 -0500 Subject: [PATCH 23/34] Add Fedora 38 --- vars/Fedora-38-default.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 vars/Fedora-38-default.yml diff --git a/vars/Fedora-38-default.yml b/vars/Fedora-38-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Fedora-38-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' From 7b4cadbe17ff049b9cd743cd361f9fdbe3892c04 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 16 Mar 2024 20:23:11 -0500 Subject: [PATCH 24/34] Add Fedora 39 --- vars/Fedora-39-default.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 vars/Fedora-39-default.yml diff --git a/vars/Fedora-39-default.yml b/vars/Fedora-39-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Fedora-39-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' From 23e2d00ca525cd3580df82c5361a09113d7c4e4e Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 30 Jun 2024 13:42:58 -0500 Subject: [PATCH 25/34] Add Fedora 40, Alma/Oracle/Rocky 8 and 9 Signed-off-by: Jason Rothstein --- vars/AlmaLinux-8-default.yml | 14 ++++++++++++++ vars/AlmaLinux-9-default.yml | 14 ++++++++++++++ vars/Fedora-40-default.yml | 14 ++++++++++++++ vars/OracleLinux-8-default.yml | 14 ++++++++++++++ vars/OracleLinux-9-default.yml | 14 ++++++++++++++ vars/Rocky-8-default.yml | 14 ++++++++++++++ vars/Rocky-9-default.yml | 14 ++++++++++++++ 7 files changed, 98 insertions(+) create mode 100644 vars/AlmaLinux-8-default.yml create mode 100644 vars/AlmaLinux-9-default.yml create mode 100644 vars/Fedora-40-default.yml create mode 100644 vars/OracleLinux-8-default.yml create mode 100644 vars/OracleLinux-9-default.yml create mode 100644 vars/Rocky-8-default.yml create mode 100644 vars/Rocky-9-default.yml diff --git a/vars/AlmaLinux-8-default.yml b/vars/AlmaLinux-8-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/AlmaLinux-8-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/AlmaLinux-9-default.yml b/vars/AlmaLinux-9-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/AlmaLinux-9-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/Fedora-40-default.yml b/vars/Fedora-40-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Fedora-40-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/OracleLinux-8-default.yml b/vars/OracleLinux-8-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/OracleLinux-8-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/OracleLinux-9-default.yml b/vars/OracleLinux-9-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/OracleLinux-9-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/Rocky-8-default.yml b/vars/Rocky-8-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Rocky-8-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' diff --git a/vars/Rocky-9-default.yml b/vars/Rocky-9-default.yml new file mode 100644 index 0000000..ebd4420 --- /dev/null +++ b/vars/Rocky-9-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' From fabfe6d8a3baaa519cb76e792ff980a51bab1090 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Fri, 27 Dec 2024 15:52:41 -0600 Subject: [PATCH 26/34] Fedora 41 Signed-off-by: Jason Rothstein --- vars/Fedora-41-default.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 vars/Fedora-41-default.yml diff --git a/vars/Fedora-41-default.yml b/vars/Fedora-41-default.yml new file mode 100644 index 0000000..9a51583 --- /dev/null +++ b/vars/Fedora-41-default.yml @@ -0,0 +1,11 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf5-plugin-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf5-automatic.timer' + state: 'started' + enabled: 'yes' From 0f17999e8798bb09a327333240c901a2c8d19de6 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 27 Apr 2025 12:39:58 -0500 Subject: [PATCH 27/34] Fedora 42 Signed-off-by: Jason Rothstein --- vars/Fedora-42-default.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 vars/Fedora-42-default.yml diff --git a/vars/Fedora-42-default.yml b/vars/Fedora-42-default.yml new file mode 100644 index 0000000..9a51583 --- /dev/null +++ b/vars/Fedora-42-default.yml @@ -0,0 +1,11 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf5-plugin-automatic' + state: 'present' + - name: '*' + state: 'latest' +service_list: + - name: 'dnf5-automatic.timer' + state: 'started' + enabled: 'yes' From 57a05dd3cb71dd1d3bc300b6e95d7bbc886eb2e3 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 May 2025 20:11:36 -0500 Subject: [PATCH 28/34] Handler improvements Signed-off-by: Jason Rothstein --- handlers/main.yml | 4 +++- tasks/main.yml | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/handlers/main.yml b/handlers/main.yml index 37bf9c8..6017a18 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -11,7 +11,7 @@ - ensure_os_patch is defined ansible.builtin.systemd: daemon_reload: 'yes' -- name: 'ensure_os_patch.services' +- name: 'ensure_os_patch.service_restart' when: - ansible_system == 'Linux' - ensure_os_patch is defined @@ -25,3 +25,5 @@ loop: '{{ ensure_os_patch.service_list }}' loop_control: label: '{{ item.name }} will be restarted' +... + diff --git a/tasks/main.yml b/tasks/main.yml index 6f63d72..08852da 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -89,4 +89,5 @@ - 'ensure_os_patch.service_facts' - name: 'flush handlers' meta: 'flush_handlers' +... From 94f6f6244a65ec5a140b74e51d210b835356624c Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 9 Mar 2026 00:33:51 -0500 Subject: [PATCH 29/34] Add Fedora 43 and EL 10, and if using dnf/dnf5/yum package manager we patch by default, allowing duplicate data removal --- tasks/main.yml | 12 +++++++++++- vars/AlmaLinux-10-default.yml | 14 ++++++++++++++ vars/AlmaLinux-8-default.yml | 4 ++-- vars/AlmaLinux-9-default.yml | 4 ++-- vars/CentOS-10-default.yml | 14 ++++++++++++++ vars/CentOS-6-default.yml | 5 ----- vars/CentOS-7-default.yml | 5 ----- vars/CentOS-8-default.yml | 4 ++-- vars/CentOS-9-default.yml | 4 ++-- vars/Fedora-21-default.yml | 4 ++-- vars/Fedora-22-default.yml | 4 ++-- vars/Fedora-23-default.yml | 4 ++-- vars/Fedora-24-default.yml | 4 ++-- vars/Fedora-25-default.yml | 4 ++-- vars/Fedora-26-default.yml | 4 ++-- vars/Fedora-27-default.yml | 4 ++-- vars/Fedora-28-default.yml | 4 ++-- vars/Fedora-29-default.yml | 4 ++-- vars/Fedora-30-default.yml | 4 ++-- vars/Fedora-31-default.yml | 4 ++-- vars/Fedora-32-default.yml | 4 ++-- vars/Fedora-33-default.yml | 4 ++-- vars/Fedora-34-default.yml | 4 ++-- vars/Fedora-35-default.yml | 7 ++----- vars/Fedora-36-default.yml | 7 ++----- vars/Fedora-37-default.yml | 7 ++----- vars/Fedora-38-default.yml | 7 ++----- vars/Fedora-39-default.yml | 7 ++----- vars/Fedora-40-default.yml | 7 ++----- vars/Fedora-41-default.yml | 3 +-- vars/Fedora-42-default.yml | 3 +-- vars/Fedora-43-default.yml | 10 ++++++++++ vars/OracleLinux-10-default.yml | 13 +++++++++++++ vars/OracleLinux-8-default.yml | 3 +-- vars/OracleLinux-9-default.yml | 3 +-- vars/Rocky-10-default.yml | 13 +++++++++++++ vars/Rocky-8-default.yml | 3 +-- vars/Rocky-9-default.yml | 3 +-- 38 files changed, 129 insertions(+), 89 deletions(-) create mode 100644 vars/AlmaLinux-10-default.yml create mode 100644 vars/CentOS-10-default.yml delete mode 100644 vars/CentOS-6-default.yml delete mode 100644 vars/CentOS-7-default.yml create mode 100644 vars/Fedora-43-default.yml create mode 100644 vars/OracleLinux-10-default.yml create mode 100644 vars/Rocky-10-default.yml diff --git a/tasks/main.yml b/tasks/main.yml index 08852da..f0cfcf8 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -60,7 +60,7 @@ notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' -- name: 'ensure Debian patch' +- name: 'ensure apt patch' when: - ansible_system == 'Linux' - ansible_pkg_mgr == 'apt' @@ -71,6 +71,16 @@ notify: - 'ensure_os_patch.package_facts' - 'ensure_os_patch.service_facts' +- name: 'ensure dnf or yum patch' + when: + - ansible_system == 'Linux' + - ansible_pkg_mgr == 'dnf' or ansible_pkg_mgr == 'dnf5' or ansible_pkg_mgr == 'yum' + ansible.builtin.package: + name: '*' + state: 'latest' + notify: + - 'ensure_os_patch.package_facts' + - 'ensure_os_patch.service_facts' - name: 'ensure services' when: - ansible_system == 'Linux' diff --git a/vars/AlmaLinux-10-default.yml b/vars/AlmaLinux-10-default.yml new file mode 100644 index 0000000..a85d5d6 --- /dev/null +++ b/vars/AlmaLinux-10-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' +... + diff --git a/vars/AlmaLinux-8-default.yml b/vars/AlmaLinux-8-default.yml index ebd4420..a85d5d6 100644 --- a/vars/AlmaLinux-8-default.yml +++ b/vars/AlmaLinux-8-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,5 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/AlmaLinux-9-default.yml b/vars/AlmaLinux-9-default.yml index ebd4420..a85d5d6 100644 --- a/vars/AlmaLinux-9-default.yml +++ b/vars/AlmaLinux-9-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,5 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/CentOS-10-default.yml b/vars/CentOS-10-default.yml new file mode 100644 index 0000000..a85d5d6 --- /dev/null +++ b/vars/CentOS-10-default.yml @@ -0,0 +1,14 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' +... + diff --git a/vars/CentOS-6-default.yml b/vars/CentOS-6-default.yml deleted file mode 100644 index 5578b25..0000000 --- a/vars/CentOS-6-default.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: '*' - state: 'latest' diff --git a/vars/CentOS-7-default.yml b/vars/CentOS-7-default.yml deleted file mode 100644 index 5578b25..0000000 --- a/vars/CentOS-7-default.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: '*' - state: 'latest' diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml index ebd4420..a85d5d6 100644 --- a/vars/CentOS-8-default.yml +++ b/vars/CentOS-8-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,5 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/CentOS-9-default.yml b/vars/CentOS-9-default.yml index ebd4420..a85d5d6 100644 --- a/vars/CentOS-9-default.yml +++ b/vars/CentOS-9-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,5 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-21-default.yml b/vars/Fedora-21-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-21-default.yml +++ b/vars/Fedora-21-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-22-default.yml b/vars/Fedora-22-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-22-default.yml +++ b/vars/Fedora-22-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-23-default.yml b/vars/Fedora-23-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-23-default.yml +++ b/vars/Fedora-23-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-24-default.yml b/vars/Fedora-24-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-24-default.yml +++ b/vars/Fedora-24-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-25-default.yml b/vars/Fedora-25-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-25-default.yml +++ b/vars/Fedora-25-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-26-default.yml b/vars/Fedora-26-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-26-default.yml +++ b/vars/Fedora-26-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-27-default.yml b/vars/Fedora-27-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-27-default.yml +++ b/vars/Fedora-27-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-28-default.yml b/vars/Fedora-28-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-28-default.yml +++ b/vars/Fedora-28-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-29-default.yml b/vars/Fedora-29-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-29-default.yml +++ b/vars/Fedora-29-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-30-default.yml b/vars/Fedora-30-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-30-default.yml +++ b/vars/Fedora-30-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-31-default.yml b/vars/Fedora-31-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-31-default.yml +++ b/vars/Fedora-31-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-32-default.yml b/vars/Fedora-32-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-32-default.yml +++ b/vars/Fedora-32-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-33-default.yml b/vars/Fedora-33-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-33-default.yml +++ b/vars/Fedora-33-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-34-default.yml b/vars/Fedora-34-default.yml index 3483ce3..2945494 100644 --- a/vars/Fedora-34-default.yml +++ b/vars/Fedora-34-default.yml @@ -3,9 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' +... + diff --git a/vars/Fedora-35-default.yml b/vars/Fedora-35-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-35-default.yml +++ b/vars/Fedora-35-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-36-default.yml b/vars/Fedora-36-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-36-default.yml +++ b/vars/Fedora-36-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-37-default.yml b/vars/Fedora-37-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-37-default.yml +++ b/vars/Fedora-37-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-38-default.yml b/vars/Fedora-38-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-38-default.yml +++ b/vars/Fedora-38-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-39-default.yml b/vars/Fedora-39-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-39-default.yml +++ b/vars/Fedora-39-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-40-default.yml b/vars/Fedora-40-default.yml index ebd4420..2945494 100644 --- a/vars/Fedora-40-default.yml +++ b/vars/Fedora-40-default.yml @@ -3,12 +3,9 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' enabled: 'yes' - - name: 'dnf-automatic-install.timer' - state: 'started' - enabled: 'yes' +... + diff --git a/vars/Fedora-41-default.yml b/vars/Fedora-41-default.yml index 9a51583..ddda6ef 100644 --- a/vars/Fedora-41-default.yml +++ b/vars/Fedora-41-default.yml @@ -3,9 +3,8 @@ package_list: - name: 'dnf5-plugin-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf5-automatic.timer' state: 'started' enabled: 'yes' +... diff --git a/vars/Fedora-42-default.yml b/vars/Fedora-42-default.yml index 9a51583..ddda6ef 100644 --- a/vars/Fedora-42-default.yml +++ b/vars/Fedora-42-default.yml @@ -3,9 +3,8 @@ package_list: - name: 'dnf5-plugin-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf5-automatic.timer' state: 'started' enabled: 'yes' +... diff --git a/vars/Fedora-43-default.yml b/vars/Fedora-43-default.yml new file mode 100644 index 0000000..ddda6ef --- /dev/null +++ b/vars/Fedora-43-default.yml @@ -0,0 +1,10 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf5-plugin-automatic' + state: 'present' +service_list: + - name: 'dnf5-automatic.timer' + state: 'started' + enabled: 'yes' +... diff --git a/vars/OracleLinux-10-default.yml b/vars/OracleLinux-10-default.yml new file mode 100644 index 0000000..9c4bbbd --- /dev/null +++ b/vars/OracleLinux-10-default.yml @@ -0,0 +1,13 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' +... diff --git a/vars/OracleLinux-8-default.yml b/vars/OracleLinux-8-default.yml index ebd4420..9c4bbbd 100644 --- a/vars/OracleLinux-8-default.yml +++ b/vars/OracleLinux-8-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,4 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... diff --git a/vars/OracleLinux-9-default.yml b/vars/OracleLinux-9-default.yml index ebd4420..9c4bbbd 100644 --- a/vars/OracleLinux-9-default.yml +++ b/vars/OracleLinux-9-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,4 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... diff --git a/vars/Rocky-10-default.yml b/vars/Rocky-10-default.yml new file mode 100644 index 0000000..9c4bbbd --- /dev/null +++ b/vars/Rocky-10-default.yml @@ -0,0 +1,13 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf-automatic' + state: 'present' +service_list: + - name: 'dnf-automatic.timer' + state: 'started' + enabled: 'yes' + - name: 'dnf-automatic-install.timer' + state: 'started' + enabled: 'yes' +... diff --git a/vars/Rocky-8-default.yml b/vars/Rocky-8-default.yml index ebd4420..9c4bbbd 100644 --- a/vars/Rocky-8-default.yml +++ b/vars/Rocky-8-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,4 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... diff --git a/vars/Rocky-9-default.yml b/vars/Rocky-9-default.yml index ebd4420..9c4bbbd 100644 --- a/vars/Rocky-9-default.yml +++ b/vars/Rocky-9-default.yml @@ -3,8 +3,6 @@ package_list: - name: 'dnf-automatic' state: 'present' - - name: '*' - state: 'latest' service_list: - name: 'dnf-automatic.timer' state: 'started' @@ -12,3 +10,4 @@ service_list: - name: 'dnf-automatic-install.timer' state: 'started' enabled: 'yes' +... From 0ae0f716443cc03ce81f7600a347de240b06a307 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Wed, 29 Apr 2026 23:51:56 -0500 Subject: [PATCH 30/34] Fedora 44 --- vars/Fedora-44-default.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 vars/Fedora-44-default.yml diff --git a/vars/Fedora-44-default.yml b/vars/Fedora-44-default.yml new file mode 100644 index 0000000..ddda6ef --- /dev/null +++ b/vars/Fedora-44-default.yml @@ -0,0 +1,10 @@ +--- +# vars file for ensure_os_patch +package_list: + - name: 'dnf5-plugin-automatic' + state: 'present' +service_list: + - name: 'dnf5-automatic.timer' + state: 'started' + enabled: 'yes' +... From b37943dbc960f8a22f9f0e9b839a08cc88a415b1 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 4 May 2026 21:21:20 -0500 Subject: [PATCH 31/34] Fix ansible core 2.20 changes and remove OS that are out of support Signed-off-by: Jason Rothstein --- tasks/Debian-default.yml | 5 +++-- tasks/main.yml | 44 +++++++++++++++++++------------------- vars/Fedora-21-default.yml | 11 ---------- vars/Fedora-22-default.yml | 11 ---------- vars/Fedora-23-default.yml | 11 ---------- vars/Fedora-24-default.yml | 11 ---------- vars/Fedora-25-default.yml | 11 ---------- vars/Fedora-26-default.yml | 11 ---------- vars/Fedora-27-default.yml | 11 ---------- vars/Fedora-28-default.yml | 11 ---------- vars/Fedora-29-default.yml | 11 ---------- vars/Fedora-30-default.yml | 11 ---------- vars/Fedora-31-default.yml | 11 ---------- vars/Fedora-32-default.yml | 11 ---------- vars/Fedora-33-default.yml | 11 ---------- vars/Fedora-34-default.yml | 11 ---------- vars/Fedora-35-default.yml | 11 ---------- vars/Fedora-36-default.yml | 11 ---------- vars/Fedora-37-default.yml | 11 ---------- vars/Fedora-38-default.yml | 11 ---------- vars/Fedora-39-default.yml | 11 ---------- vars/Fedora-40-default.yml | 11 ---------- vars/Fedora-41-default.yml | 10 --------- 23 files changed, 25 insertions(+), 254 deletions(-) delete mode 100644 vars/Fedora-21-default.yml delete mode 100644 vars/Fedora-22-default.yml delete mode 100644 vars/Fedora-23-default.yml delete mode 100644 vars/Fedora-24-default.yml delete mode 100644 vars/Fedora-25-default.yml delete mode 100644 vars/Fedora-26-default.yml delete mode 100644 vars/Fedora-27-default.yml delete mode 100644 vars/Fedora-28-default.yml delete mode 100644 vars/Fedora-29-default.yml delete mode 100644 vars/Fedora-30-default.yml delete mode 100644 vars/Fedora-31-default.yml delete mode 100644 vars/Fedora-32-default.yml delete mode 100644 vars/Fedora-33-default.yml delete mode 100644 vars/Fedora-34-default.yml delete mode 100644 vars/Fedora-35-default.yml delete mode 100644 vars/Fedora-36-default.yml delete mode 100644 vars/Fedora-37-default.yml delete mode 100644 vars/Fedora-38-default.yml delete mode 100644 vars/Fedora-39-default.yml delete mode 100644 vars/Fedora-40-default.yml delete mode 100644 vars/Fedora-41-default.yml diff --git a/tasks/Debian-default.yml b/tasks/Debian-default.yml index 2d2f16a..8d20d2f 100644 --- a/tasks/Debian-default.yml +++ b/tasks/Debian-default.yml @@ -2,8 +2,8 @@ # tasks file for ensure_os_patch - name: 'ensure Debian patch' when: - - ansible_system == 'Linux' - - ansible_pkg_mgr == 'apt' + - ansible_facts["system"] == 'Linux' + - ansible_facts["pkg_mgr"]== 'apt' ansible.builtin.apt: autoclean: 'yes' autoremove: 'yes' @@ -13,4 +13,5 @@ - 'ensure_os_patch.service_facts' - name: 'flush handlers' meta: 'flush_handlers' +... diff --git a/tasks/main.yml b/tasks/main.yml index f0cfcf8..15eb575 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -2,52 +2,52 @@ # tasks file for ensure_os_patch - name: 'include vendor / version specific tasks' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' include_tasks: file: '{{ lookup("first_found", findme ) }}' vars: findme: files: - - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' - - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml' - - '{{ ansible_distribution }}-default.yml' - - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' - - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml' - - '{{ ansible_os_family }}-default.yml' + - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' + - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' + - '{{ ansible_facts["distribution"] }}-default.yml' + - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' + - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' + - '{{ ansible_facts["os_family"] }}-default.yml' - 'default.yml' errors: 'ignore' - name: 'include variables' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' include_vars: file: '{{ lookup("first_found", findme ) }}' name: 'ensure_os_patch' vars: findme: files: - - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' - - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml' - - '{{ ansible_distribution }}-default.yml' - - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml' - - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml' - - '{{ ansible_os_family }}-default.yml' + - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' + - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' + - '{{ ansible_facts["distribution"] }}-default.yml' + - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' + - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' + - '{{ ansible_facts["os_family"] }}-default.yml' - 'default.yml' paths: - '../vars/' errors: 'ignore' - name: 'package discovery' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - packages is not defined ansible.builtin.package_facts: - name: 'service discovery' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - services is not defined ansible.builtin.service_facts: - name: 'ensure packages' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - ensure_os_patch is defined - ensure_os_patch.package_list is defined - ensure_os_patch.package_list is iterable @@ -62,8 +62,8 @@ - 'ensure_os_patch.service_facts' - name: 'ensure apt patch' when: - - ansible_system == 'Linux' - - ansible_pkg_mgr == 'apt' + - ansible_facts["system"] == 'Linux' + - ansible_facts["pkg_mgr"] == 'apt' ansible.builtin.apt: autoclean: 'yes' autoremove: 'yes' @@ -73,8 +73,8 @@ - 'ensure_os_patch.service_facts' - name: 'ensure dnf or yum patch' when: - - ansible_system == 'Linux' - - ansible_pkg_mgr == 'dnf' or ansible_pkg_mgr == 'dnf5' or ansible_pkg_mgr == 'yum' + - ansible_facts["system"] == 'Linux' + - ansible_facts["pkg_mgr"] == 'dnf' or ansible_facts["pkg_mgr"] == 'dnf5' or ansible_facts["pkg_mgr"] == 'yum' ansible.builtin.package: name: '*' state: 'latest' @@ -83,7 +83,7 @@ - 'ensure_os_patch.service_facts' - name: 'ensure services' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - ensure_os_patch is defined - ensure_os_patch.service_list is defined - ensure_os_patch.service_list is iterable diff --git a/vars/Fedora-21-default.yml b/vars/Fedora-21-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-21-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-22-default.yml b/vars/Fedora-22-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-22-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-23-default.yml b/vars/Fedora-23-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-23-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-24-default.yml b/vars/Fedora-24-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-24-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-25-default.yml b/vars/Fedora-25-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-25-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-26-default.yml b/vars/Fedora-26-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-26-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-27-default.yml b/vars/Fedora-27-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-27-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-28-default.yml b/vars/Fedora-28-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-28-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-29-default.yml b/vars/Fedora-29-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-29-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-30-default.yml b/vars/Fedora-30-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-30-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-31-default.yml b/vars/Fedora-31-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-31-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-32-default.yml b/vars/Fedora-32-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-32-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-33-default.yml b/vars/Fedora-33-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-33-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-34-default.yml b/vars/Fedora-34-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-34-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-35-default.yml b/vars/Fedora-35-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-35-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-36-default.yml b/vars/Fedora-36-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-36-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-37-default.yml b/vars/Fedora-37-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-37-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-38-default.yml b/vars/Fedora-38-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-38-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-39-default.yml b/vars/Fedora-39-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-39-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-40-default.yml b/vars/Fedora-40-default.yml deleted file mode 100644 index 2945494..0000000 --- a/vars/Fedora-40-default.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf-automatic' - state: 'present' -service_list: - - name: 'dnf-automatic.timer' - state: 'started' - enabled: 'yes' -... - diff --git a/vars/Fedora-41-default.yml b/vars/Fedora-41-default.yml deleted file mode 100644 index ddda6ef..0000000 --- a/vars/Fedora-41-default.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -# vars file for ensure_os_patch -package_list: - - name: 'dnf5-plugin-automatic' - state: 'present' -service_list: - - name: 'dnf5-automatic.timer' - state: 'started' - enabled: 'yes' -... From 2fc0ad4d34da9aaaef6b524aec2276e33667e092 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 4 May 2026 22:05:47 -0500 Subject: [PATCH 32/34] More ansible core 2.20 fixes Signed-off-by: Jason Rothstein --- tasks/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 15eb575..0a96fbc 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -38,12 +38,12 @@ - name: 'package discovery' when: - ansible_facts["system"] == 'Linux' - - packages is not defined + - ansible_facts["packages"] is not defined ansible.builtin.package_facts: - name: 'service discovery' when: - ansible_facts["system"] == 'Linux' - - services is not defined + - ansible_facts["services"] is not defined ansible.builtin.service_facts: - name: 'ensure packages' when: From 1efd9640a8feaa2175a4ac259aa6f70882c4daf2 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 14:28:22 -0500 Subject: [PATCH 33/34] Remove deplicate code Signed-off-by: Jason Rothstein --- tasks/Debian-default.yml | 17 ----------------- tasks/default.yml | 3 --- tasks/main.yml | 16 ---------------- 3 files changed, 36 deletions(-) delete mode 100644 tasks/Debian-default.yml delete mode 100644 tasks/default.yml diff --git a/tasks/Debian-default.yml b/tasks/Debian-default.yml deleted file mode 100644 index 8d20d2f..0000000 --- a/tasks/Debian-default.yml +++ /dev/null @@ -1,17 +0,0 @@ ---- -# tasks file for ensure_os_patch -- name: 'ensure Debian patch' - when: - - ansible_facts["system"] == 'Linux' - - ansible_facts["pkg_mgr"]== 'apt' - ansible.builtin.apt: - autoclean: 'yes' - autoremove: 'yes' - upgrade: 'dist' - notify: - - 'ensure_os_patch.package_facts' - - 'ensure_os_patch.service_facts' -- name: 'flush handlers' - meta: 'flush_handlers' -... - diff --git a/tasks/default.yml b/tasks/default.yml deleted file mode 100644 index 546bf13..0000000 --- a/tasks/default.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -# tasks file for ensure_os_patch - diff --git a/tasks/main.yml b/tasks/main.yml index 0a96fbc..d0456f3 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,21 +1,5 @@ --- # tasks file for ensure_os_patch -- name: 'include vendor / version specific tasks' - when: - - ansible_facts["system"] == 'Linux' - include_tasks: - file: '{{ lookup("first_found", findme ) }}' - vars: - findme: - files: - - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' - - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' - - '{{ ansible_facts["distribution"] }}-default.yml' - - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' - - '{{ ansible_facts["os_family"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' - - '{{ ansible_facts["os_family"] }}-default.yml' - - 'default.yml' - errors: 'ignore' - name: 'include variables' when: - ansible_facts["system"] == 'Linux' From 0092e5d0892f4820426635128d0e4a150f2ee1a0 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 18:13:53 -0500 Subject: [PATCH 34/34] More ansible core 2.20 fixes Signed-off-by: Jason Rothstein --- handlers/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/handlers/main.yml b/handlers/main.yml index 6017a18..797fda6 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -6,14 +6,14 @@ ansible.builtin.service_facts: - name: 'ensure_os_patch.service_reload' when: - - ansible_system == 'Linux' - - ansible_service_mgr == 'systemd' + - ansible_facts["system"] == 'Linux' + - ansible_facts["service_mgr"] == 'systemd' - ensure_os_patch is defined ansible.builtin.systemd: daemon_reload: 'yes' - name: 'ensure_os_patch.service_restart' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - ensure_os_patch is defined - ensure_os_patch.service_list is defined - ensure_os_patch.service_list is iterable