ansible-pcp/ansible-pcp.spec

214 lines
7.6 KiB
RPMSpec
Raw Permalink Normal View History

Name: ansible-pcp
2024-11-20 15:59:33 +00:00
Version: 2.4.1
Release: 1%{?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 %{defined rhel}
2021-02-05 06:25:03 +00:00
%global collection_namespace redhat
%global collection_name rhel_metrics
%global ansible_collection_files %{_datadir}/ansible/collections/ansible_collections/%{collection_namespace}
2021-06-03 04:39:43 +00:00
%else
%global collection_namespace performancecopilot
%global collection_name metrics
2021-02-05 06:25:03 +00:00
%endif
2020-11-11 19:24:33 +00:00
%if 0%{?rhel} >= 8
Requires: (ansible-core >= 2.11.0 or ansible >= 2.9.0)
%endif
2020-11-11 19:24:33 +00:00
2021-12-17 04:37:37 +00:00
%if 0%{?rhel} >= 9
BuildRequires: ansible-core
%global ansible_collection_build ansible-galaxy collection build .
%global ansible_collection_install ansible-galaxy collection install -n -p %{buildroot}%{_datadir}/ansible/collections %{collection_namespace}-%{collection_name}-%{version}.tar.gz
2021-12-17 04:37:37 +00:00
%endif
%if %{defined fedora}
BuildRequires: ansible-packaging
BuildRequires: ansible-packaging-tests
# There's ansible-lint errors that need to be addressed
# BuildRequires: python3-ansible-lint
2021-06-03 04:39:43 +00:00
%endif
2020-11-11 19:24:33 +00:00
%description
A collection containing roles for Performance Co-Pilot (PCP) and related
software such as Grafana and Valkey.
The collection is made up of several Ansible roles, including:
2020-11-11 19:24:33 +00:00
2021-02-05 06:25:03 +00:00
%{collection_namespace}.%{collection_name}.pcp
2020-11-11 19:24:33 +00:00
A role for core PCP capabilities, configuring live performance analysis
with a large base set of metrics from the kernel and system services, as
well as data recording and rule inference.
%{collection_namespace}.%{collection_name}.keyserver
A role for configuring a local key server (Valkey/Redis), suitable for
use with a Performance Co-Pilot archive repository (for single or many
hosts) and fast, scalable querying of metrics.
2020-11-11 19:24:33 +00:00
2021-02-05 06:25:03 +00:00
%{collection_namespace}.%{collection_name}.grafana
2020-11-11 19:24:33 +00:00
A role for configuring a local Grafana server, providing web frontend
visuals for Performance Co-Pilot metrics, both live and historically.
Data sources for Vector (live), Valkey (historical) and interactive
2020-11-11 19:24:33 +00:00
bpftrace (eBPF) scripts can be configured by this role. The PCP REST
API service (from the core pcp role) should be configured in order to
use this role.
2021-02-05 06:25:03 +00:00
%{collection_namespace}.%{collection_name}.bpftrace
2020-11-11 19:24:33 +00:00
A role that extends the core PCP role, providing metrics from bpftrace
scripts using Linux eBPF facilities. Configuring authentication of a
local user capable of running bpftrace scripts via the PCP agent is a
key task of this role.
2021-02-05 06:25:03 +00:00
%{collection_namespace}.%{collection_name}.elasticsearch
2020-11-11 19:24:33 +00:00
A role that extends the core PCP role, providing metrics from a live
ElasticSearch instance for PCP analysis or exporting of PCP metric
values (and metadata) to ElasticSearch for the indexing and querying
of performance data.
%prep
%autosetup -p1
2021-06-03 04:39:43 +00:00
%if 0%{?rhel}
rm -vr roles/repository tests/*repository* tests/*/*repository* docs/repository
%endif
sed -i \
-e 's/^name: .*/name: %{collection_name}/g' \
-e 's/^namespace: .*/namespace: %{collection_namespace}/g' \
galaxy.yml
find . -name \*.yml -o -name \*.md | while read file; do
sed -i \
-e 's/performancecopilot.metrics/%{collection_namespace}.%{collection_name}/g' \
$file
done
2020-11-11 19:24:33 +00:00
%build
# 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 %{defined rhel} && 0%{?rhel} <= 8
tar -cf %{_tmppath}/%{collection_namespace}-%{collection_name}-%{version}.tar.gz .
%else
%ansible_collection_build
%endif
2020-11-11 19:24:33 +00:00
%install
%if %{defined rhel} && 0%{?rhel} <= 8
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
%ansible_collection_install
%endif
2020-11-11 19:24:33 +00:00
%check
# There's outstanding ansible-lint failures that need to be addressed.
# %%if %%{defined fedora}
%if 0
2020-11-11 19:24:33 +00:00
ansible-lint `find roles -name \*.yml`
2021-06-03 04:39:43 +00:00
%endif
2020-11-11 19:24:33 +00:00
%files
%doc README.md
%license LICENSE
%{ansible_collection_files}
%changelog
2024-11-20 15:59:33 +00:00
* Wed Nov 20 2024 Sam Feifer <sfeifer@redhat.com> 2.4.1-1
- Latest upstream release to resolve build issues
* Thu Nov 07 2024 Nathan Scott <nathans@redhat.com> 2.4.0-1
- Latest upstream release
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 2.3.0-6
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 2.3.0-5
- Bump release for June 2024 mass rebuild
* Wed Jun 19 2024 Nathan Scott <nathans@redhat.com> 2.3.0-4
- Rebuild for c10s.
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
2023-11-28 00:18:00 +00:00
* Tue Nov 28 2023 Nathan Scott <nathans@redhat.com> 2.3.0-1
- Latest upstream release
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
2023-07-10 23:46:06 +00:00
* Tue Jul 11 2023 Nathan Scott <nathans@redhat.com> 2.2.9-1
- Latest upstream release
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
2022-11-28 03:39:41 +00:00
* Mon Nov 28 2022 Nathan Scott <nathans@redhat.com> 2.2.8-1
- Latest upstream release
2022-11-19 20:24:14 +00:00
* Sat Nov 19 2022 Maxwell G <gotmax@e.email> - 2.2.7-2
- BuildRequire ansible-packaging on Fedora
- Resolves: rhbz#2126889
- Fix inverted conditionals and build/install the collection using ansible-galaxy
- Keep ansible-lint disabled for now
- Remove unnecessary macros
- Exclude files with galaxy.yml build_ignore
2022-10-28 02:52:04 +00:00
* Fri Oct 28 2022 Nathan Scott <nathans@redhat.com> 2.2.7-1
- Latest upstream release
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
2022-04-21 06:58:31 +00:00
* Thu Apr 21 2022 Nathan Scott <nathans@redhat.com> 2.2.5-1
- Latest upstream release
* Tue Feb 15 2022 Nathan Scott <nathans@redhat.com> 2.2.4-3
- RHEL8.6+, RHEL9+, Fedora - add "ansible-core or ansible" dep
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
2021-12-17 04:37:37 +00:00
* Fri Dec 17 2021 Nathan Scott <nathans@redhat.com> 2.2.4-1
- Small fixes for bpftrace, mssql roles and tests
- RHEL9 - add "Requires: ansible-core"
- Latest upstream release
2021-11-12 04:36:00 +00:00
* Fri Nov 12 2021 Nathan Scott <nathans@redhat.com> 2.2.2-1
- Correct the URL listed for this package (BZ 2001902)
2021-11-12 04:36:00 +00:00
- Latest upstream release
2021-08-26 11:39:58 +00:00
* Thu Aug 26 2021 Nathan Scott <nathans@redhat.com> 2.2.1-1
- Latest upstream release
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
2021-06-25 08:13:57 +00:00
* Fri Jun 25 2021 Nathan Scott <nathans@redhat.com> 2.1.4-1
- Latest upstream release
2021-06-03 04:39:43 +00:00
* Thu Jun 03 2021 Nathan Scott <nathans@redhat.com> 2.1.3-1
- Latest upstream release
2021-02-05 06:25:03 +00:00
* Fri Feb 05 2021 Nathan Scott <nathans@redhat.com> 2.1.2-1
- Add RHEL macros to the spec alongside Fedora
- Latest upstream release
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
2020-11-11 19:24:33 +00:00
* Wed Nov 11 2020 Nathan Scott <nathans@redhat.com> 2.0.3-1
- Updated for new version with changed namespace
- Ansible collection macros now used in the spec
- Added ansible-lint checking in %%check section
* Fri Oct 23 2020 Nathan Scott <nathans@redhat.com> 1.0.0-1
- Initial RPM spec build