The package rpms/pcp.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/pcp.git/commit/?id=0b77ce60b4bdad....
Change:
+%ifarch s390 s390x armv7hl aarch64 i686
Thanks.
Full change:
============
commit 0b77ce60b4bdad3e462afcbb1f1d5985609a977a
Author: Mark Goodwin <mgoodwin(a)redhat.com>
Date: Sun Oct 20 00:09:24 2019 +1100
update to pcp v5.0.0
diff --git a/pcp.spec b/pcp.spec
index ff436bc..17453aa 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,18 +1,13 @@
Name: pcp
-Version: 4.3.4
-Release: 3%{?dist}
+Version: 5.0.0
+Release: 1%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL:
https://pcp.io
%global bintray
https://bintray.com/artifact/download
-%global github
https://github.com/performancecopilot
+Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
-Source0: %{bintray}/download/pcp/source/pcp-%{version}.src.tar.gz
-Source1: %{github}/pcp-webapp-vector/archive/1.3.1-1/pcp-webapp-vector-1.3.1-1.tar.gz
-Source2: %{github}/pcp-webapp-grafana/archive/1.9.1-2/pcp-webapp-grafana-1.9.1-2.tar.gz
-Source3: %{github}/pcp-webapp-graphite/archive/0.9.10/pcp-webapp-graphite-0.9.10.tar.gz
-Source4:
%{github}/pcp-webapp-blinkenlights/archive/1.0.1/pcp-webapp-blinkenlights-1.0.1.tar.gz
Patch0: pmcd-pmlogger-local-context.patch
%if 0%{?fedora} >= 26 || 0%{?rhel} > 7
@@ -47,9 +42,12 @@ Patch0: pmcd-pmlogger-local-context.patch
%global disable_podman 1
%endif
-%global disable_microhttpd 0
-%global disable_webapps 0
-%global disable_cairo 0
+# libchan, libhdr_histogram and pmdastatsd
+%if 0%{?fedora} > 31 || 0%{?rhel} > 8
+%global disable_statsd 0
+%else
+%global disable_statsd 1
+%endif
%if 0%{?rhel} > 7 || 0%{?fedora} >= 30
%global _with_python2 --with-python=no
@@ -90,6 +88,17 @@ Patch0: pmcd-pmlogger-local-context.patch
%global disable_bcc 1
%endif
+# support for pmdabpftrace
+%if 0%{?fedora} >= 30 || 0%{?rhel} > 8
+%ifarch s390 s390x armv7hl aarch64 i686
+%global disable_bpftrace 1
+%else
+%global disable_bpftrace 0
+%endif
+%else
+%global disable_bpftrace 1
+%endif
+
# support for pmdajson
%if 0%{?rhel} == 0 || 0%{?rhel} > 6
%if !%{disable_python2} || !%{disable_python3}
@@ -132,7 +141,7 @@ Patch0: pmcd-pmlogger-local-context.patch
%global disable_systemd 1
%endif
-# systemtap static probing, missing before el6 and on some architectures
+# static probes, missing before el6 and on some architectures
%if 0%{?rhel} == 0 || 0%{?rhel} > 5
%global disable_sdt 0
%else
@@ -143,14 +152,7 @@ Patch0: pmcd-pmlogger-local-context.patch
%endif
%endif
-# boost c++ library, widely available
-%if 0%{?rhel} == 0 || 0%{?rhel} > 5
-%global disable_boost 0
-%else
-%global disable_boost 1
-%endif
-
-# libuv
+# libuv async event library
%if 0%{?fedora} >= 28 || 0%{?rhel} > 7
%global disable_libuv 0
%else
@@ -179,6 +181,10 @@ Conflicts: librapi
Obsoletes: pcp-pmda-kvm
Provides: pcp-pmda-kvm
+# PCP REST APIs are now provided by pmproxy
+Obsoletes: pcp-webapi pcp-webapi-debuginfo
+Provides: pcp-webapi
+
#
https://fedoraproject.org/wiki/Packaging "C and C++"
BuildRequires: gcc gcc-c++
BuildRequires: procps autoconf bison flex
@@ -186,7 +192,6 @@ BuildRequires: nss-devel
BuildRequires: rpm-devel
BuildRequires: avahi-devel
BuildRequires: xz-devel
-BuildRequires: zlib-devel
%if !%{disable_python2}
%if 0%{?default_python} != 3
BuildRequires: python%{?default_python}-devel
@@ -203,23 +208,17 @@ BuildRequires: cyrus-sasl-devel
%if !%{disable_podman}
BuildRequires: libvarlink-devel
%endif
+%if !%{disable_statsd}
+BuildRequires: ragel chan-devel HdrHistogram_c-devel
+%endif
%if !%{disable_perfevent}
BuildRequires: libpfm-devel >= 4
%endif
-%if !%{disable_microhttpd}
-BuildRequires: libmicrohttpd-devel
-%endif
-%if !%{disable_cairo}
-BuildRequires: cairo-devel
-%endif
%if !%{disable_sdt}
BuildRequires: systemtap-sdt-devel
%endif
-%if !%{disable_boost}
-BuildRequires: boost-devel
-%endif
%if !%{disable_libuv}
-BuildRequires: libuv-devel >= 1.16
+BuildRequires: libuv-devel >= 1.0
%endif
%if !%{disable_openssl}
BuildRequires: openssl-devel >= 1.1.1
@@ -255,10 +254,8 @@ Requires: pcp-selinux = %{version}-%{release}
Obsoletes: pcp-gui-debuginfo
%endif
-Obsoletes: pcp-pmda-nvidia
-
-# Obsoletes for distros that already have single install pmda's with compat package
Obsoletes: pcp-compat pcp-collector pcp-monitor
+Obsoletes: pcp-pmda-nvidia
Requires: pcp-libs = %{version}-%{release}
@@ -323,12 +320,24 @@ Requires: pcp-libs = %{version}-%{release}
%global _with_podman --with-podman=yes
%endif
+%if %{disable_statsd}
+%global _with_statsd --with-statsd=no
+%else
+%global _with_statsd --with-statsd=yes
+%endif
+
%if %{disable_bcc}
%global _with_bcc --with-pmdabcc=no
%else
%global _with_bcc --with-pmdabcc=yes
%endif
+%if %{disable_bpftrace}
+%global _with_bpftrace --with-pmdabpftrace=no
+%else
+%global _with_bpftrace --with-pmdabpftrace=yes
+%endif
+
%if %{disable_json}
%global _with_json --with-pmdajson=no
%else
@@ -347,12 +356,6 @@ Requires: pcp-libs = %{version}-%{release}
%global _with_snmp --with-pmdasnmp=yes
%endif
-%if %{disable_webapps}
-%global _with_webapps --with-webapps=no
-%else
-%global _with_webapps --with-webapps=yes
-%endif
-
%global pmda_remove() %{expand:
if [ %1 -eq 0 ]
then
@@ -445,7 +448,7 @@ Requires: pcp-libs = %{version}-%{release}
Requires: pcp-libs-devel = %{version}-%{release}
Requires: pcp-devel = %{version}-%{release}
%if !%{disable_libuv}
-Requires: libuv-devel >= 1.16
+Requires: libuv-devel >= 1.0
%endif
Obsoletes: pcp-gui-testsuite
# The following are inherited from pcp-collector and pcp-monitor,
@@ -462,16 +465,22 @@ Requires: pcp-pmda-lustrecomm pcp-pmda-logger pcp-pmda-docker
pcp-pmda-bind2
%if !%{disable_podman}
Requires: pcp-pmda-podman
%endif
+%if !%{disable_statsd}
+Requires: pcp-pmda-statsd
+%endif
%if !%{disable_nutcracker}
Requires: pcp-pmda-nutcracker
%endif
%if !%{disable_bcc}
Requires: pcp-pmda-bcc
%endif
+%if !%{disable_bpftrace}
+Requires: pcp-pmda-bpftrace
+%endif
%if !%{disable_python2} || !%{disable_python3}
Requires: pcp-pmda-gluster pcp-pmda-zswap pcp-pmda-unbound pcp-pmda-mic
-Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-prometheus pcp-pmda-haproxy
-Requires: pcp-pmda-lmsensors
+Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-openmetrics pcp-pmda-haproxy
+Requires: pcp-pmda-lmsensors pcp-pmda-mssql pcp-pmda-netcheck
%endif
%if !%{disable_snmp}
Requires: pcp-pmda-snmp
@@ -483,9 +492,6 @@ Requires: pcp-pmda-json
Requires: pcp-pmda-rpm
%endif
Requires: pcp-pmda-summary pcp-pmda-trace pcp-pmda-weblog
-%if !%{disable_microhttpd}
-Requires: pcp-webapi
-%endif
%if !%{disable_python2} || !%{disable_python3}
Requires: pcp-system-tools
%endif
@@ -516,100 +522,6 @@ daemons are running when appropriate, and manages their log
rotation
needs. It is an alternative to the cron-based pmlogger/pmie service
scripts.
-%if !%{disable_microhttpd}
-#
-# pcp-webapi
-#
-%package webapi
-License: GPLv2+
-Summary: Performance Co-Pilot (PCP) web API service
-URL:
https://pcp.io
-Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release}
-Requires: liberation-sans-fonts
-
-%description webapi
-Provides a daemon (pmwebd) that binds a large subset of the Performance
-Co-Pilot (PCP) client API (PMAPI) to RESTful web applications using the
-HTTP (PMWEBAPI) protocol.
-%endif
-
-%if !%{disable_webapps}
-#
-# pcp-webjs and pcp-webapp packages
-#
-%package webjs
-License: ASL 2.0 and MIT and CC-BY and GPLv3
-Conflicts: pcp-webjs < 3.11.9
-%if !%{disable_noarch}
-BuildArch: noarch
-%endif
-Requires: pcp-webapp-vector pcp-webapp-blinkenlights
-Requires: pcp-webapp-graphite pcp-webapp-grafana
-Summary: Performance Co-Pilot (PCP) web applications
-URL:
https://pcp.io
-
-%description webjs
-Javascript web application content for the Performance Co-Pilot (PCP)
-web service.
-
-%package webapp-vector
-License: ASL 2.0
-%if !%{disable_noarch}
-BuildArch: noarch
-%endif
-Summary: Vector web application for Performance Co-Pilot (PCP)
-URL:
https://github.com/Netflix/vector
-
-%description webapp-vector
-Vector web application for the Performance Co-Pilot (PCP).
-
-%package webapp-grafana
-License: ASL 2.0
-Conflicts: pcp-webjs < 3.10.4
-%if !%{disable_noarch}
-BuildArch: noarch
-%endif
-Summary: Grafana web application for Performance Co-Pilot (PCP)
-URL:
https://grafana.org
-
-%description webapp-grafana
-Grafana is an open source, feature rich metrics dashboard and graph
-editor. This package provides a Grafana that uses the Performance
-Co-Pilot (PCP) as the data repository. Other Grafana backends are
-not used.
-
-Grafana can render time series dashboards at the browser via flot.js
-(more interactive, slower, for beefy browsers) or alternately at the
-server via png (less interactive, faster).
-
-%package webapp-graphite
-License: ASL 2.0 and GPLv3
-Conflicts: pcp-webjs < 3.10.4
-%if !%{disable_noarch}
-BuildArch: noarch
-%endif
-Summary: Graphite web application for Performance Co-Pilot (PCP)
-URL:
http://graphite.readthedocs.org
-
-%description webapp-graphite
-Graphite is a highly scalable real-time graphing system. This package
-provides a graphite version that uses the Performance Co-Pilot (PCP)
-as the data repository, and Graphites web interface renders it. The
-Carbon and Whisper subsystems of Graphite are not included nor used.
-
-%package webapp-blinkenlights
-License: ASL 2.0
-%if !%{disable_noarch}
-BuildArch: noarch
-%endif
-Summary: Blinking lights web application for Performance Co-Pilot (PCP)
-URL:
https://pcp.io
-
-%description webapp-blinkenlights
-Demo web application showing traffic lights that change colour based
-on the periodic evaluation of performance metric expressions.
-%endif
-
#
# perl-PCP-PMDA. This is the PCP agent perl binding.
#
@@ -936,6 +848,22 @@ This package contains the PCP Performance Metrics Domain Agent (PMDA)
for
collecting podman container and pod statistics through libvarlink.
%endif
+%if !%{disable_statsd}
+#
+# pcp-pmda-statsd
+#
+%package pmda-statsd
+License: GPLv2+
+Summary: Performance Co-Pilot (PCP) metrics from statsd
+URL:
https://pcp.io
+Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release}
+Requires: libchan.so.0() HdrHistogram_c
+
+%description pmda-statsd
+This package contains the PCP Performance Metrics Domain Agent (PMDA) for
+collecting statistics from the statsd daemon.
+%endif
+
%if !%{disable_perfevent}
#
# pcp-pmda-perfevent
@@ -1432,6 +1360,23 @@ extracting performance metrics from eBPF/BCC Python modules.
# end pcp-pmda-bcc
%endif
+%if !%{disable_bpftrace}
+#
+# pcp-pmda-bpftrace
+#
+%package pmda-bpftrace
+License: ASL 2.0 and GPLv2+
+Summary: Performance Co-Pilot (PCP) metrics from bpftrace scripts
+URL:
https://pcp.io
+Requires: bpftrace >= 0.9.2
+Requires: python3-pcp
+Requires: python3 >= 3.6
+%description pmda-bpftrace
+This package contains the PCP Performance Metrics Domain Agent (PMDA) for
+extracting performance metrics from bpftrace scripts.
+# end pcp-pmda-bpftrace
+%endif
+
%if !%{disable_python2} || !%{disable_python3}
#
# pcp-pmda-gluster
@@ -1627,11 +1572,11 @@ target.
#end pcp-pmda-lio
#
-# pcp-pmda-prometheus
+# pcp-pmda-openmetrics
#
-%package pmda-prometheus
+%package pmda-openmetrics
License: GPLv2+
-Summary: Performance Co-Pilot (PCP) metrics from Prometheus endpoints
+Summary: Performance Co-Pilot (PCP) metrics from OpenMetrics endpoints
URL:
https://pcp.io
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_python3}
@@ -1643,11 +1588,13 @@ Requires: %{__python2}-pcp
Requires: %{__python2}-requests
BuildRequires: %{__python2}-requests
%endif
+Obsoletes: pcp-pmda-prometheus
+Provides: pcp-pmda-prometheus
-%description pmda-prometheus
+%description pmda-openmetrics
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
-extracting statistics from programs instrumented as Prometheus endpoints.
-#end pcp-pmda-prometheus
+extracting metrics from OpenMetrics (
https://openmetrics.io/) endpoints.
+#end pcp-pmda-openmetrics
#
# pcp-pmda-lmsensors
@@ -1669,6 +1616,42 @@ This package contains the PCP Performance Metrics Domain Agent
(PMDA) for
collecting metrics about the Linux hardware monitoring sensors.
# end pcp-pmda-lmsensors
+#
+# pcp-pmda-mssql
+#
+%package pmda-mssql
+License: GPLv2+
+Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server
+URL:
https://pcp.io
+Requires: pcp-libs = %{version}-%{release}
+%if !%{disable_python3}
+Requires: python3-pcp
+%else
+Requires: %{__python2}-pcp
+%endif
+%description pmda-mssql
+This package contains the PCP Performance Metrics Domain Agent (PMDA) for
+collecting metrics from Microsoft SQL Server.
+# end pcp-pmda-mssql
+
+#
+# pcp-pmda-netcheck
+#
+%package pmda-netcheck
+License: GPLv2+
+Summary: Performance Co-Pilot (PCP) metrics for simple network checks
+URL:
https://pcp.io
+Requires: pcp-libs = %{version}-%{release}
+%if !%{disable_python3}
+Requires: python3-pcp
+%else
+Requires: %{__python2}-pcp
+%endif
+%description pmda-netcheck
+This package contains the PCP Performance Metrics Domain Agent (PMDA) for
+collecting metrics from simple network checks.
+# end pcp-pmda-netcheck
+
%endif # !%{disable_python2} || !%{disable_python3}
%if !%{disable_json}
@@ -2086,7 +2069,7 @@ BuildRequires: setools
%else
BuildRequires: setools-console
%endif
-Requires: policycoreutils
+Requires: policycoreutils selinux-policy-targeted
%description selinux
This package contains SELinux support for PCP. The package contains
@@ -2095,10 +2078,6 @@ updated policy package.
%endif
%prep
-%setup -q -T -D -a 1 -c -n vector
-%setup -q -T -D -a 2 -c -n grafana
-%setup -q -T -D -a 3 -c -n graphite
-%setup -q -T -D -a 4 -c -n blinkenlights
%setup -q
%patch0 -p1
@@ -2106,7 +2085,7 @@ updated policy package.
%if !%{disable_python2} && 0%{?default_python} != 3
export PYTHON=python%{?default_python}
%endif
-%configure %{?_with_initd} %{?_with_doc} %{?_with_dstat} %{?_with_ib} %{?_with_podman}
%{?_with_perfevent} %{?_with_bcc} %{?_with_json} %{?_with_snmp} %{?_with_nutcracker}
%{?_with_webapps} %{?_with_python2}
+%configure %{?_with_initd} %{?_with_doc} %{?_with_dstat} %{?_with_ib} %{?_with_podman}
%{?_with_statsd} %{?_with_perfevent} %{?_with_bcc} %{?_with_bpftrace} %{?_with_json}
%{?_with_snmp} %{?_with_nutcracker} %{?_with_python2}
make %{?_smp_mflags} default_pcp
%install
@@ -2126,20 +2105,6 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/sheet2pcp
$RPM_BUILD_ROOT/%{_mandir}/man1/sheet
rm -f $RPM_BUILD_ROOT/%{_includedir}/pcp/configsz.h
rm -f $RPM_BUILD_ROOT/%{_includedir}/pcp/platformsz.h
-%if %{disable_microhttpd}
-rm -fr $RPM_BUILD_ROOT/%{_confdir}/pmwebd
-rm -fr $RPM_BUILD_ROOT/%{_initddir}/pmwebd
-rm -fr $RPM_BUILD_ROOT/%{_unitdir}/pmwebd.service
-rm -f $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin/pmwebd
-%endif
-%if !%{disable_webapps}
-for app in vector grafana graphite blinkenlights; do
- pwd
- webapp=`find ../$app -mindepth 1 -maxdepth 1`
- mv $webapp $RPM_BUILD_ROOT/%{_datadir}/pcp/webapps/$app
-done
-%endif
-
%if %{disable_infiniband}
# remove pmdainfiniband on platforms lacking IB devel packages.
rm -f $RPM_BUILD_ROOT/%{_pmdasdir}/ib
@@ -2165,7 +2130,7 @@ desktop-file-validate
$RPM_BUILD_ROOT/%{_datadir}/applications/pmchart.desktop
%endif
# default chkconfig off for Fedora and RHEL
-for f in $RPM_BUILD_ROOT/%{_initddir}/{pcp,pmcd,pmlogger,pmie,pmwebd,pmmgr,pmproxy}; do
+for f in $RPM_BUILD_ROOT/%{_initddir}/{pcp,pmcd,pmlogger,pmie,pmmgr,pmproxy}; do
test -f "$f" || continue
sed -i -e '/^# chkconfig/s/:.*$/: - 95 05/' -e '/^#
Default-Start:/s/:.*$/:/' $f
done
@@ -2206,6 +2171,7 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
grep -E -v '^samba' |\
grep -E -v '^slurm' |\
grep -E -v '^snmp' |\
+ grep -E -v '^statsd' |\
grep -E -v '^vmware' |\
grep -E -v '^zimbra' |\
grep -E -v '^dm' |\
@@ -2219,6 +2185,8 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
grep -E -v '^logger' |\
grep -E -v '^mailq' |\
grep -E -v '^mounts' |\
+ grep -E -v '^mssql' |\
+ grep -E -v '^netcheck' |\
grep -E -v '^nvidia' |\
grep -E -v '^roomtemp' |\
grep -E -v '^sendmail' |\
@@ -2231,6 +2199,7 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
grep -E -v '^json' |\
grep -E -v '^mic' |\
grep -E -v '^bcc' |\
+ grep -E -v '^bpftrace' |\
grep -E -v '^gluster' |\
grep -E -v '^zswap' |\
grep -E -v '^unbound' |\
@@ -2239,7 +2208,7 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
# all base pcp package files except those split out into sub-packages
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- grep -E -v 'pmiostat|pmcollectl|zabbix|zbxpcp|dstat' |\
+ grep -E -v 'pmiostat|zabbix|zbxpcp|dstat' |\
grep -E -v 'pmrep|pcp2graphite|pcp2influxdb|pcp2zabbix' |\
grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\
grep -E -v 'pcp2spark' |\
@@ -2247,11 +2216,11 @@ ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
sed -e 's#^#'%{_bindir}'\/#' >base_bin.list
# Separate the pcp-system-tools package files.
-# pmcollectl and pmiostat are back-compat symlinks to their
-# pcp(1) sub-command variants so are also in pcp-system-tools.
+# pmiostat is a back-compat symlink to its pcp(1) sub-command variant
+# so its also in pcp-system-tools.
%if !%{disable_python2} || !%{disable_python3}
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- egrep -e 'pmiostat|pmcollectl|pmrep|dstat' |\
+ egrep -e 'pmiostat|pmrep|dstat' |\
sed -e 's#^#'%{_bindir}'\/#' >pcp-system-tools.list
ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
egrep -e 'atop|collectl|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \
@@ -2293,7 +2262,7 @@ ls -1 $RPM_BUILD_ROOT/%{_logconfdir}/ |\
sed -e 's#^#'%{_logconfdir}'\/#' |\
grep -E -v 'zeroconf' >pcp-logconf.list
cat base_pmdas.list base_bin.list base_exec.list pcp-logconf.list |\
- grep -E -v 'pmdaib|pmmgr|pmweb|pmsnap|2pcp|pmdas/systemd' |\
+ grep -E -v 'pmdaib|pmmgr|pmsnap|2pcp|pmdas/systemd' |\
grep -E -v "$PCP_GUI|pixmaps|hicolor|pcp-doc|tutorials|selinux" |\
grep -E -v %{_confdir} | grep -E -v %{_logsdir} > base.list
@@ -2335,72 +2304,8 @@ exit 0
getent group pcp >/dev/null || groupadd -r pcp
getent passwd pcp >/dev/null || \
useradd -c "Performance Co-Pilot" -g pcp -d %{_localstatedir}/lib/pcp -M -r
-s /sbin/nologin pcp
-PCP_CONFIG_DIR=%{_localstatedir}/lib/pcp/config
-PCP_SYSCONF_DIR=%{_confdir}
-PCP_LOG_DIR=%{_logsdir}
-PCP_ETC_DIR=%{_sysconfdir}
-# rename crontab files to align with current Fedora packaging guidelines
-for crontab in pmlogger pmie
-do
- test -f "$PCP_ETC_DIR/cron.d/$crontab" || continue
- mv -f "$PCP_ETC_DIR/cron.d/$crontab"
"$PCP_ETC_DIR/cron.d/pcp-$crontab"
-done
-# produce a script to run post-install to move configs to their new homes
-save_configs_script()
-{
- _new="$1"
- shift
- for _dir
- do
- [ "$_dir" = "$_new" ] && continue
- if [ -d "$_dir" ]
- then
- ( cd "$_dir" ; find . -maxdepth 1 -type f ) | sed -e
's/^\.\///' \
- | while read _file
- do
- [ "$_file" = "control" ] && continue
- _want=true
- if [ -f "$_new/$_file" ]
- then
- # file exists in both directories, pick the more
- # recently modified one
- _try=`find "$_dir/$_file" -newer "$_new/$_file"
-print`
- [ -n "$_try" ] || _want=false
- fi
- $_want && echo cp -p "$_dir/$_file"
"$_new/$_file"
- done
- fi
- done
-}
-# migrate and clean configs if we have had a previous in-use installation
-[ -d "$PCP_LOG_DIR" ] || exit 0 # no configuration file upgrades required
-rm -f "$PCP_LOG_DIR/configs.sh"
-for daemon in pmie pmlogger
-do
- save_configs_script >> "$PCP_LOG_DIR/configs.sh"
"$PCP_CONFIG_DIR/$daemon" \
- "$PCP_SYSCONF_DIR/$daemon"
-done
-for daemon in pmcd pmproxy
-do
- save_configs_script >> "$PCP_LOG_DIR/configs.sh"
"$PCP_SYSCONF_DIR/$daemon"\
- "$PCP_CONFIG_DIR/$daemon" /etc/$daemon
-done
exit 0
-%if !%{disable_microhttpd}
-%preun webapi
-if [ "$1" -eq 0 ]
-then
-%if !%{disable_systemd}
- systemctl --no-reload disable pmwebd.service >/dev/null 2>&1
- systemctl stop pmwebd.service >/dev/null 2>&1
-%else
- /sbin/service pmwebd stop >/dev/null 2>&1
- /sbin/chkconfig --del pmwebd >/dev/null 2>&1
-%endif
-fi
-%endif
-
%preun manager
if [ "$1" -eq 0 ]
then
@@ -2438,6 +2343,11 @@ fi
%{pmda_remove "$1" "podman"}
%endif #preun pmda-podman
+%if !%{disable_statsd}
+%preun pmda-statsd
+%{pmda_remove "$1" "statsd"}
+%endif #preun pmda-statsd
+
%if !%{disable_json}
%preun pmda-json
%{pmda_remove "$1" "json"}
@@ -2496,8 +2406,8 @@ fi
%preun pmda-lio
%{pmda_remove "$1" "lio"}
-%preun pmda-prometheus
-%{pmda_remove "$1" "prometheus"}
+%preun pmda-openmetrics
+%{pmda_remove "$1" "openmetrics"}
%preun pmda-lustre
%{pmda_remove "$1" "lustre"}
@@ -2551,6 +2461,11 @@ fi
%{pmda_remove "$1" "bcc"}
%endif
+%if !%{disable_bpftrace}
+%preun pmda-bpftrace
+%{pmda_remove "$1" "bpftrace"}
+%endif
+
%if !%{disable_python2} || !%{disable_python3}
%preun pmda-gluster
%{pmda_remove "$1" "gluster"}
@@ -2573,6 +2488,12 @@ fi
%preun pmda-lmsensors
%{pmda_remove "$1" "lmsensors"}
+%preun pmda-mssql
+%{pmda_remove "$1" "mssql"}
+
+%preun pmda-netcheck
+%{pmda_remove "$1" "netcheck"}
+
%endif # !%{disable_python[2,3]}
%preun pmda-apache
@@ -2664,17 +2585,6 @@ then
rm -f "$PCP_PMNS_DIR/.NeedRebuild" >/dev/null 2>&1
fi
-%if !%{disable_microhttpd}
-%post webapi
-chown -R pcp:pcp %{_logsdir}/pmwebd 2>/dev/null
-%if !%{disable_systemd}
- systemctl condrestart pmwebd.service >/dev/null 2>&1
-%else
- /sbin/chkconfig --add pmwebd >/dev/null 2>&1
- /sbin/service pmwebd condrestart
-%endif
-%endif
-
%post manager
chown -R pcp:pcp %{_logsdir}/pmmgr 2>/dev/null
%if !%{disable_systemd}
@@ -2729,12 +2639,7 @@ pmieconf -c enable dmthin
%endif
%post
-PCP_LOG_DIR=%{_logsdir}
PCP_PMNS_DIR=%{_pmnsdir}
-# restore saved configs, if any
-test -s "$PCP_LOG_DIR/configs.sh" && source
"$PCP_LOG_DIR/configs.sh"
-rm -f $PCP_LOG_DIR/configs.sh
-
chown -R pcp:pcp %{_logsdir}/pmcd 2>/dev/null
chown -R pcp:pcp %{_logsdir}/pmlogger 2>/dev/null
chown -R pcp:pcp %{_logsdir}/sa 2>/dev/null
@@ -2761,7 +2666,7 @@ chmod 644 "$PCP_PMNS_DIR/.NeedRebuild"
/sbin/service pmproxy condrestart
%endif
-cd $PCP_PMNS_DIR && ./Rebuild -s && rm -f .NeedRebuild
+cd "$PCP_PMNS_DIR" && ./Rebuild -s && rm -f .NeedRebuild
cd
%if 0%{?fedora} >= 26 || 0%{?rhel} > 7
@@ -2949,51 +2854,6 @@ cd
%defattr(-,pcpqa,pcpqa)
%{_testsdir}
-%if !%{disable_microhttpd}
-%files webapi
-%{_initddir}/pmwebd
-%if !%{disable_systemd}
-%{_unitdir}/pmwebd.service
-%endif
-%{_libexecdir}/pcp/bin/pmwebd
-%attr(0775,pcp,pcp) %{_logsdir}/pmwebd
-%{_confdir}/pmwebd
-%config(noreplace) %{_confdir}/pmwebd/pmwebd.options
-# duplicate pcp, pcp-webapi and pcp-webjs directories, but rpm copes with that.
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%endif
-
-%if !%{disable_webapps}
-%files webjs
-# duplicate pcp, pcp-webapi and pcp-webjs directories, but rpm copes with that.
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%{_datadir}/pcp/webapps/*.png
-%{_datadir}/pcp/webapps/*.ico
-%{_datadir}/pcp/webapps/*.html
-
-%files webapp-blinkenlights
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%{_datadir}/pcp/webapps/blinkenlights
-
-%files webapp-grafana
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%{_datadir}/pcp/webapps/grafana
-
-%files webapp-graphite
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%{_datadir}/pcp/webapps/graphite
-
-%files webapp-vector
-%dir %{_datadir}/pcp
-%dir %{_datadir}/pcp/webapps
-%{_datadir}/pcp/webapps/vector
-%endif
-
%files manager
%{_initddir}/pmmgr
%if !%{disable_systemd}
@@ -3024,6 +2884,12 @@ cd
%{_pmdasdir}/podman
%endif
+%if !%{disable_statsd}
+%files pmda-statsd
+%{_pmdasdir}/statsd
+%config(noreplace) %{_pmdasdir}/statsd/statsd.ini
+%endif
+
%if !%{disable_perfevent}
%files pmda-perfevent
%{_pmdasdir}/perfevent
@@ -3069,8 +2935,8 @@ cd
%files pmda-lio
%{_pmdasdir}/lio
-%files pmda-prometheus
-%{_pmdasdir}/prometheus
+%files pmda-openmetrics
+%{_pmdasdir}/openmetrics
%files pmda-lustre
%{_pmdasdir}/lustre
@@ -3148,6 +3014,11 @@ cd
%{_pmdasdir}/bcc
%endif
+%if !%{disable_bpftrace}
+%files pmda-bpftrace
+%{_pmdasdir}/bpftrace
+%endif
+
%if !%{disable_python2} || !%{disable_python3}
%files pmda-gluster
%{_pmdasdir}/gluster
@@ -3196,6 +3067,12 @@ cd
%files pmda-lmsensors
%{_pmdasdir}/lmsensors
+%files pmda-mssql
+%{_pmdasdir}/mssql
+
+%files pmda-netcheck
+%{_pmdasdir}/netcheck
+
%endif # !%{disable_python2} || !%{disable_python3}
%files export-zabbix-agent
@@ -3307,11 +3184,8 @@ cd
%endif
%changelog
-* Thu Oct 03 2019 Miro Hronok <mhroncok(a)redhat.com> - 4.3.4-3
-- Rebuilt for Python 3.8.0rc1 (#1748018)
-
-* Mon Aug 19 2019 Miro Hronok <mhroncok(a)redhat.com> - 4.3.4-2
-- Rebuilt for Python 3.8
+* Fri Oct 11 2019 Mark Goodwin <mgoodwin(a)redhat.com> - 5.0.0-1
+- Update to latest PCP sources.
* Fri Aug 16 2019 Nathan Scott <nathans(a)redhat.com> - 4.3.4-1
- Resolve bootup issues with pmlogger service (BZ 1737091, BZ 1721223)
diff --git a/pmcd-pmlogger-local-context.patch b/pmcd-pmlogger-local-context.patch
new file mode 100644
index 0000000..1c1e90d
--- /dev/null
+++ b/pmcd-pmlogger-local-context.patch
@@ -0,0 +1,26 @@
+diff --git a/src/pmcd/pmcd.defaults b/src/pmcd/pmcd.defaults
+index 83ee4d9a9..56e125553 100644
+--- a/src/pmcd/pmcd.defaults
++++ b/src/pmcd/pmcd.defaults
+@@ -4,7 +4,7 @@
+ # Behaviour regarding listening on external-facing interfaces;
+ # unset PMCD_LOCAL to allow connections from remote hosts.
+ # A value of 0 permits remote connections, 1 permits local only.
+-# PMCD_LOCAL=1
++PMCD_LOCAL=1
+
+ # Max length to which the queue of pending connections may grow
+ # A value of 5 is the default.
+diff --git a/src/pmlogger/pmlogger.defaults b/src/pmlogger/pmlogger.defaults
+index 5462403ec..261a79039 100644
+--- a/src/pmlogger/pmlogger.defaults
++++ b/src/pmlogger/pmlogger.defaults
+@@ -4,7 +4,7 @@
+ # Behaviour regarding listening on external-facing interfaces;
+ # unset PMLOGGER_LOCAL to allow connections from remote hosts.
+ # A value of 0 permits remote connections, 1 permits local only.
+-# PMLOGGER_LOCAL=1
++PMLOGGER_LOCAL=1
+
+ # Max length to which the queue of pending connections may grow
+ # A value of 5 is the default.
diff --git a/sources b/sources
index 0c38edf..63d048e 100644
--- a/sources
+++ b/sources
@@ -1,6 +1 @@
-SHA512 (pcp-4.3.4.src.tar.gz) =
27e7d3558253edde342256b4f750160c216bb8323c47dd01ef8d67d49e702d1d70ba406cafdcbf6867ad63e460279e8214c39a1fd20b6b8c781dc33920587569
-SHA512 (pcp-webapp-blinkenlights-1.0.1.tar.gz) =
dadf0bc0742a3344a75f8f304851762572ddc9a5c7c66fd085adcabb70f9e7a9b2c9b6095a8fb358f6a6c64dbf41cf245e2da74a60b8120880f314b6ed3d271c
-SHA512 (pcp-webapp-grafana-1.9.1-2.tar.gz) =
abd0f360b057853d343e506e352a37d16f78bbae6760124ecdfab0e43ffcf3b31404311f1fe5c962e8abdbf2ad8699df3f27e2920f03f1a10bca3c0e01179e21
-SHA512 (pcp-webapp-graphite-0.9.10.tar.gz) =
f716e5145e5d39b54be02e39202c51bdd1158d56fa16185a591c0f54fb376a637653f0c13aa9c5ad5700fc62d0c71163e94b9fa689fabe3e6de4ddf19fa827fa
-SHA512 (pcp-webapp-vector-1.3.1-1.tar.gz) =
b1463d4da3727f130752699dd433e997212c19241ac440df389c1153e468ace840b7d5f43a37b2173e4eee4f4a807338a3c40cc9635801e626c1530baf46e289
-SHA512 (pmcd-pmlogger-local-context.patch) =
8f4b6b49494781d0a711ac27738a75b1adead72cb1baef9a78754686c48ae2d278d691108233e9cf9ad33fede5ba7b7a43f4674205b9bf448f267c844ddc1a01
+SHA512 (pcp-5.0.0.src.tar.gz) =
4a00b199343fcc33b9e4f262974e9d075892a76af92811428221ea9fbacf479a4852e2734caaff56fa6b492b0440e34db55256c91e4b89a9fe52a775645adf89
commit 5f1d7403cba66375bf722f37ba1d0883cd5b3eab
Author: Miro Hronok <miro(a)hroncok.cz>
Date: Thu Oct 3 13:58:17 2019 +0200
Rebuilt for Python 3.8.0rc1 (#1748018)
diff --git a/pcp.spec b/pcp.spec
index 265fe73..ff436bc 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,6 +1,6 @@
Name: pcp
Version: 4.3.4
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL:
https://pcp.io
@@ -3307,6 +3307,9 @@ cd
%endif
%changelog
+* Thu Oct 03 2019 Miro Hronok <mhroncok(a)redhat.com> - 4.3.4-3
+- Rebuilt for Python 3.8.0rc1 (#1748018)
+
* Mon Aug 19 2019 Miro Hronok <mhroncok(a)redhat.com> - 4.3.4-2
- Rebuilt for Python 3.8
commit 2041f4eccac70c7121cad947fb6289a1b69ac726
Author: Miro Hronok <miro(a)hroncok.cz>
Date: Mon Aug 19 10:21:59 2019 +0200
Rebuilt for Python 3.8
diff --git a/pcp.spec b/pcp.spec
index 215aa3b..265fe73 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,6 +1,6 @@
Name: pcp
Version: 4.3.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL:
https://pcp.io
@@ -3307,6 +3307,9 @@ cd
%endif
%changelog
+* Mon Aug 19 2019 Miro Hronok <mhroncok(a)redhat.com> - 4.3.4-2
+- Rebuilt for Python 3.8
+
* Fri Aug 16 2019 Nathan Scott <nathans(a)redhat.com> - 4.3.4-1
- Resolve bootup issues with pmlogger service (BZ 1737091, BZ 1721223)
- Resolve selinux policy issues in PCP tools (BZ 1721644, BZ 1711547)