diff --git a/ansible-pcp.spec b/ansible-pcp.spec index a987415..e9965ae 100644 --- a/ansible-pcp.spec +++ b/ansible-pcp.spec @@ -1,30 +1,55 @@ -%if 0%{?rhel} -%global collection_namespace redhat -%global collection_name rhel_metrics -%bcond_with ansible -%else -%global collection_namespace performancecopilot -%global collection_name metrics -%bcond_without ansible -%endif - Name: ansible-pcp Version: 2.2.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Ansible Metric collection for Performance Co-Pilot License: MIT URL: https://github.com/performancecopilot/ansible-pcp Source: https://github.com/performancecopilot/ansible-pcp/archive/v%{version}/%{name}-%{version}.tar.gz +BuildArch: noarch -%if 0%{?rhel} >= 9 -Requires: ansible-core +%if 0%{?rhel} +%global collection_namespace redhat +%global collection_name rhel_metrics +%else +%global collection_namespace performancecopilot +%global collection_name metrics %endif -%if %{with ansible} -BuildRequires: ansible >= 2.9.10 +%if 0%{?rhel} >= 8 +Requires: (ansible-core >= 2.11.0 or ansible >= 2.9.0) +%endif + +# 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 +%global have_ansible 0 +%global ansible_build_dep ansible-core >= 2.11.0 +%else +%if 0%{?rhel} && ! 0%{?epel} +%global have_ansible 1 +%else +%global have_ansible 0 +%global ansible_build_dep ansible >= 2.9.10 +%endif +%endif + +%if %{have_ansible} +BuildRequires: %{ansible_build_dep} +# package has been removed from RHEL9 +%if 0%{?rhel} >= 9 +%global have_ansible_lint 0 +%else +%global have_ansible_lint 1 +%endif +%else +%global have_ansible_lint 0 +%global ansible_collection_files %{_datadir}/ansible/collections/ansible_collections/%{collection_namespace} +%endif + +%if %{have_ansible_lint} BuildRequires: python3-ansible-lint %endif -BuildArch: noarch %description A collection containing roles for Performance Co-Pilot (PCP) and related @@ -79,24 +104,26 @@ find . -name \*.yml -o -name \*.md | while read file; do $file done -%if %{without ansible} -%define ansible_collection_files %{_datadir}/ansible/collections/ansible_collections/%{collection_namespace} -# Empty command. We don't have ansible-galaxy. -%define ansible_collection_build() tar -cf %{_tmppath}/%{collection_namespace}-%{collection_name}-%{version}.tar.gz . -# Simply copy everything instead of galaxy-installing the built artifact. -%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) +%build +%if %{have_ansible} +%ansible_collection_build +%else +tar -cf %{_tmppath}/%{collection_namespace}-%{collection_name}-%{version}.tar.gz . %endif -%build -%ansible_collection_build - %install +%if %{have_ansible} %ansible_collection_install +%else +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 +%endif %check mv yamllint.yml .yamllint.yml mv yamllint_defaults.yml .yamllint_defaults.yml -%if %{with ansible} +%if %{have_ansible_lint} ansible-lint `find roles -name \*.yml` %endif @@ -106,6 +133,9 @@ ansible-lint `find roles -name \*.yml` %{ansible_collection_files} %changelog +* Tue Feb 15 2022 Nathan Scott 2.2.4-3 +- RHEL8.6+, RHEL9+, Fedora - add "ansible-core or ansible" dep + * Wed Jan 19 2022 Fedora Release Engineering - 2.2.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild