From d6c9fae8df874d81ed22ea592ee41416ee376ed0 Mon Sep 17 00:00:00 2001 From: AnsibleRoles <> Date: Mon, 30 Dec 2019 21:36:05 +0000 Subject: [PATCH 01/27] Initial commit --- .gitignore | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 2 ++ 2 files changed, 92 insertions(+) create mode 100644 .gitignore create mode 100644 README.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6caeae7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,90 @@ +# ---> Ansible +*.retry + +# ---> 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~ + +# ---> 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* + +# ---> 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 + diff --git a/README.md b/README.md new file mode 100644 index 0000000..5b930a0 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# ensure_repo_epel + From 6d66539a4f349d1d9fc9d563fedaf37372ad5a06 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 30 Dec 2019 15:52:52 -0600 Subject: [PATCH 02/27] Deploy EPEL for all EL class OS --- .gitignore | 75 ++++++++++++++++++++++------------------ .travis.yml | 29 ++++++++++++++++ README.md | 38 +++++++++++++++++++- defaults/main.yml | 2 ++ handlers/main.yml | 7 ++++ meta/main.yml | 53 ++++++++++++++++++++++++++++ tasks/main.yml | 45 ++++++++++++++++++++++++ tests/inventory | 2 ++ tests/test.yml | 5 +++ vars/RedHat-6-i386.yml | 5 +++ vars/RedHat-6-x86_64.yml | 5 +++ vars/RedHat-7-x86_64.yml | 5 +++ vars/RedHat-8-x86_64.yml | 5 +++ vars/default.yml | 2 ++ vars/main.yml | 2 ++ 15 files changed, 245 insertions(+), 35 deletions(-) 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/RedHat-6-i386.yml create mode 100644 vars/RedHat-6-x86_64.yml create mode 100644 vars/RedHat-7-x86_64.yml create mode 100644 vars/RedHat-8-x86_64.yml create mode 100644 vars/default.yml create mode 100644 vars/main.yml diff --git a/.gitignore b/.gitignore index 6caeae7..ce59d0b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,40 +1,6 @@ # ---> Ansible *.retry -# ---> 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~ - -# ---> 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* - # ---> Windows # Windows thumbnail cache files Thumbs.db @@ -88,3 +54,44 @@ 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/.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 5b930a0..1c6344a 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,38 @@ -# ensure_repo_epel +Role Name +========= +Ensure Repository EPEL + +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..1781da7 --- /dev/null +++ b/defaults/main.yml @@ -0,0 +1,2 @@ +--- +# defaults file for ensure_repo_epel \ No newline at end of file diff --git a/handlers/main.yml b/handlers/main.yml new file mode 100644 index 0000000..fba23e3 --- /dev/null +++ b/handlers/main.yml @@ -0,0 +1,7 @@ +--- +# handlers file for ensure_repo_epel +- name: 'ensure_repo_epel.package_facts' + package_facts: +- name: 'ensure_repo_epel.service_facts' + service_facts: + diff --git a/meta/main.yml b/meta/main.yml new file mode 100644 index 0000000..6566e11 --- /dev/null +++ b/meta/main.yml @@ -0,0 +1,53 @@ +galaxy_info: + author: Jason Rothstein + description: Ensure EPEL on EL + 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. + diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..58f1ce1 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,45 @@ +--- +# tasks file for ensure_repo_epel +- name: 'include variables' + when: + - ansible_system == 'Linux' + include_vars: + file: '{{ lookup("first_found", findme ) }}' + name: 'ensure_repo_epel' + 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' + - packages is not defined + package_facts: +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ensure_repo_epel is defined + - ensure_repo_epel.package_list is defined + - ensure_repo_epel.package_list is iterable + - packages[item.name] is not defined + package: + name: '{{ item.url }}' + state: '{{ item.state }}' + loop: '{{ ensure_repo_epel.package_list }}' + loop_control: + label: '{{ item.name }} from {{ item.url }} will be {{ item.state }}' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.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..18381e8 --- /dev/null +++ b/tests/test.yml @@ -0,0 +1,5 @@ +--- +- hosts: localhost + remote_user: root + roles: + - ensure_repo_epel diff --git a/vars/RedHat-6-i386.yml b/vars/RedHat-6-i386.yml new file mode 100644 index 0000000..4c4792c --- /dev/null +++ b/vars/RedHat-6-i386.yml @@ -0,0 +1,5 @@ +--- +# vars file for ensure_repo_epel +package_list: + - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' } + diff --git a/vars/RedHat-6-x86_64.yml b/vars/RedHat-6-x86_64.yml new file mode 100644 index 0000000..4c4792c --- /dev/null +++ b/vars/RedHat-6-x86_64.yml @@ -0,0 +1,5 @@ +--- +# vars file for ensure_repo_epel +package_list: + - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' } + diff --git a/vars/RedHat-7-x86_64.yml b/vars/RedHat-7-x86_64.yml new file mode 100644 index 0000000..b089d11 --- /dev/null +++ b/vars/RedHat-7-x86_64.yml @@ -0,0 +1,5 @@ +--- +# vars file for ensure_repo_epel +package_list: + - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' } + diff --git a/vars/RedHat-8-x86_64.yml b/vars/RedHat-8-x86_64.yml new file mode 100644 index 0000000..7b618dc --- /dev/null +++ b/vars/RedHat-8-x86_64.yml @@ -0,0 +1,5 @@ +--- +# vars file for ensure_repo_epel +package_list: + - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' } + diff --git a/vars/default.yml b/vars/default.yml new file mode 100644 index 0000000..87741af --- /dev/null +++ b/vars/default.yml @@ -0,0 +1,2 @@ +--- +# vars file for ensure_repo_epel diff --git a/vars/main.yml b/vars/main.yml new file mode 100644 index 0000000..ebefd89 --- /dev/null +++ b/vars/main.yml @@ -0,0 +1,2 @@ +--- +# vars file for ensure_repo_epel \ No newline at end of file From ba980129479ed44f56ac2744c7884fefb0279ebd Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 28 Mar 2020 17:34:59 -0500 Subject: [PATCH 03/27] Update license to be correct --- meta/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/main.yml b/meta/main.yml index 6566e11..899f0ac 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -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 9bd038d8d115d638a25b798624c6ff8adb69e34b Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 28 Mar 2020 17:36:22 -0500 Subject: [PATCH 04/27] Make dictionaries maintainable --- vars/RedHat-6-i386.yml | 4 +++- vars/RedHat-6-x86_64.yml | 4 +++- vars/RedHat-7-x86_64.yml | 4 +++- vars/RedHat-8-x86_64.yml | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/vars/RedHat-6-i386.yml b/vars/RedHat-6-i386.yml index 4c4792c..f7b3c92 100644 --- a/vars/RedHat-6-i386.yml +++ b/vars/RedHat-6-i386.yml @@ -1,5 +1,7 @@ --- # vars file for ensure_repo_epel package_list: - - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' } + - name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' diff --git a/vars/RedHat-6-x86_64.yml b/vars/RedHat-6-x86_64.yml index 4c4792c..f7b3c92 100644 --- a/vars/RedHat-6-x86_64.yml +++ b/vars/RedHat-6-x86_64.yml @@ -1,5 +1,7 @@ --- # vars file for ensure_repo_epel package_list: - - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' } + - name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' diff --git a/vars/RedHat-7-x86_64.yml b/vars/RedHat-7-x86_64.yml index b089d11..8ca24dd 100644 --- a/vars/RedHat-7-x86_64.yml +++ b/vars/RedHat-7-x86_64.yml @@ -1,5 +1,7 @@ --- # vars file for ensure_repo_epel package_list: - - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' } + - name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' diff --git a/vars/RedHat-8-x86_64.yml b/vars/RedHat-8-x86_64.yml index 7b618dc..43d8877 100644 --- a/vars/RedHat-8-x86_64.yml +++ b/vars/RedHat-8-x86_64.yml @@ -1,5 +1,7 @@ --- # vars file for ensure_repo_epel package_list: - - { name: 'epel-release', state: 'present', url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' } + - name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' From 34f2e118b423ee0254778dda2327415337d3f524 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 22 Nov 2020 15:50:07 -0600 Subject: [PATCH 05/27] Support Collections, and native epel-release packages --- handlers/main.yml | 4 ++-- tasks/main.yml | 33 ++++----------------------------- vars/RedHat-6-i386.yml | 7 ------- vars/RedHat-6-x86_64.yml | 7 ------- vars/RedHat-7-x86_64.yml | 7 ------- vars/RedHat-8-x86_64.yml | 7 ------- vars/default.yml | 2 -- 7 files changed, 6 insertions(+), 61 deletions(-) delete mode 100644 vars/RedHat-6-i386.yml delete mode 100644 vars/RedHat-6-x86_64.yml delete mode 100644 vars/RedHat-7-x86_64.yml delete mode 100644 vars/RedHat-8-x86_64.yml delete mode 100644 vars/default.yml diff --git a/handlers/main.yml b/handlers/main.yml index fba23e3..dab79d8 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -1,7 +1,7 @@ --- # handlers file for ensure_repo_epel - name: 'ensure_repo_epel.package_facts' - package_facts: + ansible.builtin.package_facts: - name: 'ensure_repo_epel.service_facts' - service_facts: + ansible.builtin.service_facts: diff --git a/tasks/main.yml b/tasks/main.yml index 58f1ce1..56591f8 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,24 +1,5 @@ --- # tasks file for ensure_repo_epel -- name: 'include variables' - when: - - ansible_system == 'Linux' - include_vars: - file: '{{ lookup("first_found", findme ) }}' - name: 'ensure_repo_epel' - 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' @@ -27,16 +8,10 @@ - name: 'ensure packages' when: - ansible_system == 'Linux' - - ensure_repo_epel is defined - - ensure_repo_epel.package_list is defined - - ensure_repo_epel.package_list is iterable - - packages[item.name] is not defined - package: - name: '{{ item.url }}' - state: '{{ item.state }}' - loop: '{{ ensure_repo_epel.package_list }}' - loop_control: - label: '{{ item.name }} from {{ item.url }} will be {{ item.state }}' + - packages['epel-release'] is not defined + ansible.builtin.package: + name: 'epel-release' + state: 'installed' notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' diff --git a/vars/RedHat-6-i386.yml b/vars/RedHat-6-i386.yml deleted file mode 100644 index f7b3c92..0000000 --- a/vars/RedHat-6-i386.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# vars file for ensure_repo_epel -package_list: - - name: 'epel-release' - state: 'present' - url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' - diff --git a/vars/RedHat-6-x86_64.yml b/vars/RedHat-6-x86_64.yml deleted file mode 100644 index f7b3c92..0000000 --- a/vars/RedHat-6-x86_64.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# vars file for ensure_repo_epel -package_list: - - name: 'epel-release' - state: 'present' - url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' - diff --git a/vars/RedHat-7-x86_64.yml b/vars/RedHat-7-x86_64.yml deleted file mode 100644 index 8ca24dd..0000000 --- a/vars/RedHat-7-x86_64.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# vars file for ensure_repo_epel -package_list: - - name: 'epel-release' - state: 'present' - url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' - diff --git a/vars/RedHat-8-x86_64.yml b/vars/RedHat-8-x86_64.yml deleted file mode 100644 index 43d8877..0000000 --- a/vars/RedHat-8-x86_64.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# vars file for ensure_repo_epel -package_list: - - name: 'epel-release' - state: 'present' - url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' - diff --git a/vars/default.yml b/vars/default.yml deleted file mode 100644 index 87741af..0000000 --- a/vars/default.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# vars file for ensure_repo_epel From 61e01617f12b61493aa3649feeda997bc7e0fcf8 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 22 Nov 2020 16:17:22 -0600 Subject: [PATCH 06/27] Enable OracleLinux to use EPEL (Different method from CentOS) --- tasks/main.yml | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index 56591f8..f3505b5 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -8,6 +8,7 @@ - name: 'ensure packages' when: - ansible_system == 'Linux' + - ansible_distribution == 'CentOS' - packages['epel-release'] is not defined ansible.builtin.package: name: 'epel-release' @@ -15,6 +16,44 @@ notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Oracle' + - ansible_distribution_major_version|int == 6 + - packages['epel-release'] is not defined + ansible.builtin.package: + name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' + state: 'installed' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Oracle' + - ansible_distribution_major_version|int == 7 + - packages['oracle-epel-release-el7'] is not defined + ansible.builtin.package: + name: 'oracle-epel-release-el7' + state: 'installed' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' +- name: 'flush handlers' + meta: 'flush_handlers' +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Oracle' + - ansible_distribution_major_version|int == 8 + - packages['oracle-epel-release-el8'] is not defined + ansible.builtin.package: + name: 'oracle-epel-release-el8' + state: 'installed' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' - name: 'flush handlers' meta: 'flush_handlers' From dfbfedb49563d1e1c018cde98acb3468f5e1f1b0 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 29 Nov 2020 21:34:09 -0600 Subject: [PATCH 07/27] Be specific with Oracle Linux and EPEL RPMs --- README.md | 2 +- tasks/main.yml | 26 +++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1c6344a..c91dac3 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/tasks/main.yml b/tasks/main.yml index f3505b5..a801a1a 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -4,7 +4,7 @@ when: - ansible_system == 'Linux' - packages is not defined - package_facts: + ansible.builtin.package_facts: - name: 'ensure packages' when: - ansible_system == 'Linux' @@ -28,6 +28,30 @@ notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Oracle' + - ansible_distribution_major_version|int == 7 + - packages['epel-release'] is not defined + ansible.builtin.package: + name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' + state: 'installed' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' +- name: 'ensure packages' + when: + - ansible_system == 'Linux' + - ansible_distribution == 'Oracle' + - ansible_distribution_major_version|int == 8 + - packages['epel-release'] is not defined + ansible.builtin.package: + name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' + state: 'installed' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' - name: 'ensure packages' when: - ansible_system == 'Linux' From 2b50b89402f14d48d0cb3b367760dc910f1b0861 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 29 Nov 2020 21:38:58 -0600 Subject: [PATCH 08/27] disable gpg check on rpm install from URLs --- tasks/main.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index a801a1a..976a2a8 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -23,6 +23,7 @@ - ansible_distribution_major_version|int == 6 - packages['epel-release'] is not defined ansible.builtin.package: + disable_gpg_check: 'yes' name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' state: 'installed' notify: @@ -35,6 +36,7 @@ - ansible_distribution_major_version|int == 7 - packages['epel-release'] is not defined ansible.builtin.package: + disable_gpg_check: 'yes' name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' state: 'installed' notify: @@ -47,6 +49,7 @@ - ansible_distribution_major_version|int == 8 - packages['epel-release'] is not defined ansible.builtin.package: + disable_gpg_check: 'yes' name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' state: 'installed' notify: From cb3b64616e6b6bb95f2941bb5e3dbc8a409d6038 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 6 Dec 2020 19:57:08 -0600 Subject: [PATCH 09/27] Use standardized / generic method to install packages for EPEL --- tasks/main.yml | 98 ++++++++++++--------------------------- vars/CentOS-6-default.yml | 7 +++ vars/CentOS-7-default.yml | 7 +++ vars/CentOS-8-default.yml | 8 ++++ vars/default.yml | 2 + 5 files changed, 53 insertions(+), 69 deletions(-) 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/default.yml diff --git a/tasks/main.yml b/tasks/main.yml index 976a2a8..3c42911 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,5 +1,24 @@ --- # tasks file for ensure_repo_epel +- name: 'include variables' + when: + - ansible_system == 'Linux' + include_vars: + file: '{{ lookup("first_found", findme ) }}' + name: 'ensure_repo_epel' + 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' @@ -8,76 +27,17 @@ - name: 'ensure packages' when: - ansible_system == 'Linux' - - ansible_distribution == 'CentOS' - - packages['epel-release'] is not defined + - ensure_repo_epel is defined + - ensure_repo_epel.requirements_package_list is defined + - ensure_repo_epel.requirements_package_list is iterable + - packages[item.name] is not defined ansible.builtin.package: - name: 'epel-release' - state: 'installed' - notify: - - 'ensure_repo_epel.package_facts' - - 'ensure_repo_epel.service_facts' -- name: 'ensure packages' - when: - - ansible_system == 'Linux' - - ansible_distribution == 'Oracle' - - ansible_distribution_major_version|int == 6 - - packages['epel-release'] is not defined - ansible.builtin.package: - disable_gpg_check: 'yes' - name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm' - state: 'installed' - notify: - - 'ensure_repo_epel.package_facts' - - 'ensure_repo_epel.service_facts' -- name: 'ensure packages' - when: - - ansible_system == 'Linux' - - ansible_distribution == 'Oracle' - - ansible_distribution_major_version|int == 7 - - packages['epel-release'] is not defined - ansible.builtin.package: - disable_gpg_check: 'yes' - name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm' - state: 'installed' - notify: - - 'ensure_repo_epel.package_facts' - - 'ensure_repo_epel.service_facts' -- name: 'ensure packages' - when: - - ansible_system == 'Linux' - - ansible_distribution == 'Oracle' - - ansible_distribution_major_version|int == 8 - - packages['epel-release'] is not defined - ansible.builtin.package: - disable_gpg_check: 'yes' - name: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm' - state: 'installed' - notify: - - 'ensure_repo_epel.package_facts' - - 'ensure_repo_epel.service_facts' -- name: 'ensure packages' - when: - - ansible_system == 'Linux' - - ansible_distribution == 'Oracle' - - ansible_distribution_major_version|int == 7 - - packages['oracle-epel-release-el7'] is not defined - ansible.builtin.package: - name: 'oracle-epel-release-el7' - state: 'installed' - notify: - - 'ensure_repo_epel.package_facts' - - 'ensure_repo_epel.service_facts' -- name: 'flush handlers' - meta: 'flush_handlers' -- name: 'ensure packages' - when: - - ansible_system == 'Linux' - - ansible_distribution == 'Oracle' - - ansible_distribution_major_version|int == 8 - - packages['oracle-epel-release-el8'] is not defined - ansible.builtin.package: - name: 'oracle-epel-release-el8' - state: 'installed' + disable_gpg_check: '{{ item.disable_gpg_check | omit(default) }}' + name: '{{ item.url }}' + state: '{{ item.state }}' + loop: '{{ ensure_repo_epel.requirements_package_list }}' + loop_control: + label: '{{ item.name }} will be {{ item.state }}' notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' diff --git a/vars/CentOS-6-default.yml b/vars/CentOS-6-default.yml new file mode 100644 index 0000000..7160069 --- /dev/null +++ b/vars/CentOS-6-default.yml @@ -0,0 +1,7 @@ +--- +# vars file for ensure_repo_epel +package_list: + - name: 'epel-release' + state: 'present' + url: 'epel-release' + diff --git a/vars/CentOS-7-default.yml b/vars/CentOS-7-default.yml new file mode 100644 index 0000000..7160069 --- /dev/null +++ b/vars/CentOS-7-default.yml @@ -0,0 +1,7 @@ +--- +# vars file for ensure_repo_epel +package_list: + - name: 'epel-release' + state: 'present' + url: 'epel-release' + diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml new file mode 100644 index 0000000..5813ee8 --- /dev/null +++ b/vars/CentOS-8-default.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - name: 'epel-release' + disable_gpg_check: 'yes' + state: 'present' + url: 'epel-release' + diff --git a/vars/default.yml b/vars/default.yml new file mode 100644 index 0000000..ebefd89 --- /dev/null +++ b/vars/default.yml @@ -0,0 +1,2 @@ +--- +# vars file for ensure_repo_epel \ No newline at end of file From 2d50aa0a7d9df59cb60827fa8e30e71bf1c151fb Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 6 Dec 2020 21:14:18 -0600 Subject: [PATCH 10/27] Fix syntax to be default(omit) --- tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index 3c42911..cb03b2d 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -32,7 +32,7 @@ - ensure_repo_epel.requirements_package_list is iterable - packages[item.name] is not defined ansible.builtin.package: - disable_gpg_check: '{{ item.disable_gpg_check | omit(default) }}' + disable_gpg_check: '{{ item.disable_gpg_check | default(omit) }}' name: '{{ item.url }}' state: '{{ item.state }}' loop: '{{ ensure_repo_epel.requirements_package_list }}' From c9d4e3933dde57b573997dbd96b812adca69634f Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Mon, 7 Dec 2020 05:55:14 -0600 Subject: [PATCH 11/27] Sort the keys --- vars/CentOS-8-default.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vars/CentOS-8-default.yml b/vars/CentOS-8-default.yml index 5813ee8..8e42308 100644 --- a/vars/CentOS-8-default.yml +++ b/vars/CentOS-8-default.yml @@ -1,8 +1,8 @@ --- # vars file for ensure_repo_epel package_list: - - name: 'epel-release' - disable_gpg_check: 'yes' + - disable_gpg_check: 'yes' + name: 'epel-release' state: 'present' url: 'epel-release' From ad8f19fe147b517848e5ad98fbeae1e73ce756c6 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 20 Dec 2020 07:42:49 -0600 Subject: [PATCH 12/27] Do service discovery as well as package discovery --- tasks/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index cb03b2d..b4f340b 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -24,6 +24,11 @@ - ansible_system == 'Linux' - packages is not defined ansible.builtin.package_facts: +- name: 'service discovery' + when: + - ansible_system == 'Linux' + - services is not defined + ansible.builtin.service_facts: - name: 'ensure packages' when: - ansible_system == 'Linux' From 808e9a0adb8123cae88f55dfad78bd40d30ef5e5 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 Jul 2021 03:54:17 +0000 Subject: [PATCH 13/27] Update task list to match base template --- tasks/main.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index b4f340b..7a91ef3 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -46,6 +46,16 @@ notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' + ansible.builtin.service: + enabled: '{{ item.enabled }}' + name: '{{ item.name }}' + state: '{{ item.state }}' + loop: '{{ ensure_repo_epel.service_list }}' + loop_control: + label: '{{ item.name }} will be {{ item.state }}' + notify: + - 'ensure_repo_epel.package_facts' + - 'ensure_repo_epel.service_facts' - name: 'flush handlers' meta: 'flush_handlers' From 449ca519c0c1916313c7cf1420641c3019bc33bb Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 Jul 2021 04:13:50 +0000 Subject: [PATCH 14/27] Missing code... --- tasks/main.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tasks/main.yml b/tasks/main.yml index 7a91ef3..ed6bab5 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -46,6 +46,12 @@ notify: - 'ensure_repo_epel.package_facts' - 'ensure_repo_epel.service_facts' +- name: 'ensure services' + when: + - ansible_system == 'Linux' + - ensure_clamav is defined + - ensure_clamav.service_list is defined + - ensure_clamav.service_list is iterable ansible.builtin.service: enabled: '{{ item.enabled }}' name: '{{ item.name }}' From 70ba1bb49711075c7cb825d75e428b7a2ef5a2dc Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 Jul 2021 04:15:17 +0000 Subject: [PATCH 15/27] Correct typo --- tasks/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index ed6bab5..aebd2da 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -49,9 +49,9 @@ - name: 'ensure services' when: - ansible_system == 'Linux' - - ensure_clamav is defined - - ensure_clamav.service_list is defined - - ensure_clamav.service_list is iterable + - ensure_repo_epel is defined + - ensure_repo_epel.service_list is defined + - ensure_repo_epel.service_list is iterable ansible.builtin.service: enabled: '{{ item.enabled }}' name: '{{ item.name }}' From 5c439dcf5cecf725ea745f01eb59c116a8d0d399 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 5 Jun 2022 16:29:55 -0500 Subject: [PATCH 16/27] Update handlers --- handlers/main.yml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/handlers/main.yml b/handlers/main.yml index dab79d8..2a958a4 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -4,4 +4,24 @@ ansible.builtin.package_facts: - name: 'ensure_repo_epel.service_facts' ansible.builtin.service_facts: - +- name: 'ensure_repo_epel.service_reload' + when: + - ansible_system == 'Linux' + - ansible_service_mgr == 'systemd' + - ensure_repo_epel is defined + ansible.builtin.systemd: + daemon_reload: 'yes' +- name: 'ensure_repo_epel.services' + when: + - ansible_system == 'Linux' + - ensure_repo_epel is defined + - ensure_repo_epel.service_list is defined + - ensure_repo_epel.service_list is iterable + - item.state == 'started' + ansible.builtin.service: + enabled: '{{ item.enabled }}' + name: '{{ item.name }}' + state: 'restarted' + loop: '{{ ensure_repo_epel.service_list }}' + loop_control: + label: '{{ item.name }} will be restarted' From 936af40aed774e163ddb3da5170464a6255ea861 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 23 Apr 2023 16:41:40 -0500 Subject: [PATCH 17/27] Add CentOS 9 --- vars/CentOS-9-default.yml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 vars/CentOS-9-default.yml diff --git a/vars/CentOS-9-default.yml b/vars/CentOS-9-default.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/CentOS-9-default.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + From cf28d569147e2b6040169d931d6efa2b7df2595b Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 30 Jun 2024 19:18:34 -0500 Subject: [PATCH 18/27] Enable EPEL for Alma/Oracle/Rocky 9 Signed-off-by: Jason Rothstein --- vars/AlmaLinux-9-defualt.yml | 8 ++++++++ vars/OracleLinux-9-defualt.yml | 16 ++++++++++++++++ vars/Rocky-9-default.yml | 8 ++++++++ 3 files changed, 32 insertions(+) create mode 100644 vars/AlmaLinux-9-defualt.yml create mode 100644 vars/OracleLinux-9-defualt.yml create mode 100644 vars/Rocky-9-default.yml diff --git a/vars/AlmaLinux-9-defualt.yml b/vars/AlmaLinux-9-defualt.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/AlmaLinux-9-defualt.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + diff --git a/vars/OracleLinux-9-defualt.yml b/vars/OracleLinux-9-defualt.yml new file mode 100644 index 0000000..cdf47c4 --- /dev/null +++ b/vars/OracleLinux-9-defualt.yml @@ -0,0 +1,16 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'oracle-epel-release-el9' + state: 'present' + url: 'oracle-epel-release-el9' + - disable_gpg_check: 'yes' + name: 'oraclelinux-develer-release-el9' + state: 'present' + url: 'oraclelinux-develer-release-el9' + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm' + diff --git a/vars/Rocky-9-default.yml b/vars/Rocky-9-default.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/Rocky-9-default.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + From 0030c4dbcf59730cd4060e269c5c1a53718978c7 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 25 May 2025 20:12:59 -0500 Subject: [PATCH 19/27] Hanlder 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 2a958a4..4f76005 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -11,7 +11,7 @@ - ensure_repo_epel is defined ansible.builtin.systemd: daemon_reload: 'yes' -- name: 'ensure_repo_epel.services' +- name: 'ensure_repo_epel.service_restart' when: - ansible_system == 'Linux' - ensure_repo_epel is defined @@ -25,3 +25,5 @@ loop: '{{ ensure_repo_epel.service_list }}' loop_control: label: '{{ item.name }} will be restarted' +... + diff --git a/tasks/main.yml b/tasks/main.yml index aebd2da..5f7236c 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -64,4 +64,5 @@ - 'ensure_repo_epel.service_facts' - name: 'flush handlers' meta: 'flush_handlers' +... From b3904985fa432ea8be6d2a804e4bdc4db89c18f5 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Thu, 30 Apr 2026 19:40:22 -0500 Subject: [PATCH 20/27] Fix OL9, add Alma, CentOS, Oracle, and Rocky 10 Signed-off-by: Jason Rothstein --- vars/AlmaLinux-10-defualt.yml | 8 ++++++++ vars/CentOS-10-default.yml | 8 ++++++++ vars/OracleLinux-10-defualt.yml | 16 ++++++++++++++++ vars/OracleLinux-9-defualt.yml | 4 ++-- vars/Rocky-10-default.yml | 8 ++++++++ 5 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 vars/AlmaLinux-10-defualt.yml create mode 100644 vars/CentOS-10-default.yml create mode 100644 vars/OracleLinux-10-defualt.yml create mode 100644 vars/Rocky-10-default.yml diff --git a/vars/AlmaLinux-10-defualt.yml b/vars/AlmaLinux-10-defualt.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/AlmaLinux-10-defualt.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + diff --git a/vars/CentOS-10-default.yml b/vars/CentOS-10-default.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/CentOS-10-default.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + diff --git a/vars/OracleLinux-10-defualt.yml b/vars/OracleLinux-10-defualt.yml new file mode 100644 index 0000000..82ac6cd --- /dev/null +++ b/vars/OracleLinux-10-defualt.yml @@ -0,0 +1,16 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'oracle-epel-release-el10' + state: 'present' + url: 'oracle-epel-release-el10' + - disable_gpg_check: 'yes' + name: 'oraclelinux-developer-release-el10' + state: 'present' + url: 'oraclelinux-developer-release-el10' + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm' + diff --git a/vars/OracleLinux-9-defualt.yml b/vars/OracleLinux-9-defualt.yml index cdf47c4..92bae84 100644 --- a/vars/OracleLinux-9-defualt.yml +++ b/vars/OracleLinux-9-defualt.yml @@ -6,9 +6,9 @@ package_list: state: 'present' url: 'oracle-epel-release-el9' - disable_gpg_check: 'yes' - name: 'oraclelinux-develer-release-el9' + name: 'oraclelinux-developer-release-el9' state: 'present' - url: 'oraclelinux-develer-release-el9' + url: 'oraclelinux-developer-release-el9' - disable_gpg_check: 'yes' name: 'epel-release' state: 'present' diff --git a/vars/Rocky-10-default.yml b/vars/Rocky-10-default.yml new file mode 100644 index 0000000..8e42308 --- /dev/null +++ b/vars/Rocky-10-default.yml @@ -0,0 +1,8 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'epel-release' + From 4324ca7474d57c1cfdac18385558fb5ab3925ecb Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sat, 2 May 2026 23:49:41 -0500 Subject: [PATCH 21/27] Fix Alma and Oracle 9 and 10 spelling Signed-off-by: Jason Rothstein --- vars/{AlmaLinux-10-defualt.yml => AlmaLinux-10-default.yml} | 0 vars/{AlmaLinux-9-defualt.yml => AlmaLinux-9-default.yml} | 0 vars/{OracleLinux-10-defualt.yml => OracleLinux-10-default.yml} | 0 vars/{OracleLinux-9-defualt.yml => OracleLinux-9-default.yml} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename vars/{AlmaLinux-10-defualt.yml => AlmaLinux-10-default.yml} (100%) rename vars/{AlmaLinux-9-defualt.yml => AlmaLinux-9-default.yml} (100%) rename vars/{OracleLinux-10-defualt.yml => OracleLinux-10-default.yml} (100%) rename vars/{OracleLinux-9-defualt.yml => OracleLinux-9-default.yml} (100%) diff --git a/vars/AlmaLinux-10-defualt.yml b/vars/AlmaLinux-10-default.yml similarity index 100% rename from vars/AlmaLinux-10-defualt.yml rename to vars/AlmaLinux-10-default.yml diff --git a/vars/AlmaLinux-9-defualt.yml b/vars/AlmaLinux-9-default.yml similarity index 100% rename from vars/AlmaLinux-9-defualt.yml rename to vars/AlmaLinux-9-default.yml diff --git a/vars/OracleLinux-10-defualt.yml b/vars/OracleLinux-10-default.yml similarity index 100% rename from vars/OracleLinux-10-defualt.yml rename to vars/OracleLinux-10-default.yml diff --git a/vars/OracleLinux-9-defualt.yml b/vars/OracleLinux-9-default.yml similarity index 100% rename from vars/OracleLinux-9-defualt.yml rename to vars/OracleLinux-9-default.yml From fa10a9340edf6120e5bf184d5b6f0b9f898e8f79 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Sun, 3 May 2026 01:03:04 -0500 Subject: [PATCH 22/27] Fix package_list variable name Signed-off-by: Jason Rothstein --- tasks/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 5f7236c..b477b4c 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -33,14 +33,14 @@ when: - ansible_system == 'Linux' - ensure_repo_epel is defined - - ensure_repo_epel.requirements_package_list is defined - - ensure_repo_epel.requirements_package_list is iterable + - ensure_repo_epel.package_list is defined + - ensure_repo_epel.package_list is iterable - packages[item.name] is not defined ansible.builtin.package: disable_gpg_check: '{{ item.disable_gpg_check | default(omit) }}' name: '{{ item.url }}' state: '{{ item.state }}' - loop: '{{ ensure_repo_epel.requirements_package_list }}' + loop: '{{ ensure_repo_epel.package_list }}' loop_control: label: '{{ item.name }} will be {{ item.state }}' notify: From 8ca1a1fb75e324ae29caae495dc4f48594938490 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 14:06:42 -0500 Subject: [PATCH 23/27] Ansible Core 2.20 fixes and Supported OS fixes Signed-off-by: Jason Rothstein --- tasks/main.yml | 22 +++++++++---------- ...-6-default.yml => AlmaLinux-8-default.yml} | 3 ++- vars/OracleLinux-8-default.yml | 16 ++++++++++++++ ...ntOS-7-default.yml => Rocky-8-default.yml} | 3 ++- 4 files changed, 31 insertions(+), 13 deletions(-) rename vars/{CentOS-6-default.yml => AlmaLinux-8-default.yml} (64%) create mode 100644 vars/OracleLinux-8-default.yml rename vars/{CentOS-7-default.yml => Rocky-8-default.yml} (64%) diff --git a/tasks/main.yml b/tasks/main.yml index b477b4c..beefdbf 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -2,18 +2,18 @@ # tasks file for ensure_repo_epel - name: 'include variables' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' include_vars: file: '{{ lookup("first_found", findme ) }}' name: 'ensure_repo_epel' 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_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_architecture }}.yml' + - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' + - '{{ ansible_facts["distribution"] }}-default.yml' + - '{{ ansible_os_family }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_architecture }}.yml' + - '{{ ansible_os_family }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' - '{{ ansible_os_family }}-default.yml' - 'default.yml' paths: @@ -21,17 +21,17 @@ errors: 'ignore' - name: 'package discovery' when: - - ansible_system == 'Linux' - - packages is not defined + - ansible_facts["system"] == 'Linux' + - ansible_facts["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_repo_epel is defined - ensure_repo_epel.package_list is defined - ensure_repo_epel.package_list is iterable @@ -48,7 +48,7 @@ - 'ensure_repo_epel.service_facts' - name: 'ensure services' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - ensure_repo_epel is defined - ensure_repo_epel.service_list is defined - ensure_repo_epel.service_list is iterable diff --git a/vars/CentOS-6-default.yml b/vars/AlmaLinux-8-default.yml similarity index 64% rename from vars/CentOS-6-default.yml rename to vars/AlmaLinux-8-default.yml index 7160069..8e42308 100644 --- a/vars/CentOS-6-default.yml +++ b/vars/AlmaLinux-8-default.yml @@ -1,7 +1,8 @@ --- # vars file for ensure_repo_epel package_list: - - name: 'epel-release' + - disable_gpg_check: 'yes' + name: 'epel-release' state: 'present' url: 'epel-release' diff --git a/vars/OracleLinux-8-default.yml b/vars/OracleLinux-8-default.yml new file mode 100644 index 0000000..92bae84 --- /dev/null +++ b/vars/OracleLinux-8-default.yml @@ -0,0 +1,16 @@ +--- +# vars file for ensure_repo_epel +package_list: + - disable_gpg_check: 'yes' + name: 'oracle-epel-release-el9' + state: 'present' + url: 'oracle-epel-release-el9' + - disable_gpg_check: 'yes' + name: 'oraclelinux-developer-release-el9' + state: 'present' + url: 'oraclelinux-developer-release-el9' + - disable_gpg_check: 'yes' + name: 'epel-release' + state: 'present' + url: 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm' + diff --git a/vars/CentOS-7-default.yml b/vars/Rocky-8-default.yml similarity index 64% rename from vars/CentOS-7-default.yml rename to vars/Rocky-8-default.yml index 7160069..8e42308 100644 --- a/vars/CentOS-7-default.yml +++ b/vars/Rocky-8-default.yml @@ -1,7 +1,8 @@ --- # vars file for ensure_repo_epel package_list: - - name: 'epel-release' + - disable_gpg_check: 'yes' + name: 'epel-release' state: 'present' url: 'epel-release' From 0f63b7e149c0e9a7a89d0a4a93ab9f7e9841a043 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 15:01:52 -0500 Subject: [PATCH 24/27] 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 beefdbf..f520bb0 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -9,10 +9,10 @@ vars: findme: files: - - '{{ ansible_facts["distribution"] }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_architecture }}.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_os_family }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_architecture }}.yml' + - '{{ ansible_os_family }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' - '{{ ansible_os_family }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' - '{{ ansible_os_family }}-default.yml' - 'default.yml' From a4a1be2bcffa4db17fe494430da285808c388413 Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 18:16:40 -0500 Subject: [PATCH 25/27] More ansible core 2.20 fixes Signed-off-by: Jason Rothstein --- handlers/main.yml | 6 +++--- tasks/main.yml | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/handlers/main.yml b/handlers/main.yml index 4f76005..c19bb4c 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -6,14 +6,14 @@ ansible.builtin.service_facts: - name: 'ensure_repo_epel.service_reload' when: - - ansible_system == 'Linux' - - ansible_service_mgr == 'systemd' + - ansible_facts["system"] == 'Linux' + - ansible_facts["service_mgr"] == 'systemd' - ensure_repo_epel is defined ansible.builtin.systemd: daemon_reload: 'yes' - name: 'ensure_repo_epel.service_restart' when: - - ansible_system == 'Linux' + - ansible_facts["system"] == 'Linux' - ensure_repo_epel is defined - ensure_repo_epel.service_list is defined - ensure_repo_epel.service_list is iterable diff --git a/tasks/main.yml b/tasks/main.yml index f520bb0..36e8fbd 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -12,9 +12,9 @@ - '{{ 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_os_family }}-{{ ansible_facts["distribution_major_version"] }}-{{ ansible_facts["architecture"] }}.yml' - - '{{ ansible_os_family }}-{{ ansible_facts["distribution_major_version"] }}-default.yml' - - '{{ ansible_os_family }}-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/' @@ -27,7 +27,7 @@ - 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 5add9282f014db2e1dfc873087c47502cb23195f Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 22:45:09 -0500 Subject: [PATCH 26/27] More ansible core 2.20 fixes Signed-off-by: Jason Rothstein --- tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index 36e8fbd..618a7ec 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -35,7 +35,7 @@ - ensure_repo_epel is defined - ensure_repo_epel.package_list is defined - ensure_repo_epel.package_list is iterable - - packages[item.name] is not defined + - ansible_facts.packages.[item.name] is not defined ansible.builtin.package: disable_gpg_check: '{{ item.disable_gpg_check | default(omit) }}' name: '{{ item.url }}' From c002fc4649ee199a91c74e0112804c0c1e6bcc0e Mon Sep 17 00:00:00 2001 From: Jason Rothstein Date: Tue, 5 May 2026 22:47:24 -0500 Subject: [PATCH 27/27] Syntax fix Signed-off-by: Jason Rothstein --- tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/main.yml b/tasks/main.yml index 618a7ec..8629886 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -35,7 +35,7 @@ - ensure_repo_epel is defined - ensure_repo_epel.package_list is defined - ensure_repo_epel.package_list is iterable - - ansible_facts.packages.[item.name] is not defined + - ansible_facts.packages[item.name] is not defined ansible.builtin.package: disable_gpg_check: '{{ item.disable_gpg_check | default(omit) }}' name: '{{ item.url }}'