Compare commits

...

No commits in common. "imports/c8s/rhel-system-roles-1.21.0-0.13.el8" and "c8" have entirely different histories.

10 changed files with 791 additions and 511 deletions

60
.gitignore vendored
View File

@ -1,26 +1,34 @@
SOURCES/ad_integration-1.0.0.tar.gz
SOURCES/ansible-posix-1.4.0.tar.gz
SOURCES/ansible-sshd-v0.18.0.tar.gz
SOURCES/auto-maintenance-e3ac549bee05349d7ae033971448f861415ad608.tar.gz
SOURCES/certificate-1.1.6.tar.gz
SOURCES/cockpit-1.4.2.tar.gz
SOURCES/community-general-6.1.0.tar.gz
SOURCES/containers-podman-1.10.1.tar.gz
SOURCES/crypto_policies-1.2.6.tar.gz
SOURCES/firewall-1.4.1.tar.gz
SOURCES/ha_cluster-1.8.3.tar.gz
SOURCES/kdump-1.2.5.tar.gz
SOURCES/kernel_settings-1.1.10.tar.gz
SOURCES/logging-1.11.4.tar.gz
SOURCES/metrics-1.8.0.tar.gz
SOURCES/nbde_client-1.2.8.tar.gz
SOURCES/nbde_server-1.3.0.tar.gz
SOURCES/network-1.11.0.tar.gz
SOURCES/podman-1.1.0.tar.gz
SOURCES/postfix-1.3.1.tar.gz
SOURCES/selinux-1.5.0.tar.gz
SOURCES/ssh-1.1.11.tar.gz
SOURCES/storage-1.9.4.tar.gz
SOURCES/timesync-1.7.1.tar.gz
SOURCES/tlog-1.2.10.tar.gz
SOURCES/vpn-1.5.2.tar.gz
SOURCES/ad_integration-1.4.2.tar.gz
SOURCES/ansible-posix-1.5.4.tar.gz
SOURCES/ansible-sshd-v0.23.2.tar.gz
SOURCES/auto-maintenance-11ad785c9bb72611244e7909450ca4247e12db4d.tar.gz
SOURCES/bootloader-1.0.3.tar.gz
SOURCES/certificate-1.3.3.tar.gz
SOURCES/cockpit-1.5.5.tar.gz
SOURCES/community-general-8.3.0.tar.gz
SOURCES/containers-podman-1.12.0.tar.gz
SOURCES/crypto_policies-1.3.2.tar.gz
SOURCES/fapolicyd-1.1.1.tar.gz
SOURCES/firewall-1.7.4.tar.gz
SOURCES/ha_cluster-1.14.0.tar.gz
SOURCES/journald-1.2.3.tar.gz
SOURCES/kdump-1.4.4.tar.gz
SOURCES/kernel_settings-1.2.2.tar.gz
SOURCES/keylime_server-1.1.2.tar.gz
SOURCES/logging-1.12.4.tar.gz
SOURCES/metrics-1.10.1.tar.gz
SOURCES/nbde_client-1.2.17.tar.gz
SOURCES/nbde_server-1.4.3.tar.gz
SOURCES/network-1.15.1.tar.gz
SOURCES/podman-1.4.7.tar.gz
SOURCES/postfix-1.4.3.tar.gz
SOURCES/postgresql-1.3.5.tar.gz
SOURCES/rhc-1.6.0.tar.gz
SOURCES/selinux-1.7.4.tar.gz
SOURCES/snapshot-1.3.1.tar.gz
SOURCES/ssh-1.3.2.tar.gz
SOURCES/storage-1.16.2.tar.gz
SOURCES/systemd-1.1.2.tar.gz
SOURCES/timesync-1.8.2.tar.gz
SOURCES/tlog-1.3.3.tar.gz
SOURCES/vpn-1.6.3.tar.gz

View File

@ -1,26 +0,0 @@
e7ccb7b1a2f66be5d9a1500c4fe3d18b434f95af SOURCES/ad_integration-1.0.0.tar.gz
e699d31bfa020050818f133b7c65a49d2e459178 SOURCES/ansible-posix-1.4.0.tar.gz
845ae09c2643c59aafff61a1ded9ccca114f5255 SOURCES/ansible-sshd-v0.18.0.tar.gz
d7aa4c69b339bf109227ea9c289b242a808ca0f5 SOURCES/auto-maintenance-e3ac549bee05349d7ae033971448f861415ad608.tar.gz
25e2045c8fc9d6455d7c5b0c7d32d4976ebc5178 SOURCES/certificate-1.1.6.tar.gz
3a9049ce1802f288df9e3550e2413faa509583ae SOURCES/cockpit-1.4.2.tar.gz
6e23cc0cc60a1b1f4b6edff5f64b651d58e117d3 SOURCES/community-general-6.1.0.tar.gz
ccb070885fd455bb6e7f2b8ca050d40d30609fec SOURCES/containers-podman-1.10.1.tar.gz
56bc0763e0b549c3499a80e95d0953ee6769136a SOURCES/crypto_policies-1.2.6.tar.gz
c7dedc3157260d205429bed8d8956f2d0590906d SOURCES/firewall-1.4.1.tar.gz
ddfe8a8c11a9de56af6abe3fa9240977f22a9bc9 SOURCES/ha_cluster-1.8.3.tar.gz
6ae0614d51db00957943fad6967674c0de88862c SOURCES/kdump-1.2.5.tar.gz
17f28f701d7842499b232a7b28daae5f51ea631b SOURCES/kernel_settings-1.1.10.tar.gz
dfbe3c7748362f08243eb6fe7d7f02faf6f89531 SOURCES/logging-1.11.4.tar.gz
2304e3ecdb5abf31264766bdfd65f93b9a127843 SOURCES/metrics-1.8.0.tar.gz
f8f356eca3840f6eb8c51d7fe1045df9e0651149 SOURCES/nbde_client-1.2.8.tar.gz
c3cce92d9b9465497d9fe4cf635a32b50dfd4f8d SOURCES/nbde_server-1.3.0.tar.gz
b1cdfa2cf4a1b2eb552f6fe6380666902c0be2f6 SOURCES/network-1.11.0.tar.gz
1a5c733f97355048e7dc71e22b3a5657f60108dd SOURCES/podman-1.1.0.tar.gz
345ad289065728cb1322bdbd9dca7cb4d393d384 SOURCES/postfix-1.3.1.tar.gz
cca65506d7e747cd111fdd4397b60536a5d98dbd SOURCES/selinux-1.5.0.tar.gz
8337034363ca9fc684cfeb7fc9f3028a5f72f45f SOURCES/ssh-1.1.11.tar.gz
4960a22068aa401abbb73f1f9a6e391f859d2db5 SOURCES/storage-1.9.4.tar.gz
6e452d26346f53bf715b57f530995fc078cd8cf8 SOURCES/timesync-1.7.1.tar.gz
da1b76816153f072fb2a6f849e63bc8255d8dd11 SOURCES/tlog-1.2.10.tar.gz
884ee8d0ae926a91e4a39e1eac2eaab55324df87 SOURCES/vpn-1.5.2.tar.gz

View File

@ -1,139 +1,151 @@
Changelog
=========
[1.21.0-0.13] - 2022-12-16
[1.23.0] - 2024-01-15
----------------------------
### New Features
- none
- [RHEL for Edge support in system roles](https://issues.redhat.com/browse/RHEL-15872)
- [ad_integration - feat: Add sssd custom settings](https://issues.redhat.com/browse/RHEL-17667)
- [ad_integration - Enable AD dynamic DNS updates](https://issues.redhat.com/browse/RHEL-1119)
- [ad_integration - feat: add ad_integration_preserve_authselect_profile](https://issues.redhat.com/browse/RHEL-21383)
- [ad_integration - feat: Add SSSD parameters support](https://issues.redhat.com/browse/RHEL-21134)
- [bootloader - Create bootloader role (MVP)](https://issues.redhat.com/browse/RHEL-3241)
- [fapolicyd - feat: Import code for fapolicyd system role](https://issues.redhat.com/browse/RHEL-16542)
- [ha_cluster - [RFE] HA Cluster system role should be able to enable Resilient Storage repository](https://issues.redhat.com/browse/RHEL-14090)
- [ha_cluster - [FutureFeature] Allow ha_cluster role to configure fencing topology](https://issues.redhat.com/browse/RHEL-4624)
- [ha_cluster - [FutureFeature] Allow ha_cluster role to configure all qdevice options](https://issues.redhat.com/browse/RHEL-3264)
- [ha_cluster - Setting cluster members attributes](https://issues.redhat.com/browse/RHEL-22108)
- [journald - feat: Add support for ForwardToSyslog](https://issues.redhat.com/browse/RHEL-21123)
- [logging - feat: Add support for the global config option preserveFQDN with a new logg…](https://issues.redhat.com/browse/RHEL-15933)
- [logging - feat: Add support for general queue and general action parameters](https://issues.redhat.com/browse/RHEL-15440)
- [metrics - [RFE] Metrics system role support for configuring PMIE webhooks](https://issues.redhat.com/browse/RHEL-18170)
- [network - Add blackhole type route](https://issues.redhat.com/browse/RHEL-21491)
- [postgresql - feat: Enable support for Postgresql 16](https://issues.redhat.com/browse/RHEL-18963)
- [rhc - support RHEL 7 managed nodes](https://issues.redhat.com/browse/RHEL-16977)
- [rhc - new rhc_insights.ansible_host parameter](https://issues.redhat.com/browse/RHEL-16975)
- [rhc - new rhc_insights.display_name parameter](https://issues.redhat.com/browse/RHEL-16965)
- [snapshot - New Role for storage snapshot management (lvm, etc.)](https://issues.redhat.com/browse/RHEL-16553)
- [sshd - ansible-sshd Manage SSH certificates](https://issues.redhat.com/browse/RHEL-5985)
- [storage - feat: Support for creating volumes without a FS](https://issues.redhat.com/browse/RHEL-16213)
- [storage - Basic support for creating shared logical volumes (RHEL 8)](https://issues.redhat.com/browse/RHEL-14022)
### Bug Fixes
- [ha_cluster - high-availability firewall service is not added on qdevice node](https://issues.redhat.com/browse/RHEL-17874)
- [ha_cluster - Timeout issue between SBD with delay-start and systemd unit](https://issues.redhat.com/browse/RHEL-4684)
- [kdump - fix: retry read of kexec_crash_size](https://issues.redhat.com/browse/RHEL-3354)
- [keylime_server - won't detect registrar start failure](https://issues.redhat.com/browse/RHEL-21946)
- [logging - fix: check that logging_max_message_size is set, not rsyslog_max_message_size](https://issues.redhat.com/browse/RHEL-15038)
- [nbde_server - fix: Allow tangd socket override directory to be managed outside of the role](https://issues.redhat.com/browse/RHEL-25509)
- [network - Ansible RHEL network system role issue with ipv6.routing-rules the prefix length for 'from' cannot be zero"](https://issues.redhat.com/browse/RHEL-16501)
- [podman - fix: cast secret data to string in order to allow JSON valued strings](https://issues.redhat.com/browse/RHEL-22310)
- [podman - fix: name of volume quadlet service should be basename-volume.service](https://issues.redhat.com/browse/RHEL-21402)
- [podman - fix: add no_log: true for tasks that can log secret data](https://issues.redhat.com/browse/RHEL-19242)
- [podman - fix: user linger needed before secrets](https://issues.redhat.com/browse/RHEL-22229)
- [postgresql - PostgreSQL system role: unable to install PostgreSQL version 15 on RHEL 9](https://issues.redhat.com/browse/RHEL-21400)
- [selinux - fix: Use `ignore_selinux_state` module option](https://issues.redhat.com/browse/RHEL-15871)
- [selinux - fix: Print an error message when module to be created doesn't exist](https://issues.redhat.com/browse/RHEL-19044)
- [selinux - fix: no longer use "item" as a loop variable](https://issues.redhat.com/browse/RHEL-19042)
[1.22.0] - 2023-08-15
----------------------------
### New Features
- [ALL - fingerprint in config files managed by roles](https://bugzilla.redhat.com/show_bug.cgi?id=2186910)
- [ad_integration - add ad_integration_force_rejoin](https://bugzilla.redhat.com/show_bug.cgi?id=2211723)
- [certificate - add mode parameter to change permissions for cert files](https://bugzilla.redhat.com/show_bug.cgi?id=2218204)
- [firewall - missing module in linux-system-roles.firewall to create an ipset](https://bugzilla.redhat.com/show_bug.cgi?id=2140880)
- [firewall - fix: reload on resetting to defaults](https://bugzilla.redhat.com/show_bug.cgi?id=2224648)
- [firewall - should have option to disable conflicting services](https://bugzilla.redhat.com/show_bug.cgi?id=2222809)
- [ha_cluster - Add possibility to load SBD watchdog kernel modules](https://bugzilla.redhat.com/show_bug.cgi?id=2190478)
- [ha_cluster - cluster and quorum can have distinct passwords](https://bugzilla.redhat.com/show_bug.cgi?id=2216485)
- [ha_cluster - support for resource and operation defaults](https://bugzilla.redhat.com/show_bug.cgi?id=2190483)
- [kdump - support auto_reset_crashkernel, dracut_args, deprecate /etc/sysconfig/kdump](https://bugzilla.redhat.com/show_bug.cgi?id=2211272)
- [keylime_server - system role for managing keylime servers](https://bugzilla.redhat.com/show_bug.cgi?id=2224387)
- [network - Support configuring auto-dns setting](https://bugzilla.redhat.com/show_bug.cgi?id=2211273)
- [network - Support no-aaaa DNS option](https://bugzilla.redhat.com/show_bug.cgi?id=2218595)
- [podman - allow container networking configuration](https://bugzilla.redhat.com/show_bug.cgi?id=2220963)
- [podman - support for healthchecks and healthcheck actions](https://bugzilla.redhat.com/show_bug.cgi?id=2220961)
- [podman - support quadlet units](https://bugzilla.redhat.com/show_bug.cgi?id=2220962)
- [postgresql - [RFE] system role for PostgreSQL management](https://bugzilla.redhat.com/show_bug.cgi?id=2151371)
- [rhc - implement rhc_proxy.scheme](https://bugzilla.redhat.com/show_bug.cgi?id=2211778)
- [rhc - [RFE] New role for Red Hat subscription management, insights management [rhel-8.9.0]](https://bugzilla.redhat.com/show_bug.cgi?id=2179016)
- [ssh - add ssh_backup option with default true](https://bugzilla.redhat.com/show_bug.cgi?id=2216759)
- [storage - RFE for the storage system role to support configuring the stripe size for RAID LVM volumes](https://bugzilla.redhat.com/show_bug.cgi?id=2141961)
- [storage - [RFE] user-specified mount point owner and permissions](https://bugzilla.redhat.com/show_bug.cgi?id=2181661)
- [systemd - system role for managing systemd units](https://bugzilla.redhat.com/show_bug.cgi?id=2224388)
### Bug Fixes
- [ALL - facts being gathered unnecessarily](https://bugzilla.redhat.com/show_bug.cgi?id=2223036)
- [ad_integration - leaks credentials when in check_mode](https://bugzilla.redhat.com/show_bug.cgi?id=2233183)
- [certificate - rhel-system-roles.certificate does not re-issue after updating key_size](https://bugzilla.redhat.com/show_bug.cgi?id=2186057)
- [firewall - fix: reload on resetting to defaults](https://bugzilla.redhat.com/show_bug.cgi?id=2224648)
- [firewall - Check mode fails with replacing previous rules](https://issues.redhat.com/browse/RHEL-899)
- [firewall - Check mode fails when creating new firewall service](https://bugzilla.redhat.com/show_bug.cgi?id=2222433)
- [firewall - Ansible RHEL firewall system role not idempotent when configuring the interface using the role in rhel9](https://issues.redhat.com/browse/RHEL-918)
- [firewall - Don't install python(3)-firewall it's a dependency of firewalld](https://bugzilla.redhat.com/show_bug.cgi?id=2216521)
- [firewall - fix: files: overwrite firewalld.conf on previous replaced](https://issues.redhat.com/browse/RHEL-1496)
- [kdump - use failure_action instead of default on EL9 and later](https://issues.redhat.com/browse/RHEL-907)
- [kdump - role: "Write new authorized_keys if needed" task idempotency issues](https://bugzilla.redhat.com/show_bug.cgi?id=2232391)
- [kdump - system role fails if kdump_ssh_user doesn't have a .ssh/authorized_keys file in home directory](https://bugzilla.redhat.com/show_bug.cgi?id=2232392)
- [kdump - fix: ensure .ssh directory exists for kdump_ssh_user on kdump_ssh_server](https://issues.redhat.com/browse/RHEL-1398)
- [kdump - fix: Ensure authorized_keys management works with multiple hosts](https://issues.redhat.com/browse/RHEL-1500)
- [podman - Podman system role: Unable to use podman_registries_conf to set unqualified-search-registries](https://bugzilla.redhat.com/show_bug.cgi?id=2226077)
- [rhc - system role does not apply Insights tags](https://bugzilla.redhat.com/show_bug.cgi?id=2209441)
- [storage - Cannot set chunk size for RAID: Unsupported parameters for (blivet) module: pools.raid_chunk_size](https://bugzilla.redhat.com/show_bug.cgi?id=2193057)
- [storage - RAID volume pre cleanup - remove existing data from member disks as needed before creation](https://bugzilla.redhat.com/show_bug.cgi?id=2224094)
- [storage - Storage: mounted devices that are in use cannot be resized](https://bugzilla.redhat.com/show_bug.cgi?id=2168738)
- [storage - fix: use stat.pw_name, stat.gr_name instead of owner, group](https://issues.redhat.com/browse/RHEL-1498)
- [tlog - use the proxy provider - the files provider is deprecated in sssd](https://bugzilla.redhat.com/show_bug.cgi?id=2191702)
[1.21.1] - 2023-03-16
----------------------------
### New Features
- [rhc - New Role - Red Hat subscription management, insights management](https://bugzilla.redhat.com/show_bug.cgi?id=2144877)
### Bug Fixes
- none
[1.21.0-0.12] - 2022-12-15
----------------------------
### New Features
- none
### Bug Fixes
- [tlog - Unconditionally enable the files provider](https://bugzilla.redhat.com/show_bug.cgi?id=2153080)
[1.21.0-0.11] - 2022-12-13
----------------------------
### New Features
- [logging - [RFE] convert logging role to use firewall, selinux role, and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2130362)
### Bug Fixes
- none
[1.21.0-0.10] - 2022-12-12
----------------------------
### New Features
- [ha_cluster - [RFE] convert ha_cluster role to use firewall, selinux and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2130019)
- [network - Support cloned MAC address](https://bugzilla.redhat.com/show_bug.cgi?id=2143458)
- [podman - [RFE] role for managing podman containers and systemd](https://bugzilla.redhat.com/show_bug.cgi?id=2066864)
### Bug Fixes
- none
[1.21.0-0.9] - 2022-12-06
[1.21.0] - 2023-02-20
----------------------------
### New Features
- [ad_integration - [RFE] new role to support AD integration, join to AD domain](https://bugilla.redhat.com/show_bug.cgi?id=2144876)
### Bug Fixes
- none
[1.21.0-0.8] - 2022-12-05
----------------------------
### New Features
- [logging - [RFE] convert logging role to use firewall, selinux role, and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2130362)
### Bug Fixes
- none
[1.21.0-0.7] - 2022-11-29
----------------------------
### New Features
- none
### Bug Fixes
- [nbde_client - must handle clevis-luks-askpass and clevis-luks-askpass@ systemd unit names](https://bugzilla.redhat.com/show_bug.cgi?id=2126960)
[1.21.0-0.6] - 2022-11-29
----------------------------
### New Features
- [nbde_server - [RFE] convert nbde_server role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2133931)
### Bug Fixes
- none
[1.21.0-0.5] - 2022-11-22
----------------------------
### New Features
- [cockpit - [RFE] convert cockpit role to use firewall, selinux role, and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2137667)
- [ha_cluster - Allow quorum device configuration](https://bugzilla.redhat.com/show_bug.cgi?id=2143814)
- [ha_cluster - [RFE] convert ha_cluster role to use firewall, selinux and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2130019)
- [journald - New role - journald - manage systemd-journald](https://bugzilla.redhat.com/show_bug.cgi?id=2165176)
- [logging - [RFE] convert logging role to use firewall, selinux role, and certificate role](https://bugzilla.redhat.com/show_bug.cgi?id=2130362)
- [metrics - [RFE] convert metrics role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2133532)
- [nbde_server - [RFE] convert nbde_server role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2133931)
- [postfix - [RFE] convert postfix role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2130332)
- [vpn - Add parameters shared_key_content, ike, esp, type, leftid, rightid](https://bugzilla.redhat.com/show_bug.cgi?id=2119600)
- [vpn - [RFE] convert vpn role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2130345)
[1.21.0-0.4.podman] - 2022-11-22
----------------------------
### New Features
- [podman - [RFE] role for managing podman containers and systemd](https://bugzilla.redhat.com/show_bug.cgi?id=2066864)
[1.21.0-0.3.ssh_sshd_selinux_timesync] - 2022-11-22
----------------------------
### New Features
- [selinux - add support for the 'local' parameter](https://bugzilla.redhat.com/show_bug.cgi?id=2143385)
### Bug Fixes
- [sshd,ssh,timesync - Unexpected templating type error - expected str instance, int found](https://bugzilla.redhat.com/show_bug.cgi?id=2143401)
[1.21.0-0.2.network] - 2022-11-15
----------------------------
### New Features
- [network - Support cloned MAC address](https://bugzilla.redhat.com/show_bug.cgi?id=2143458)
- [network - [RFE] Support setting the metric of the default route for initscripts provider](https://bugzilla.redhat.com/show_bug.cgi?id=2134201)
- [network - [RFE] Support the DNS priority](https://bugzilla.redhat.com/show_bug.cgi?id=2133856)
- [network - Support looking up named route table in routing rule](https://bugzilla.redhat.com/show_bug.cgi?id=2129620)
- [podman - [RFE] role for managing podman containers and systemd](https://bugzilla.redhat.com/show_bug.cgi?id=2066864)
- [postfix - [RFE] convert postfix role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2130332)
- [selinux - add support for the 'local' parameter](https://bugzilla.redhat.com/show_bug.cgi?id=2143385)
- [vpn - Add parameters shared_key_content, ike, esp, type, leftid, rightid](https://bugzilla.redhat.com/show_bug.cgi?id=2119600)
- [vpn - [RFE] convert vpn role to use firewall and selinux role](https://bugzilla.redhat.com/show_bug.cgi?id=2130345)
### Bug Fixes
- none
- [ha_cluster - Fix stonith watchdog timeout](https://bugzilla.redhat.com/show_bug.cgi?id=2167941)
- [ha_cluster - Allow enabled SBD on disabled cluster](https://bugzilla.redhat.com/show_bug.cgi?id=2153081)
- [ha_cluster - use no_log in tasks looping over pot. secret parameters](https://bugzilla.redhat.com/show_bug.cgi?id=2127497)
- [nbde_client - nbde_client_clevis fails with a traceback and prints sensitive data](https://bugzilla.redhat.com/show_bug.cgi?id=2159972)
- [nbde_client - must handle clevis-luks-askpass and clevis-luks-askpass@ systemd unit names](https://bugzilla.redhat.com/show_bug.cgi?id=2126960)
- [network - should route traffic via correct bond](https://bugzilla.redhat.com/show_bug.cgi?id=2168733)
- [selinux - managing modules is not idempotent](https://bugzilla.redhat.com/show_bug.cgi?id=2164879)
- [sshd,ssh,timesync - Unexpected templating type error - expected str instance, int found](https://bugzilla.redhat.com/show_bug.cgi?id=2143401)
- [tlog - Unconditionally enable the files provider](https://bugzilla.redhat.com/show_bug.cgi?id=2153080)
[1.20.0] - 2022-08-09
----------------------------

View File

@ -0,0 +1,21 @@
# Helper macros originally from macros.ansible by Igor Raits <ignatenkobrain>
# This file is for maintaining the compatibility with macros and other
# functionality (generators) provided by ansible-packaging on Fedora.
Provides: ansible-collection(%{collection_namespace}.%{collection_name}) = %{collection_version}
# ansible-galaxy is available by ansible-core on RHEL 8.6 and newer at buildtime.
%define ansible_collection_build() ansible-galaxy collection build
%define ansible_collection_install() ansible-galaxy collection install -n -p %{buildroot}%{_datadir}/ansible/collections %{collection_namespace}-%{collection_name}-%{version}.tar.gz
%define ansible_roles_dir %{_datadir}/ansible/roles
%define ansible_collections_dir %{_datadir}/ansible/collections/ansible_collections
# TODO: Officially deprecate this macro and add the following line to the macro
# def after the new approach has gotten more testing and adoption:
# %%{warn: %%{ansible_collection_files} is deprecated. Use %%files -f %%{ansible_collection_filelist} instead.}
%define ansible_collection_files %{shrink:
%{ansible_collections_dir}/%{collection_namespace}/
}
%define ansible_collection_filelist %{__ansible_builddir}/ansible_collection_files

10
SOURCES/extrasources.inc Normal file
View File

@ -0,0 +1,10 @@
Source801: https://galaxy.ansible.com/download/ansible-posix-1.5.4.tar.gz
Source901: https://galaxy.ansible.com/download/community-general-8.3.0.tar.gz
Source902: https://galaxy.ansible.com/download/containers-podman-1.12.0.tar.gz
Provides: bundled(ansible-collection(ansible.posix)) = 1.5.4
Provides: bundled(ansible-collection(community.general)) = 8.3.0
Provides: bundled(ansible-collection(containers.podman)) = 1.12.0
Source996: CHANGELOG.rst
Source998: collection_readme.sh

View File

@ -1,65 +0,0 @@
From d6c8319f52f3859b28044841063adf0013df878b Mon Sep 17 00:00:00 2001
From: Rich Megginson <rmeggins@redhat.com>
Date: Thu, 25 Mar 2021 13:57:45 -0600
Subject: [PATCH 3/4] Patch53: network-disable-bondtests.diff
---
tests/playbooks/tests_bond.yml | 2 ++
tests/playbooks/tests_bond_deprecated.yml | 2 ++
tests/tests_bond_deprecated_initscripts.yml | 1 +
tests/tests_bond_initscripts.yml | 1 +
4 files changed, 6 insertions(+)
diff --git a/tests/playbooks/tests_bond.yml b/tests/playbooks/tests_bond.yml
index 1e45788..d3005a6 100644
--- a/tests/playbooks/tests_bond.yml
+++ b/tests/playbooks/tests_bond.yml
@@ -8,6 +8,8 @@
dhcp_interface1: test1
port2_profile: bond0.1
dhcp_interface2: test2
+ tags:
+ - "tests::expfail"
tasks:
- name: "INIT Prepare setup"
debug:
diff --git a/tests/playbooks/tests_bond_deprecated.yml b/tests/playbooks/tests_bond_deprecated.yml
index f37e19a..ae475c4 100644
--- a/tests/playbooks/tests_bond_deprecated.yml
+++ b/tests/playbooks/tests_bond_deprecated.yml
@@ -8,6 +8,8 @@
dhcp_interface1: test1
port2_profile: bond0.1
dhcp_interface2: test2
+ tags:
+ - "tests::expfail"
tasks:
- name: "INIT Prepare setup"
debug:
diff --git a/tests/tests_bond_deprecated_initscripts.yml b/tests/tests_bond_deprecated_initscripts.yml
index 383b488..cdf3de0 100644
--- a/tests/tests_bond_deprecated_initscripts.yml
+++ b/tests/tests_bond_deprecated_initscripts.yml
@@ -10,6 +10,7 @@
network_provider: initscripts
tags:
- always
+ - "tests::expfail"
- import_playbook: playbooks/tests_bond_deprecated.yml
when: (ansible_distribution in ['CentOS','RedHat'] and
diff --git a/tests/tests_bond_initscripts.yml b/tests/tests_bond_initscripts.yml
index 8fa74c5..6a231c4 100644
--- a/tests/tests_bond_initscripts.yml
+++ b/tests/tests_bond_initscripts.yml
@@ -10,6 +10,7 @@
network_provider: initscripts
tags:
- always
+ - "tests::expfail"
- import_playbook: playbooks/tests_bond.yml
when: (ansible_distribution in ['CentOS','RedHat'] and
--
2.30.2

102
SOURCES/vendoring-build.inc Normal file
View File

@ -0,0 +1,102 @@
# maps the source file to the roles that use that file
# value can be string or space delimited list of strings
# role name `__collection` means - do not vendor into
# role, just vendor directly into the collection
declare -A plugin_map=(
[ansible/posix/plugins/modules/selinux.py]=selinux
[ansible/posix/plugins/modules/seboolean.py]=selinux
[ansible/posix/plugins/modules/mount.py]=storage
[ansible/posix/plugins/modules/rhel_facts.py]=__collection
[ansible/posix/plugins/modules/rhel_rpm_ostree.py]=__collection
[ansible/posix/plugins/module_utils/mount.py]=storage
[community/general/plugins/modules/ini_file.py]="tlog ad_integration"
[community/general/plugins/modules/modprobe.py]=ha_cluster
[community/general/plugins/modules/redhat_subscription.py]=rhc
[community/general/plugins/modules/rhsm_release.py]=rhc
[community/general/plugins/modules/rhsm_repository.py]=rhc
[community/general/plugins/modules/seport.py]=selinux
[community/general/plugins/modules/sefcontext.py]=selinux
[community/general/plugins/modules/selogin.py]=selinux
[containers/podman/plugins/modules/podman_container_info.py]=podman
[containers/podman/plugins/modules/podman_image.py]=podman
[containers/podman/plugins/modules/podman_play.py]=podman
[containers/podman/plugins/modules/podman_secret.py]=podman
[containers/podman/plugins/module_utils/podman/common.py]=podman
)
declare -a modules mod_utils collection_plugins
declare -A dests
# vendor in plugin files - fix documentation, fragments
for src in "${!plugin_map[@]}"; do
roles="${plugin_map["$src"]}"
if [ "$roles" = __collection ]; then
collection_plugins+=("$src")
else
case "$src" in
*/plugins/modules/*) srcdir=plugins/modules; subdir=library; modules+=("$src") ;;
*/plugins/module_utils/*) srcdir=plugins/module_utils; mod_utils+=("$src") ;;
*/plugins/action/*) srcdir=plugins/action ;;
esac
fi
for role in $roles; do
if [ "$role" = __collection ]; then
dest="%{collection_build_path}/plugins${src/#*plugins/}"
dests["$dest"]=__collection
else
case "$src" in
*/plugins/module_utils/*) subdir="module_utils/${role}_lsr" ;;
esac
dest="$role/${src/#*${srcdir}/${subdir}}"
dests["$dest"]="$role"
fi
destdir="$(dirname "$dest")"
if [ ! -d "$destdir" ]; then
mkdir -p "$destdir"
fi
cp -pL ".external/$src" "$dest"
sed -e ':a;N;$!ba;s/description:\n\( *\)/description:\n\1- WARNING: Do not use this plugin directly! It is only for role internal use.\n\1/' \
-e '/^extends_documentation_fragment:/,/^[^ -]/{/^extends/d;/^[ -]/d}' \
-i "$dest"
done
done
# remove the temporary .external directory after vendoring
rm -rf .external
# fix python imports to point from the old name to the new name
for dest in "${!dests[@]}"; do
role="${dests["$dest"]}"
for module in "${modules[@]}"; do
python_name="$(dirname "$module")"
python_name="${python_name////[.]}"
sed -e "s/ansible_collections[.]${python_name}[.]/ansible.modules./" -i "$dest"
done
for mod_util in "${mod_utils[@]}"; do
# some mod_utils have subdirs, some do not
split=(${mod_util//// })
python_name="ansible_collections[.]${split[0]}[.]${split[1]}[.]plugins[.]module_utils[.]"
sed -e "s/${python_name}/ansible.module_utils.${role}_lsr./" -i "$dest"
done
for plugin in "${collection_plugins[@]}"; do
python_name="$(dirname "$plugin")"
dest_python_name="%{collection_namespace}/%{collection_name}/plugins${python_name/#*plugins/}"
src_python_name="ansible_collections.${python_name////[.]}"
dest_python_name="ansible_collections.${dest_python_name////.}"
sed -e "s/${src_python_name}/${dest_python_name}/" -i "$dest"
done
done
# Replacing "linux-system-roles.rolename" with "rhel-system-roles.rolename" in each role
# Replacing "fedora.linux_system_roles." with "redhat.rhel_system_roles" in each role
# This is for the "roles calling other roles" case
# for podman, change the FQCN - using a non-FQCN module name doesn't seem to work,
# even for the legacy role format
for rolename in %{rolenames}; do
find "$rolename" -type f -exec \
sed -e "s/linux-system-roles[.]${rolename}\\>/%{roleinstprefix}${rolename}/g" \
-e "s/fedora[.]linux_system_roles[.]/%{collection_namespace}.%{collection_name}./g" \
-e "s/containers[.]podman[.]/%{collection_namespace}.%{collection_name}./g" \
-e "s/community[.]general[.]/%{collection_namespace}.%{collection_name}./g" \
-e "s/ansible[.]posix[.]/%{collection_namespace}.%{collection_name}./g" \
-i {} \;
done

View File

@ -0,0 +1,12 @@
# Untar vendored collection tarballs to corresponding directories
for file in %{SOURCE801} %{SOURCE901} %{SOURCE902}; do
if [[ "$(basename $file)" =~ ([^-]+)-([^-]+)-(.+).tar.gz ]]; then
ns=${BASH_REMATCH[1]}
name=${BASH_REMATCH[2]}
ver=${BASH_REMATCH[3]}
mkdir -p .external/$ns/$name
pushd .external/$ns/$name > /dev/null
tar xfz "$file"
popd > /dev/null
fi
done

View File

@ -1,27 +1,16 @@
# NOTE: Even though ansible-core is in 8.6, it is only available
# at *runtime*, not at *buildtime* - so we can't have
# ansible-core as a build_dep on RHEL8
%if 0%{?fedora} || 0%{?rhel} >= 9
%bcond_without ansible
# NOTE: ansible-core is in rhel-8.6 and newer, but not installable
# in buildroot as it depended on modular Python.
# It has been installable at buildtime in 8.8 and newer.
%if 0%{?fedora}
BuildRequires: ansible-packaging
%else
%if 0%{?rhel} >= 8
BuildRequires: ansible-core >= 2.11.0
%endif
%else
%bcond_with ansible
%endif
%bcond_with collection_artifact
%if 0%{?fedora} || 0%{?rhel} >= 8
%bcond_without html
%else
# pandoc is not supported in rhel 7 and older,
# which is needed for converting .md to .html.
%bcond_with html
%endif
%if 0%{?rhel}
Name: rhel-system-roles
%else
@ -29,8 +18,8 @@ Name: linux-system-roles
%endif
Url: https://github.com/linux-system-roles
Summary: Set of interfaces for unified system management
Version: 1.21.0
Release: 0.13%{?dist}
Version: 1.23.0
Release: 2.21%{?dist}
License: GPLv3+ and MIT and BSD and Python
%global _pkglicensedir %{_licensedir}/%{name}
@ -44,25 +33,10 @@ License: GPLv3+ and MIT and BSD and Python
%endif
%global collection_version %{version}
# this is where we stage the collection files for building
%global collection_dest_path .collections
%global collection_build_path %{collection_dest_path}/ansible_collections/%{collection_namespace}/%{collection_name}
# Helper macros originally from macros.ansible by Igor Raits <ignatenkobrain>
# On RHEL, not available, so we must define those macros locally
# On Fedora, provided by ansible-packager
# Not used (yet). Could be made to point to AH in RHEL - but what about CentOS Stream?
#%%{!?ansible_collection_url:%%define ansible_collection_url() https://galaxy.ansible.com/%%{collection_namespace}/%%{collection_name}}
%if 0%{?rhel}
Provides: ansible-collection(%{collection_namespace}.%{collection_name}) = %{collection_version}
%global ansible_collection_files %{_datadir}/ansible/collections/ansible_collections/%{collection_namespace}/
%define ansible_roles_dir %{_datadir}/ansible/roles
%if %{without ansible}
# Untar and copy everything instead of galaxy-installing the built artifact when ansible is not available
%define ansible_collection_build() tar -cf %{_tmppath}/%{collection_namespace}-%{collection_name}-%{version}.tar.gz .
%define ansible_collection_install() mkdir -p %{buildroot}%{ansible_collection_files}%{collection_name}; (cd %{buildroot}%{ansible_collection_files}%{collection_name}; tar -xf %{_tmppath}/%{collection_namespace}-%{collection_name}-%{version}.tar.gz)
%else
%define ansible_collection_build() ansible-galaxy collection build
%define ansible_collection_install() ansible-galaxy collection install -n -p %{buildroot}%{_datadir}/ansible/collections %{collection_namespace}-%{collection_name}-%{version}.tar.gz
%endif
%endif
# be compatible with the usual Fedora Provides:
Provides: ansible-collection-%{collection_namespace}-%{collection_name} = %{collection_version}-%{release}
@ -107,96 +81,102 @@ Requires: (ansible-core >= 2.11.0 or ansible >= 2.9.0)
%%global rolestodir %%{?rolestodir} %%{roletodir%{1}}
}
#%%defcommit 1 14314822b529520ac12964e0d2938c4bb18ab895
%global mainid 11ad785c9bb72611244e7909450ca4247e12db4d
Source: %{url}/auto-maintenance/archive/%{mainid}/auto-maintenance-%{mainid}.tar.gz
# BEGIN AUTOGENERATED SOURCES
%global rolename1 postfix
%deftag 1 1.3.1
%deftag 1 1.4.3
#%%defcommit 2 9fe6eb36772e83b53dcfb8ceb73608fd4f72eeda
%global rolename2 selinux
%deftag 2 1.5.0
%deftag 2 1.7.4
#%%defcommit 3 cbe4bf262bffae3bf53e531662237741954c4182
%global rolename3 timesync
%deftag 3 1.7.1
%deftag 3 1.8.2
#%%defcommit 4 02fc72b482e165472624b2f68eecd2ddce1d93b1
%global rolename4 kdump
%deftag 4 1.2.5
%deftag 4 1.4.4
#%%defcommit 5 a74092634adfe45f76cf761138abab1811692b4b
%global rolename5 network
%deftag 5 1.11.0
%deftag 5 1.15.1
#%%defcommit 6 50d2b8ccc98a8f4cb9d1d550d21adc227181e9fa
%global rolename6 storage
%deftag 6 1.9.4
%deftag 6 1.16.2
#%%defcommit 7 d57caa8ca506d8cbc7ca0f96f7cb62b7e965f163
%global rolename7 metrics
%deftag 7 1.8.0
%deftag 7 1.10.1
#%%defcommit 8 2b9e53233ee3a68bdb532e62f289733e436a6106
%global rolename8 tlog
%deftag 8 1.2.10
%deftag 8 1.3.3
#%%defcommit 9 9373303b98e09ef38df7afc8d06e5e55812096c7
%global rolename9 kernel_settings
%deftag 9 1.1.10
%deftag 9 1.2.2
#%%defcommit 10 8330de7e6f0606b1c79999ec4c5f319c6bc80640
%global rolename10 logging
%deftag 10 1.11.4
%deftag 10 1.12.4
#%%defcommit 11 c57d0b1f3384c525738fa26ba4bdca485e162567
%global rolename11 nbde_server
%deftag 11 1.3.0
%deftag 11 1.4.3
#%%defcommit 12 bef2fad5e365712d1f40e53662490ba2550a253f
%global rolename12 nbde_client
%deftag 12 1.2.8
%deftag 12 1.2.17
#%%defcommit 13 310fc53db04e8d3134524afb7a89b0477a2ffb83
%global rolename13 certificate
%deftag 13 1.1.6
%deftag 13 1.3.3
#%%defcommit 14 b2a9857ac661fa32e66666e444b73bfdb34cdf95
%global rolename14 crypto_policies
%deftag 14 1.2.6
%deftag 14 1.3.2
%global forgeorg15 https://github.com/willshersystems
%global repo15 ansible-sshd
%global rolename15 sshd
#%%defcommit 15 9766d9097a87a130d4c8abde2247aaad5c925ecf
%deftag 15 v0.18.0
%deftag 15 v0.23.2
#%%defcommit 16 59b9fd7b25607d8bd33bdb082748955f2652846a
%global rolename16 ssh
%deftag 16 1.1.11
%deftag 16 1.3.2
#%%defcommit 17 f901239cb91878719c9e7461760ef8d4789d626d
%global rolename17 ha_cluster
%deftag 17 1.8.3
%deftag 17 1.14.0
#%%defcommit 18 d21c896c0d5de83ec3a92d6adf8d14f0324803ca
%global rolename18 vpn
%deftag 18 1.5.2
%deftag 18 1.6.3
%global rolename19 firewall
%deftag 19 1.4.1
%deftag 19 1.7.4
#%%defcommit 20 7e30ef9672ffd1d1daa9c8a6939ca63b3b503b5a
%global rolename20 cockpit
%deftag 20 1.4.2
%deftag 20 1.5.5
%global rolename21 podman
%deftag 21 1.1.0
%deftag 21 1.4.7
#%%defcommit 22 8e536917c4202f847ec8bf53c759b78304019a2f
%global rolename22 ad_integration
%deftag 22 1.0.0
%deftag 22 1.4.2
%global rolename23 rhc
%deftag 23 1.6.0
%global rolename24 journald
%deftag 24 1.2.3
%global rolename25 postgresql
%deftag 25 1.3.5
%global rolename26 systemd
%deftag 26 1.1.2
%global rolename27 keylime_server
%deftag 27 1.1.2
%global rolename28 fapolicyd
%deftag 28 1.1.1
%global rolename29 bootloader
%deftag 29 1.0.3
%global rolename30 snapshot
%deftag 30 1.3.1
%global mainid e3ac549bee05349d7ae033971448f861415ad608
Source: %{url}/auto-maintenance/archive/%{mainid}/auto-maintenance-%{mainid}.tar.gz
Source1: %{archiveurl1}
Source2: %{archiveurl2}
Source3: %{archiveurl3}
@ -219,47 +199,47 @@ Source19: %{archiveurl19}
Source20: %{archiveurl20}
Source21: %{archiveurl21}
Source22: %{archiveurl22}
Source23: %{archiveurl23}
Source24: %{archiveurl24}
Source25: %{archiveurl25}
Source26: %{archiveurl26}
Source27: %{archiveurl27}
Source28: %{archiveurl28}
Source29: %{archiveurl29}
Source30: %{archiveurl30}
# END AUTOGENERATED SOURCES
# Not conditionalizing sources per FPC:
# https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/#_do_not_conditionalize_sources
# Collections to vendor on RHEL only, Fedora has these available from RPMs
Source801: https://galaxy.ansible.com/download/ansible-posix-1.4.0.tar.gz
Source901: https://galaxy.ansible.com/download/community-general-6.1.0.tar.gz
Source902: https://galaxy.ansible.com/download/containers-podman-1.10.1.tar.gz
%if 0%{?rhel}
Provides: bundled(ansible-collection(ansible.posix)) = 1.4.0
Provides: bundled(ansible-collection(community.general)) = 6.1.0
Provides: bundled(ansible-collection(containers.podman)) = 1.10.1
%endif
# Includes with definitions/tags that differ between RHEL and Fedora
Source1001: extrasources.inc
%include %{SOURCE1001}
# Includes with ansible_collection_build/_install that differ between RHEL versions
Source1002: ansible-packaging.inc
%include %{SOURCE1002}
Source1003: vendoring-prep.inc
Source1004: vendoring-build.inc
# RHEL only, changelog is auto generated on Fedora
Source995: CHANGELOG.md
Source996: CHANGELOG.rst
# Fedora only, script to convert spec %%changelog into collection CHANGELOG.md
Source997: spec-to-changelog-md.sh
# RHEL only, script to convert the collection README from Galaxy to Automation Hub
Source998: collection_readme.sh
Patch51: network-disable-bondtests.diff
BuildArch: noarch
%if %{with html}
# Requirements for md2html.sh to build the documentation
%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: rubygem-kramdown-parser-gfm
%else
BuildRequires: pandoc
BuildRequires: asciidoc
BuildRequires: highlight
%endif
%endif
# there is no ansible on i686, so when we get a builder that uses
# this arch, the build fails with
# No matching package to install: 'ansible-core >= 2.11.0'
# unfortunately, this causes the src rpm build tasks to be reported
# with the arch of the builder :-( which causes problems with internal
# test infrastructure - while we get those issues sorted out, revert
# this change - this means that centpkg builds may fail and may have
# to be retried
# ExcludeArch: i686
# Requirements for galaxy_transform.py
BuildRequires: python3
BuildRequires: python%{python3_pkgversion}-ruamel-yaml
# Requirements for release_collection.py
BuildRequires: python3-setuptools
# We must put %%description within the if block to avoid empty lines showing up.
%if 0%{?rhel}
@ -300,22 +280,12 @@ for i,v in ipairs(roles) do
end
%prep
%setup -q -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 -a16 -a17 -a18 -a19 -a20 -a21 -a22 -n %{getarchivedir 0}
# BEGIN AUTOGENERATED SETUP
%setup -q -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 -a16 -a17 -a18 -a19 -a20 -a21 -a22 -a23 -a24 -a25 -a26 -a27 -a28 -a29 -a30 -n %{getarchivedir 0}
# END AUTOGENERATED SETUP
%if 0%{?rhel}
# Untar vendored collection tarballs to corresponding directories
for file in %{SOURCE801} %{SOURCE901} %{SOURCE902}; do
if [[ "$(basename $file)" =~ ([^-]+)-([^-]+)-(.+).tar.gz ]]; then
ns=${BASH_REMATCH[1]}
name=${BASH_REMATCH[2]}
ver=${BASH_REMATCH[3]}
mkdir -p .external/$ns/$name
pushd .external/$ns/$name > /dev/null
tar xfz "$file"
popd > /dev/null
fi
done
%endif
# vendoring prep steps, if any
%include %{SOURCE1003}
declare -A ROLESTODIR=(%{rolestodir})
for rolename in %{rolenames}; do
@ -330,26 +300,27 @@ for rolename in %{rolenames}; do
fi
fi
mv "$dir_from_archive" ${rolename}
# Move a hidden .README.html to a not hidden README.html
mv $rolename/.README.html $rolename/README.html
done
%if 0%{?rhel}
cd %{rolename2}/tests
# this test causes avcs we want to ignore
sed -r -i -e '/hosts: all/a\
tags:\
- tests::avc' tests_selinux_disabled.yml
cd ../..
cd %{rolename5}
%patch51 -p1
cd ..
%endif
cd %{rolename15}
find -P tests examples -name \*.yml | while read file; do
sed -r -i -e "s/ansible-sshd/linux-system-roles.sshd/" \
sed -r -i -e "s/willshersystems:ansible-sshd/system_role:sshd/" \
-e "s/ansible-sshd/linux-system-roles.sshd/" \
-e "s/ willshersystems.sshd/ linux-system-roles.sshd/" "$file"
done
sed -r -i -e "s/ willshersystems.sshd/ linux-system-roles.sshd/" README.md
sed -r -i -e "s/min_ansible_version: 2.8/min_ansible_version: 2.9/" meta/main.yml
sed -r -i -e "s/ willshersystems.sshd/ linux-system-roles.sshd/" README.md README.html
sed -r -i -e 's/min_ansible_version: 2.8/min_ansible_version: "2.9"/' meta/main.yml
cd ..
cd %{rolename7}
@ -365,102 +336,8 @@ if [ "$rolesdir" != "$realrolesdir" ]; then
fi
cd ..
%if 0%{?rhel}
# Unpack tar.gz to retrieve to be vendored modules and place them in the roles library.
# ansible.posix:
# - library:
# - Module selinux and seboolean for the selinux role
# - Module mount for the storage role
declare -A module_map=( ["selinux.py"]="selinux" ["seboolean.py"]="selinux" ["mount.py"]="storage" )
for module in "${!module_map[@]}"; do
role="${module_map[${module}]}"
if [ ! -d $role/library ]; then
mkdir $role/library
fi
cp -pL .external/ansible/posix/plugins/modules/$module $role/library/$module
sed -i -e ':a;N;$!ba;s/description:\n\( *\)/description:\n\1- WARNING: Do not use this module directly! It is only for role internal use.\n\1/' -e "s/ansible_collections.ansible.posix.plugins.module_utils/ansible.module_utils.${role}_lsr/" $role/library/$module
done
# ansible.posix:
# - module_utils:
# - Module_util mount for the storage role
module_map=( ["mount.py"]="storage" )
for module in "${!module_map[@]}"; do
role="${module_map[${module}]}"
if [ ! -d $role/module_utils/${role}_lsr ]; then
mkdir -p $role/module_utils/${role}_lsr
fi
cp -pL .external/ansible/posix/plugins/module_utils/$module $role/module_utils/${role}_lsr/$module
done
# community.general:
# - library:
# - Module seport, sefcontext and selogin for the selinux role rolename2
# - Module ini_file for role tlog
module_map=( ["seport.py"]="selinux" ["sefcontext.py"]="selinux" ["selogin.py"]="selinux" ["ini_file.py"]="tlog" )
for module in "${!module_map[@]}"; do
role="${module_map[${module}]}"
if [ ! -d $role/library ]; then
mkdir $role/library
fi
# version 5.x seems to be broken?
moduledir=.external/community/general/plugins/modules
if [ ! -f $moduledir/$module ]; then
moduledir=.external/community/general/plugins/modules/system
fi
if [ ! -f $moduledir/$module ]; then
moduledir=.external/community/general/plugins/modules/files
fi
cp -pL $moduledir/$module $role/library/$module
ls -alrtF $role/library/$module
sed -i -e ':a;N;$!ba;s/description:\n\( *\)/description:\n\1- WARNING: Do not use this module directly! It is only for role internal use.\n\1/' $role/library/$module
done
# containers.podman:
# - library:
# - Module podman_container_info, podman_image and podman_play for the podman role
module_map=( ["podman_container_info.py"]="podman" ["podman_image.py"]="podman" ["podman_play.py"]="podman" )
for module in "${!module_map[@]}"; do
role="${module_map[${module}]}"
if [ ! -d $role/library ]; then
mkdir $role/library
fi
moduledir=.external/containers/podman/plugins/modules
cp -pL $moduledir/$module $role/library/$module
ls -alrtF $role/library/$module
sed -i -e ':a;N;$!ba;s/description:\n\( *\)/description:\n\1- WARNING: Do not use this module directly! It is only for role internal use.\n\1/' \
-e "s/ansible_collections.containers.podman.plugins.module_utils.podman/ansible.module_utils.${role}_lsr/" \
$role/library/$module
done
# containers.podman:
# - module_utils:
# - Module_util common for the podman role
module_map=( ["common.py"]="podman" )
for module in "${!module_map[@]}"; do
role="${module_map[${module}]}"
if [ ! -d $role/module_utils/${role}_lsr ]; then
mkdir -p $role/module_utils/${role}_lsr
fi
cp -pL .external/containers/podman/plugins/module_utils/podman/$module $role/module_utils/${role}_lsr/$module
done
# remove the temporary .external directory after vendoring
rm -rf .external
# Replacing "linux-system-roles.rolename" with "rhel-system-roles.rolename" in each role
# Replacing "fedora.linux_system_roles." with "redhat.rhel_system_roles" in each role
# This is for the "roles calling other roles" case
# for podman, change the FQCN - using a non-FQCN module name doesn't seem to work,
# even for the legacy role format
for rolename in %{rolenames}; do
find $rolename -type f -exec \
sed -e "s/linux-system-roles[.]${rolename}\\>/%{roleinstprefix}${rolename}/g" \
-e "s/fedora[.]linux_system_roles[.]/%{collection_namespace}.%{collection_name}./g" \
-e "s/containers[.]podman[.]/%{collection_namespace}.%{collection_name}./g" \
-i {} \;
done
%endif
# vendoring build steps, if any
%include %{SOURCE1004}
# Removing symlinks in tests/roles
for rolename in %{rolenames}; do
@ -482,29 +359,67 @@ rm %{rolename5}/tests/ensure_provider_tests.py
# Drop storage tests/scripts
rm -rf %{rolename6}/tests/scripts
# fix system_roles fingerprint in "external" roles
python3 lsr_fingerprint.py
# transform ambiguous #!/usr/bin/env python shebangs to python3 to stop brp-mangle-shebangs complaining
find -type f -executable -name '*.py' -exec \
sed -i -r -e '1s@^(#! */usr/bin/env python)(\s|$)@#\13\2@' '{}' +
%build
%if %{with html}
readmes=""
for role in %{rolenames}; do
readmes="${readmes} $role/README.md"
done
sh md2html.sh $readmes
%endif
# remove upstream-only documentation - for example, documentation
# about collection dependencies is not needed in Fedora and EL RPMs
# since the dependencies are already provided
sed -e '/# Requirements/,/^#/s/^See below$/None/' \
-e '/# Collection requirements/,/^#/ {/# Collection requirements/d;/^#/!d}' \
-i */README.md
sed -e '/id="requirements">Requirements<\/h/,/^<h/s/See below/None/' \
-e '/id="collection-requirements">/,/^<h/ {/id="collection-requirements">/d;/^<h/!d}' \
-i */README.html
mkdir .collections
for role in %{rolenames}; do
# awk: Remove collection-requirements from README.html TOC
# 1. If match found, add the line and -2,+1 lines' line number in an array "d".
# 2. Save all lines in an array with line number as index
# 3. Print only those index not in array "d"
awk '/id="toc-collection-requirements">/{for(x=NR-2;x<=NR+1;x++)d[x];} \
{a[NR]=$0} \
END{for(i=1;i<=NR;i++)if(!(i in d))print a[i]}' \
$role/README.html > $role/README.html.tmp
mv $role/README.html.tmp $role/README.html
done
# sshd README is not in the same format
sed -e '/# Optional requirements/,/# Role variables/ {/# Optional/d;/# Role variables/!d}' \
-i sshd/README.md
sed -e '/id="optional-requirements">/,/^<h/ {/id="optional-requirements">/d;/^<h/!d}' \
-i sshd/README.html
# Remove optional-requirements from README.html TOC
awk '/id="toc-optional-requirements">/{for(x=NR-2;x<=NR+1;x++)d[x];} \
{a[NR]=$0} \
END{for(i=1;i<=NR;i++)if(!(i in d))print a[i]}' \
sshd/README.html > sshd/README.html.tml
mv sshd/README.html.tml sshd/README.html
matchstr="actions/workflows/"
for role in %{rolenames}; do
# in the first 14 lines of README.md, remove any line that looks like a
# github action badge. README.html doesn't have these lines.
sed -e "1,14 {\\,${matchstr},d; /\!\[/d}" -i $role/README.md
done
if [ ! -d %{collection_dest_path} ]; then
mkdir %{collection_dest_path}
fi
%if 0%{?rhel}
# Convert the upstream collection readme to the downstream one
%{SOURCE998} lsr_role2collection/collection_readme.md
./galaxy_transform.py "%{collection_namespace}" "%{collection_name}" "%{collection_version}" \
%{python3} ./galaxy_transform.py "%{collection_namespace}" "%{collection_name}" "%{collection_version}" \
"Red Hat Enterprise Linux System Roles Ansible Collection" \
"https://linux-system-roles.github.io" \
"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/administration_and_configuration_tasks_using_system_roles_in_rhel" \
"https://access.redhat.com/articles/3050101" \
"https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%208&component=rhel-system-roles" \
"https://issues.redhat.com/secure/CreateIssueDetails!init.jspa?pid=12332745&summary=Your%20request%20summary&issuetype=1&priority=10200&labels=Partner-Feature-Request&components=12380283" \
> galaxy.yml.tmp
# we vendor-in all of the dependencies on rhel, so remove them
rm -f lsr_role2collection/collection_requirements.txt
@ -532,37 +447,32 @@ extra_mapping="--extra-mapping fedora.linux_system_roles:%{collection_namespace}
%else
extra_mapping=""
%endif
LANG=C.utf-8 LC_ALL=C.utf-8 python3 release_collection.py --galaxy-yml galaxy.yml \
--src-path $(pwd) --dest-path $(pwd)/.collections $includes --force --no-update \
LANG=C.utf-8 LC_ALL=C.utf-8 %{python3} release_collection.py --galaxy-yml galaxy.yml \
--src-path $(pwd) --dest-path $(pwd)/%{collection_dest_path} $includes --keep --no-update \
--src-owner %{name} --skip-git --skip-check --skip-changelog $extra_mapping --debug
# Remove table of contents from logging README.md
# It is not needed for html and AH/Galaxy
sed -i -e 's/^\(## Table of Contents\)/## Background\n\1/' \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/roles/logging/README.md
sed -i -e '/^## Table of Contents/,/^## Background/d' \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/roles/logging/README.md
# Remove internal links from readme files
# They are not rendered properly on AH.
for role in %{rolenames}; do
sed -r -i -e 's/\[([^[]+)\]\(#[^)]+\)/\1/g' \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/roles/$role/README.md
%{collection_build_path}/roles/$role/README.md
done
%if 0%{?rhel}
# Remove test only collection dependencies
# NOTE: These should not be in meta/collection-requirements.yml, they should be
# in tests/collection-requirements.yml, but they can't be moved yet
sed -i -e '/community[.]mysql:/d' -e '/community[.]postgresql:/d' \
%{collection_build_path}/galaxy.yml
cp %{SOURCE995} \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/docs/CHANGELOG.md
%{collection_build_path}/docs/CHANGELOG.md
%if 0%{?rhel}
cp %{SOURCE996} \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/CHANGELOG.rst
%else
# Build the collection CHANGELOG.md
%{SOURCE997} %{_specdir}/%{name}.spec \
.collections/ansible_collections/%{collection_namespace}/%{collection_name}/docs/CHANGELOG.md
%{collection_build_path}/CHANGELOG.rst
%endif
# Build the collection
pushd .collections/ansible_collections/%{collection_namespace}/%{collection_name}/
pushd %{collection_build_path}
%ansible_collection_build
popd
@ -589,10 +499,8 @@ for role in %{rolenames}; do
"%{buildroot}%{_pkgdocdir}/$role"
ln -sr "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/README.md" \
"%{buildroot}%{_pkgdocdir}/$role"
%if %{with html}
ln -sr "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/README.html" \
"%{buildroot}%{_pkgdocdir}/$role"
%endif
if [ -f "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/COPYING" ]; then
ln -sr "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/COPYING" \
"%{buildroot}%{_pkglicensedir}/$role.COPYING"
@ -602,16 +510,20 @@ for role in %{rolenames}; do
"%{buildroot}%{_pkglicensedir}/$role.LICENSE"
fi
if [ -d "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/examples" ]; then
for file in "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/examples/"*.yml ; do
basename=$(basename "$file" .yml)
newname="$basename"
if [[ "$newname" != example-* ]]; then
newname="example-$newname"
for file in "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/examples/"* ; do
if [[ "$file" == *.yml ]]; then
basename=$(basename "$file" .yml)
newname="$basename"
if [[ "$newname" != example-* ]]; then
newname="example-$newname"
fi
if [[ "$newname" != *-playbook ]]; then
newname="${newname}-playbook"
fi
cp "$file" "%{buildroot}%{_pkgdocdir}/$role/${newname}.yml"
else
cp "$file" "%{buildroot}%{_pkgdocdir}/$role"
fi
if [[ "$newname" != *-playbook ]]; then
newname="${newname}-playbook"
fi
cp "$file" "%{buildroot}%{_pkgdocdir}/$role/${newname}.yml"
rm "$file"
done
if [ -f "%{buildroot}%{ansible_roles_dir}/%{roleinstprefix}$role/examples/inventory" ]; then
@ -625,10 +537,16 @@ for role in %{rolenames}; do
fi
done
rm %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/semaphore
rm -f %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/semaphore
rm -r %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/molecule
rm -r %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/.[A-Za-z]*
# remove .dot files/directories, but keep the .ostree directory
for item in %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/.[A-Za-z]*; do
if [ "$(basename "$item")" = .ostree ]; then
continue
fi
rm -r "$item"
done
rm %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/tests/.git*
# NOTE: sshd/examples/example-root-login.yml is
@ -636,7 +554,7 @@ rm %{buildroot}%{ansible_roles_dir}/%{roleinstprefix}*/tests/.git*
# must be updated if changing the file path
# Install the collection
pushd .collections/ansible_collections/%{collection_namespace}/%{collection_name}/
pushd %{collection_build_path}
%ansible_collection_install
popd
@ -647,7 +565,7 @@ ln -sr %{buildroot}%{ansible_collection_files}%{collection_name}/README.md \
%{buildroot}%{_pkgdocdir}/collection
for rolename in %{rolenames}; do
for file in CHANGELOG.md README.md; do
for file in CHANGELOG.md README.md README.html; do
if [ -f %{buildroot}%{ansible_collection_files}%{collection_name}/roles/${rolename}/$file ]; then
if [ ! -d %{buildroot}%{_pkgdocdir}/collection/roles/${rolename} ]; then
mkdir -p %{buildroot}%{_pkgdocdir}/collection/roles/${rolename}
@ -658,20 +576,11 @@ for rolename in %{rolenames}; do
done
done
%if %{with html}
# converting README.md to README.html for collection in %%{buildroot}%%{_pkgdocdir}/collection
readmes="%{buildroot}%{_pkgdocdir}/collection/README.md"
for role in %{rolenames}; do
readmes="${readmes} %{buildroot}%{_pkgdocdir}/collection/roles/${role}/README.md"
done
sh md2html.sh $readmes
%endif
%if %{with collection_artifact}
# Copy collection artifact to /usr/share/ansible/collections/ for collection-artifact
pushd .collections/ansible_collections/%{collection_namespace}/%{collection_name}/
mv %{collection_namespace}-%{collection_name}-%{version}.tar.gz \
%{buildroot}%{_datadir}/ansible/collections/
pushd %{collection_build_path}
mv %{collection_namespace}-%{collection_name}-%{version}.tar.gz \
%{buildroot}%{_datadir}/ansible/collections/
popd
%endif
@ -768,6 +677,303 @@ find %{buildroot}%{ansible_roles_dir} -mindepth 1 -maxdepth 1 | \
%endif
%changelog
* Mon Feb 26 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.21
- Resolves: RHEL-3241 : bootloader - Create bootloader role (MVP)
fix issue with path on arches other than x86_64, and EFI systems
- Resolves: RHEL-15872 : RHEL for Edge support in system roles
cockpit - fixed issue with test cleanup
postgresql - fixed issue with test cleanup
* Wed Feb 21 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.20
- Resolves: RHEL-16965 : rhc - new rhc_insights.display_name parameter
- Resolves: RHEL-16553 : snapshot - New Role for storage snapshot management (lvm, etc.)
fixes error handling
* Tue Feb 20 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.19
- Resolves: RHEL-16553 : snapshot - New Role for storage snapshot management (lvm, etc.)
fixes idempotency, check mode, cleanup, basic-smoke-test
* Tue Feb 20 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.18
- Resolves: RHEL-22229 : podman - user linger needed before secrets
fixed issue with ANSIBLE_GATHERING=explicit
- Resolves: RHEL-5985 ansible-sshd - Manage SSH certificates
fixed issue with RHEL7 tests
* Thu Feb 15 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.17
- Resolves: RHEL-25509 : nbde_server - fix: Allow tangd socket override directory to be managed outside of the role
- Resolves: RHEL-21491 : network - Add blackhole type route to rhel-system-roles.network
- Fixed issues with ANSIBLE_GATHERING=explicit in several roles
- Fixed test cleanup issues in several roles
* Tue Feb 13 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.16
- Resolves: RHEL-16553 : snapshot - New Role for storage snapshot management (lvm, etc.)
this is the MVP candidate for the snapshot role
* Mon Feb 12 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.15
- Resolves: RHEL-22108 : ha_cluster - Setting cluster members' attributes
* Sun Feb 11 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.14
- Resolves: RHEL-3241 : bootloader - Create bootloader role (MVP)
- Resolves: RHEL-21400 : postgresql - PostgreSQL system role: unable to install PostgreSQL version 15 on RHEL 9
* Fri Feb 9 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.13
- Resolves: RHEL-16975 : rhc - rhc: new rhc_insights.ansible_host parameter
Rename test playbook from .yaml to .yml
* Thu Feb 8 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.12
- Resolves: RHEL-22229 : podman - user linger needed before secrets
* Wed Jan 31 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.11
- Resolves: RHEL-21400 : postgresql - PostgreSQL system role: unable to install PostgreSQL version 15 on RHEL 9
- Resolves: RHEL-23309 : storage - tests_lvm_auto_size_cap_nvme_generated failed at "Assert expected size is actual size"
* Sat Jan 27 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.10
- Resolves: RHEL-14022 : storage - Basic support for creating shared logical volumes
GFS2 support in blivet is enabled
* Fri Jan 26 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.9
- Resolves: RHEL-21383 : ad_integration - feat: add ad_integration_preserve_authselect_profile
- Resolves: RHEL-21134 : ad_integration - feat: Add SSSD parameters support
- Resolves: RHEL-21123 : journald - feat: Add support for ForwardToSyslog
- Resolves: RHEL-22310 : podman - fix: cast secret data to string in order to allow JSON valued strings
- Resolves: RHEL-21402 : podman - fix: name of volume quadlet service should be basename-volume.service
- Resolves: RHEL-21400 : postgresql - PostgreSQL system role: unable to install PostgreSQL version 15 on RHEL 9
- Resolves: RHEL-16975 : rhc - rhc: new rhc_insights.ansible_host parameter
* Wed Jan 24 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.8
- Resolves: RHEL-16553 : snapshot - New Role for storage snapshot management (lvm, etc.)
* Fri Jan 19 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.7
- Add ExcludeArch i686 to fix build issues with ansible-core
- Resolves: RHEL-21946 : keylime_server - won't detect registrar start failure
* Thu Jan 18 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.6
- Resolves: RHEL-21537 : storage - lvmlockd process is not running - test only
* Mon Jan 15 2024 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.5
- Resolves: RHEL-3241 : bootloader - Create bootloader role (MVP)
* Tue Dec 12 2023 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.4
- Resolves: RHEL-15872 : RHEL for Edge support in system roles
updated several roles with ostree improvements
metrics role support for ostree
- Resolves: RHEL-16542 : fapolicyd - feat: Import code for fapolicyd system role
several role improvements
- Resolves: RHEL-4684 : ha_cluster - fix: set sbd.service timeout based on SBD_START_DELAY
- Resolves: RHEL-19047 : logging - fix: avoid conf of RatelimitBurst when RatelimitInterval is zero
- Resolves: RHEL-18170 : metrics - [RFE] Metrics system role support for configuring PMIE webhooks
- Resolves: RHEL-19242 : podman - fix: add no_log: true for tasks that can log secret data
- Resolves: RHEL-18963 : postgresql - feat: enable using postgresql 16
- Resolves: RHEL-16977 : rhc - rhc: support RHEL 7 managed nodes
- Resolves: RHEL-19042 : selinux - fix: no longer use "item" as a loop variable
- Resolves: RHEL-19044 : selinux - fix: Print an error message when module to be created doesn't exist
- Resolves: RHEL-14022 : storage - Basic support for creating shared logical volumes
* Fri Dec 1 2023 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.3
- Resolves: RHEL-17874 : ha_cluster - high-availability firewall service is not added on qdevice node
* Thu Nov 30 2023 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.2
- Resolves: RHEL-15872 : RHEL for Edge support in system roles
vpn - fixed issue with test cleanup
* Thu Nov 30 2023 Rich Megginson <rmeggins@redhat.com> - 1.23.0-2.1
- Resolves: RHEL-15872 : - RHEL for Edge support in system roles
except for nbde_client, rhc, metrics
- Resolves: RHEL-17667 : ad_integration - feat: Add sssd custom settings
- Resolves: RHEL-16542 : fapolicyd - feat: Import code for fapolicyd system role
- Resolves: RHEL-14090 : ha_cluster - [RFE] HA Cluster system role should be able to enable Resilient Storage repository
- Resolves: RHEL-4624 : ha_cluster - [FutureFeature] Allow ha_cluster role to configure fencing topology
- Resolves: RHEL-3264 : ha_cluster - [FutureFeature] Allow ha_cluster role to configure all qdevice options
- Resolves: RHEL-3354 : kdump - fix: retry read of kexec_crash_size
- Resolves: RHEL-15933 : logging - feat: Add support for the global config option preserveFQDN with a new logg…
- Resolves: RHEL-15440 : logging - feat: Add support for general queue and general action parameters
- Resolves: RHEL-15038 : logging - fix: check that logging_max_message_size is set, not rsyslog_max_message_size
- Resolves: RHEL-16501 : network - Ansible RHEL network system role issue with ipv6.routing-rules the prefix length for 'from' cannot be zero"
- Resolves: RHEL-15871 : selinux - fix: Use `ignore_selinux_state` module option
- Resolves: RHEL-16213 : storage - feat: Support for creating volumes without a FS
* Thu Nov 9 2023 Sergei Petrosian <spetrosi@redhat.com> - 1.23.0-2
- RHEL-1119: ad_integration: Support for dynamic DNS Updates
Update to a new version with fixed tests
* Wed Sep 20 2023 Sergei Petrosian <spetrosi@redhat.com> - 1.23.0-1
- Resolves: RHEL-5345 spec - Remove with_html, instead use built-in .README.html
- Resolves: RHEL-5985 ansible-sshd - Manage SSH certificates
- rhbz#2224648: Remove ad_integration patch and use the latest ad_integration
version instead. Vendor community-general.ini_files for
- RHEL-1119: ad_integration: Support for dynamic DNS Updates
- Change link to open new issue in galaxy.yml from deprecated BZ to Jira
* Tue Aug 15 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-1
- Resolves:rhbz#2233183 : ad_integration - red hat "rhel system role" ad_integration leaks credentials when in check_mode
- Resolves:rhbz#2232391 : kdump - role: "Write new authorized_keys if needed" task idempotency issues
- Resolves:rhbz#2232392 : kdump - system role fails if kdump_ssh_user doesn't have a .ssh/authorized_keys file in home directory
- Resolves RHEL-1398 : kdump - fix: ensure .ssh directory exists for kdump_ssh_user on kdump_ssh_server
- Resolves RHEL-1500 : kdump - fix: Ensure authorized_keys management works with multiple hosts
- Resolves:rhbz#2224648 : firewall - fix: reload on resetting to defaults
- Resolves RHEL-1496 : firewall - fix: files: overwrite firewalld.conf on previous replaced
- Resolves RHEL-1498 : storage - fix: use stat.pw_name, stat.gr_name instead of owner, group
sshd README remove upstream only docs
first RC for 1.22.0 rhel 8.9 and 9.3
fix firewall reload test gather facts
* Thu Aug 10 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.21
- Resolves:rhbz#2220962 : podman - support quadlet units
support for rootless quadlets, secrets
* Wed Aug 09 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.20
- Resolves:rhbz#2140880 : firewall - missing module in linux-system-roles.firewall to create an ipset
* Tue Aug 01 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.19
- Resolves RHEL-866 : podman - use getsubids to look for subuid, subgid for IdM support
- Resolves RHEL-858 : podman - allow to not pull images, continue if image pull fails
- Resolves:rhbz#2224648 : firewall - fix: reload on resetting to defaults
- Resolves:rhbz#2226077 : podman - Podman system role: Unable to use podman_registries_conf to set unqualified-search-registries
- Resolves RHEL-918 : firewall - Ansible RHEL firewall system role not idempotent when configuring the interface using the role in rhel9
- Resolves RHEL-907 : kdump - use failure_action instead of default on EL9 and later
- Resolves RHEL-899 : firewall - Check mode fails with replacing previous rules
- Resolves:rhbz#2227823 : rhc - baseurl in rhsm.conf is empty when rhc_baseurl is not specified
* Wed Jul 26 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.18
- Resolves:rhbz#2224388 : systemd - system role for managing systemd units
* Tue Jul 25 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.17
- Resolves:rhbz#2224387 : keylime_server - system role for managing keylime servers
* Fri Jul 21 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.16
- Resolves:rhbz#2220963 : podman - allow container networking configuration
- Resolves:rhbz#2220961 : podman - support for healthchecks and healthcheck actions
- Resolves:rhbz#2220962 : podman - support quadlet units
- Resolves:rhbz#2224388 : systemd - system role for managing systemd units
- Resolves:rhbz#2223036 : ALL - facts being gathered unnecessarily
- Resolves:rhbz#2186057 : certificate - rhel-system-roles.certificate does not re-issue after updating key_size
- Resolves:rhbz#2222433 : firewall - Check mode fails when creating new firewall service
- Resolves:rhbz#2222809 : firewall - should have option to disable conflicting services
- Resolves:rhbz#2222808 : firewall - when firewalld.service is masked, firewall role fails
- Resolves:rhbz#2224094 : storage - RAID volume pre cleanup - remove existing data from member disks as needed before creation
* Mon Jul 10 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.15
- Resolves:rhbz#2218204 : certificate - add mode parameter to change permissions for cert files
- Resolves:rhbz#2218595 : network - Support no-aaaa DNS option
* Sun Jul 09 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.14
- Resolves:rhbz#2218899 : storage - [RHEL8] Unexpected behavior when creating ext4 filesystem with invalid parameter
* Fri Jun 23 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.13
- Resolves:rhbz#2216759 : ssh - add ssh_backup option with default true
- Resolves:rhbz#2216521 : firewall - Don't install python(3)-firewall it's a dependency of firewalld
* Thu Jun 22 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.12
- Resolves:rhbz#2168738 : storage - Storage: mounted devices that are in use cannot be resized
* Tue Jun 20 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.11
- Resolves:rhbz#2211272 : kdump - support auto_reset_crashkernel, dracut_args, deprecate /etc/sysconfig/kdump
* Wed Jun 07 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.10
- Resolves:rhbz#2211723 : ad_integration - add ad_integration_force_rejoin
* Tue Jun 06 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.9
- Resolves:rhbz#2211273 : network - Support configuring auto-dns setting
- Resolves:rhbz#2211778 : rhc - implement rhc_proxy.scheme
- Resolves:rhbz#2141961 : storage - RFE for the storage system role to support configuring the stripe size for RAID LVM volumes
- Resolves:rhbz#2211271 : selinux - use restorecon -T 0 on supported platforms
- Resolves:rhbz#2211247 : storage - Failed to commit changes to disk: Failed to format device: Input/output error
* Tue May 30 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.8
- Resolves:rhbz#2181661 : storage - [RFE] user-specified mount point owner and permissions
- Resolves:rhbz#2193057 : storage - Cannot set chunk size for RAID: Unsupported parameters for (blivet) module: pools.raid_chunk_size
- Resolves:rhbz#2211247 : storage - Failed to commit changes to disk: Failed to format device: Input/output error
* Tue May 23 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.7
- remove upstream only docs from README.md files
- python3-setuptools is now required for release_collection.py
- fix ruamel issue described at https://github.com/linux-system-roles/auto-maintenance/pull/272
- Resolves:rhbz#2209441 : rhc - system role does not apply Insights tags
- Resolves:rhbz#2191702 : tlog - use the proxy provider - the files provider is deprecated in sssd
- Resolves:rhbz#2190500 : roles should support running with gather_facts: false
- READMEs for all roles contain only downstream applicable docs
- All roles/tests now work with ansible-core 2.15
- Fix some roles to work with remove-cloud-init
* Thu May 04 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.6
- Resolves:rhbz#2186910 : fingerprint in config files managed by roles
- Resolves:rhbz#2190478 : ha_cluster - Add possibility to load SBD watchdog kernel modules
- Resolves:rhbz#2190483 : ha_cluster - support for resource and operation defaults
- Resolves:rhbz#2151371 : postgresql - [RFE] system role for PostgreSQL management
- Resolves:rhbz#2179016 : rhc - [RFE] New role for Red Hat subscription management, insights management [rhel-8.9.0]
- Resolves:rhbz#2190480 : ha_cluster - use pcs to setup qdevice certificates if available
- Resolves:rhbz#2186198 : spec: Remove doc fragments from vendored modules
- Resolves:rhbz#2190500 : roles should support running with gather_facts: false
- Resolves:rhbz#2175326 : use ansible-galaxy collection build/install instead of tar
- Resolves:rhbz#2186908 : rhc - RHC system role: activation key registration fails if system is already registered
- Resolves:rhbz#2190499 : selinux - failing test - sshd/tests_firewall_selinux.yml - No package matching 'firewalld' found available, installed or updated
* Wed May 3 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.5
- fix issue with postgresql tests
* Tue May 2 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.4
- fix issue with ha_cluster vendoring modprobe
- move vendoring into included files
* Thu Apr 27 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.3
- fix issues in some tests with ANSIBLE_GATHERING=explicit
- add testing for fingerprints in config files
- fix podman jinja 2.7 issue
- sshd - skip firewall testing if not supported
* Thu Apr 6 2023 Rich Megginson <rmeggins@redhat.com> - 1.22.0-0.2
- initial 8.9/9.3
* Thu Apr 6 2023 Sergei Petrosian <spetrosi@redhat.com> - 1.21.1-2
- Resolves: rhbz#2185002 : Remove doc fragments from vendored modules
- Build collection artifact in the same directory on Fedora and RHEL
* Thu Mar 16 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.1-1
- Resolves:rhbz#2144877 : rhc - new role for subscription management/registration/insights
- includes the fix for tests_proxy.yml selinux and some test refactoring
* Wed Feb 22 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-2
- Resolves:rhbz#2144877 : rhc - new role for subscription management/registration/insights
- remove role until https://bugzilla.redhat.com/show_bug.cgi?id=2171829 is fixed
* Mon Feb 20 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-1
- Resolves:rhbz#2168733 : network - RedHat Role rhel-system-roles.network should route traffic via correct bond
* Thu Feb 16 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.19
- Resolves:rhbz#2144877 : rhc - new role for subscription management/registration/insights
- vendor in modules required by rhc role
- Resolves:rhbz#2167941 : ha_cluster - Fix stonith watchdog timeout
* Wed Feb 15 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.18
- Resolves:rhbz#2144877 : rhc - new role for subscription management/registration/insights
- ad_integration - fix issue with using the network role to configure DNS
* Thu Feb 09 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.17
- Resolves:rhbz#2164879 : selinux - managing modules is not idempotent
- Fix nbde_server test issue
* Fri Feb 03 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.16
- Resolves:rhbz#2165176 : journald - New role - journald - manage systemd-journald
- Resolves:rhbz#2159972 : nbde_client - nbde_client_clevis fails with a traceback and prints sensitive data
- Resolves:rhbz#2164879 : selinux - managing modules is not idempotent
- fix storage tests_swap and tests_misc - swap size < 128GB on EL7
- fix podman general-meta issue
- ha_cluster non-x86_64 tests issue
- certificate non-x86_64 tests issue
* Fri Jan 20 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.15
- Resolves:rhbz#2162788 : network - role should support running tests with ANSIBLE_GATHERING=explicit
- Resolves:rhbz#2149683 : Synchronize automation-related changes from Fedora spec file
- Fix ansible-test issues in several roles
- Fix nbde_server tang test failure
* Fri Jan 13 2023 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.14
- Resolves:rhbz#2143814 : ha_cluster - Allow quorum device configuration
- Resolves:rhbz#2153081 : ha_cluster - Allow enabled SBD on disabled cluster
- Resolves:rhbz#2127497 : ha_cluster - use no_log in tasks looping over pot. secret parameters
- community.general 6.2.0
- replace community.general with namespace.name for rhc role
* Thu Dec 15 2022 Rich Megginson <rmeggins@redhat.com> - 1.21.0-0.13
- Resolves:rhbz#2151355 : storage - [RHEL8] disks_needed need to be set for the raid test cases
- Resolves:rhbz#2154143 : storage - [RHEL8] tests_create_thinp_then_remove_scsi_generated.yml failed at "assertion": "(storage_test_expected_size|int - storage_test_actual_size.bytes)|abs / storage_test_expected_size|int < 0.01"