Name: pcp Version: 3.12.2 Release: 6%{?dist} Summary: System-level performance monitoring and performance management License: GPLv2+ and LGPLv2.1+ and CC-BY URL: http://www.pcp.io Group: Applications/System %global bintray https://bintray.com/artifact/download %global github https://github.com/performancecopilot Source0: %{bintray}/download/pcp/source/pcp-%{version}.src.tar.gz Source1: %{github}/pcp-webapp-vector/archive/1.1.2/pcp-webapp-vector-1.1.2.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.0/pcp-webapp-blinkenlights-1.0.0.tar.gz Patch0: rhbz1513503.patch Patch1: selinux-pmstore.patch Patch2: selinux.patch Patch3: logmeta.patch Patch4: rhbz1488116.patch Patch5: rhbz1525864.patch Patch6: rhbz1537623.patch Patch7: 0001-pmdammv-resolve-an-instance-domain-setup-problem.patch %if 0%{?fedora} || 0%{?rhel} > 5 %global disable_selinux 0 %else %global disable_selinux 1 %endif %global disable_snmp 0 # There are no papi/libpfm devel packages for s390, armv7hl nor for some rhels, disable %ifarch s390 s390x armv7hl %global disable_papi 1 %global disable_perfevent 1 %else %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_papi 0 %else %global disable_papi 1 %endif %if 0%{?fedora} >= 20 || 0%{?rhel} > 6 %global disable_perfevent 0 %else %global disable_perfevent 1 %endif %endif %global disable_microhttpd 0 %global disable_cairo 0 %global disable_python2 0 # Default for epel5 is python24, so use the (optional) python26 packages %if 0%{?rhel} == 5 %global default_python 26 %endif # No python3 development environment before el8 %if 0%{?rhel} == 0 || 0%{?rhel} > 7 %global disable_python3 0 # Do we wish to mandate python3 use in pcp? (f22+ and el8+) %if 0%{?fedora} >= 22 || 0%{?rhel} > 7 %global default_python 3 %endif %else %global disable_python3 1 %endif %if 0%{?fedora} >= 24 || 0%{?rhel} > 7 %global perl_interpreter perl-interpreter %else %global perl_interpreter perl %endif # support for pmdajson %if 0%{?rhel} == 0 || 0%{?rhel} > 6 %if !%{disable_python2} || !%{disable_python3} %global disable_json 0 %else %global disable_json 1 %endif %else %global disable_json 1 %endif # support for pmdanutcracker (perl deps missing on rhel) %if 0%{?rhel} == 0 %global disable_nutcracker 0 %else %global disable_nutcracker 1 %endif # support for pmdarpm %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_rpm 0 %else %global disable_rpm 1 %endif # Qt development and runtime environment missing components before el6 %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_qt 0 # We need qt5 for fedora %if 0%{?fedora} != 0 %global default_qt 5 %endif %else %global disable_qt 1 %endif # systemd services and pmdasystemd %if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 %global disable_systemd 0 %else %global disable_systemd 1 %endif # systemtap static probing, missing before el6 and on some architectures %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_sdt 0 %else %ifnarch ppc ppc64 %global disable_sdt 0 %else %global disable_sdt 1 %endif %endif # boost c++ library, widely available %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_boost 0 %else %global disable_boost 1 %endif # rpm producing "noarch" packages %if 0%{?rhel} == 0 || 0%{?rhel} > 5 %global disable_noarch 0 %else %global disable_noarch 1 %endif %if 0%{?fedora} >= 24 %global disable_elasticsearch 0 %else %global disable_elasticsearch 1 %endif # python's xlsxwriter module hasn't been included yet, but hopefully # it will be eventually, leaving this as a variable for now. %if 0%{?fedora} || 0%{?rhel} %global disable_xlsx 1 %else %global disable_xlsx 1 %endif # prevent conflicting binary and man page install for pcp(1) Conflicts: librapi BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # https://fedoraproject.org/wiki/Packaging:C_and_C%2B%2B BuildRequires: gcc gcc-c++ BuildRequires: procps autoconf bison flex BuildRequires: nss-devel BuildRequires: rpm-devel BuildRequires: avahi-devel BuildRequires: zlib-devel %if !%{disable_python2} %if 0%{?default_python} != 3 BuildRequires: python%{?default_python}-devel %else BuildRequires: python-devel %endif %endif %if !%{disable_python3} BuildRequires: python3-devel %endif BuildRequires: ncurses-devel BuildRequires: readline-devel BuildRequires: cyrus-sasl-devel %if !%{disable_papi} BuildRequires: papi-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 0%{?rhel} == 0 || 0%{?rhel} > 5 BuildRequires: perl-devel %endif BuildRequires: perl(ExtUtils::MakeMaker) BuildRequires: initscripts man %if !%{disable_systemd} BuildRequires: systemd-devel %endif %if !%{disable_qt} BuildRequires: desktop-file-utils %if 0%{?default_qt} != 5 BuildRequires: qt4-devel >= 4.4 %else BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qtsvg-devel %endif %endif Requires: bash gawk sed grep fileutils findutils initscripts which Requires: pcp-libs = %{version}-%{release} %if !%{disable_selinux} Requires: pcp-selinux = %{version}-%{release} %endif Obsoletes: pcp-gui-debuginfo Obsoletes: pcp-pmda-nvidia # Obsoletes for distros that already have single install pmda's with compat package Obsoletes: pcp-compat Requires: pcp-libs = %{version}-%{release} Obsoletes: pcp-gui-debuginfo %global tapsetdir %{_datadir}/systemtap/tapset %global _confdir %{_sysconfdir}/pcp %global _logsdir %{_localstatedir}/log/pcp %global _pmnsdir %{_localstatedir}/lib/pcp/pmns %global _tempsdir %{_localstatedir}/lib/pcp/tmp %global _pmdasdir %{_localstatedir}/lib/pcp/pmdas %global _testsdir %{_localstatedir}/lib/pcp/testsuite %global _selinuxdir %{_localstatedir}/lib/pcp/selinux %global _logconfdir %{_localstatedir}/lib/pcp/config/pmlogconf %global _pixmapdir %{_datadir}/pcp-gui/pixmaps %global _hicolordir %{_datadir}/icons/hicolor %global _booksdir %{_datadir}/doc/pcp-doc %if 0%{?fedora} >= 20 || 0%{?rhel} >= 8 %global _with_doc --with-docdir=%{_docdir}/%{name} %endif %if !%{disable_systemd} %global _initddir %{_datadir}/pcp/lib %else %global _initddir %{_sysconfdir}/rc.d/init.d %global _with_initd --with-rcdir=%{_initddir} %endif # we never want Infiniband on s390 and armv7hl platforms %ifarch s390 s390x armv7hl %global disable_infiniband 1 %else # we never want Infiniband on RHEL5 or earlier %if 0%{?rhel} != 0 && 0%{?rhel} < 6 %global disable_infiniband 1 %else %global disable_infiniband 0 %endif %endif %if !%{disable_infiniband} %global _with_ib --with-infiniband=yes %endif %if !%{disable_papi} %global _with_papi --with-papi=yes %endif %if %{disable_perfevent} %global _with_perfevent --with-perfevent=no %else %global _with_perfevent --with-perfevent=yes %endif %if %{disable_json} %global _with_json --with-pmdajson=no %else %global _with_json --with-pmdajson=yes %endif %if %{disable_nutcracker} %global _with_nutcracker --with-pmdanutcracker=no %else %global _with_nutcracker --with-pmdanutcracker=yes %endif %if %{disable_snmp} %global _with_snmp --with-pmdasnmp=no %else %global _with_snmp --with-pmdasnmp=yes %endif %global pmda_remove() %{expand: if [ %1 -eq 0 ] then if [ -f "%{_confdir}/pmcd/pmcd.conf" ] && [ -f "%{_pmdasdir}/%2/domain.h" ] then (cd %{_pmdasdir}/%2/ && ./Remove >/dev/null 2>&1) fi fi } %global selinux_handle_policy() %{expand: if [ -e /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled then if [ %1 -ge 1 ] then PCP_SELINUX_DIR=%{_selinuxdir} if [ -f "$PCP_SELINUX_DIR/%2" ] then if semodule -h | grep -q -- "-X" >/dev/null 2>&1 then (semodule -X 400 -i %{_selinuxdir}/%2) else (semodule -i %{_selinuxdir}/%2) fi #semodule -X flag check fi elif [ %1 -eq 0 ] then if semodule -l | grep %2 >/dev/null 2>&1 then if semodule -h | grep -q -- "-X" >/dev/null 2>&1 then (semodule -X 400 -r %2 >/dev/null) else (semodule -r %2 >/dev/null) fi #semodule -X flag check fi fi fi # check for an active selinux install } %description Performance Co-Pilot (PCP) provides a framework and services to support system-level performance monitoring and performance management. The PCP open source release provides a unifying abstraction for all of the interesting performance data in a system, and allows client applications to easily retrieve and process any subset of that data. # # pcp-conf # %package conf License: LGPLv2.1+ Group: System Environment/Libraries Summary: Performance Co-Pilot run-time configuration URL: http://www.pcp.io # http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" Conflicts: pcp-libs < 3.9 %description conf Performance Co-Pilot (PCP) run-time configuration # # pcp-libs # %package libs License: LGPLv2.1+ Group: System Environment/Libraries Summary: Performance Co-Pilot run-time libraries URL: http://www.pcp.io Requires: pcp-conf = %{version}-%{release} %description libs Performance Co-Pilot (PCP) run-time libraries # # pcp-libs-devel # %package libs-devel License: GPLv2+ and LGPLv2.1+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) development headers URL: http://www.pcp.io %description libs-devel Performance Co-Pilot (PCP) headers for development. # # pcp-devel # %package devel License: GPLv2+ and LGPLv2.1+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) development tools and documentation URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} Requires: pcp-libs-devel = %{version}-%{release} %description devel Performance Co-Pilot (PCP) documentation and tools for development. # # pcp-testsuite # %package testsuite License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) test suite URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} Requires: pcp-libs-devel = %{version}-%{release} Requires: pcp-devel = %{version}-%{release} Obsoletes: pcp-gui-testsuite %description testsuite Quality assurance test suite for Performance Co-Pilot (PCP). # # pcp-manager # %package manager License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) manager daemon URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description manager An optional daemon (pmmgr) that manages a collection of pmlogger and pmie daemons, for a set of discovered local and remote hosts running the performance metrics collection daemon (pmcd). It ensures these 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+ Group: Applications/System Summary: Performance Co-Pilot (PCP) web API service URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %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 # # pcp-webjs and pcp-webapp packages # %package webjs License: ASL2.0 and MIT and CC-BY Group: Applications/Internet 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: http://www.pcp.io %description webjs Javascript web application content for the Performance Co-Pilot (PCP) web service. %package webapp-vector License: ASL2.0 Group: Applications/Internet %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: ASL2.0 Group: Applications/Internet 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: ASL2.0 Group: Applications/Internet 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: ASL2.0 Group: Applications/Internet %if !%{disable_noarch} BuildArch: noarch %endif Summary: Blinking lights web application for Performance Co-Pilot (PCP) URL: http://pcp.io %description webapp-blinkenlights Demo web application showing traffic lights that change colour based on the periodic evaluation of performance metric expressions. # # perl-PCP-PMDA. This is the PCP agent perl binding. # %package -n perl-PCP-PMDA License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Perl bindings and documentation URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: %{perl_interpreter} %description -n perl-PCP-PMDA The PCP::PMDA Perl module contains the language bindings for building Performance Metric Domain Agents (PMDAs) using Perl. Each PMDA exports performance data for one specific domain, for example the operating system kernel, Cisco routers, a database, an application, etc. # # perl-PCP-MMV # %package -n perl-PCP-MMV License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: %{perl_interpreter} %description -n perl-PCP-MMV The PCP::MMV module contains the Perl language bindings for building scripts instrumented with the Performance Co-Pilot (PCP) Memory Mapped Value (MMV) mechanism. This mechanism allows arbitrary values to be exported from an instrumented script into the PCP infrastructure for monitoring and analysis with pmchart, pmie, pmlogger and other PCP tools. # # perl-PCP-LogImport # %package -n perl-PCP-LogImport License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Perl bindings for importing external data into PCP archives URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: %{perl_interpreter} %description -n perl-PCP-LogImport The PCP::LogImport module contains the Perl language bindings for importing data in various 3rd party formats into PCP archives so they can be replayed with standard PCP monitoring tools. # # perl-PCP-LogSummary # %package -n perl-PCP-LogSummary License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Perl bindings for post-processing output of pmlogsummary URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: %{perl_interpreter} %description -n perl-PCP-LogSummary The PCP::LogSummary module provides a Perl module for using the statistical summary data produced by the Performance Co-Pilot pmlogsummary utility. This utility produces various averages, minima, maxima, and other calculations based on the performance data stored in a PCP archive. The Perl interface is ideal for exporting this data into third-party tools (e.g. spreadsheets). # # pcp-import-sar2pcp # %package import-sar2pcp License: LGPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for importing sar data into PCP archive logs URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: perl-PCP-LogImport = %{version}-%{release} Requires: sysstat Requires: perl(XML::TokeParser) %description import-sar2pcp Performance Co-Pilot (PCP) front-end tools for importing sar data into standard PCP archive logs for replay with any PCP monitoring tool. # # pcp-import-iostat2pcp # %package import-iostat2pcp License: LGPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for importing iostat data into PCP archive logs URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: perl-PCP-LogImport = %{version}-%{release} Requires: sysstat %description import-iostat2pcp Performance Co-Pilot (PCP) front-end tools for importing iostat data into standard PCP archive logs for replay with any PCP monitoring tool. # # pcp-import-mrtg2pcp # %package import-mrtg2pcp License: LGPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for importing MTRG data into PCP archive logs URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: perl-PCP-LogImport = %{version}-%{release} %description import-mrtg2pcp Performance Co-Pilot (PCP) front-end tools for importing MTRG data into standard PCP archive logs for replay with any PCP monitoring tool. # # pcp-import-ganglia2pcp # %package import-ganglia2pcp License: LGPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for importing ganglia data into PCP archive logs URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} Requires: perl-PCP-LogImport = %{version}-%{release} %description import-ganglia2pcp Performance Co-Pilot (PCP) front-end tools for importing ganglia data into standard PCP archive logs for replay with any PCP monitoring tool. # # pcp-import-collectl2pcp # %package import-collectl2pcp License: LGPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for importing collectl log files into PCP archive logs URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description import-collectl2pcp Performance Co-Pilot (PCP) front-end tools for importing collectl data into standard PCP archive logs for replay with any PCP monitoring tool. # # pcp-export-zabbix-agent # %package export-zabbix-agent License: GPLv2+ Group: Applications/System Summary: Module for exporting PCP metrics to Zabbix agent URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description export-zabbix-agent Performance Co-Pilot (PCP) module for exporting metrics from PCP to Zabbix via the Zabbix agent - see zbxpcp(3) for further details. %if !%{disable_python2} || !%{disable_python3} # # pcp-export-pcp2elasticsearch # %if !%{disable_elasticsearch} %package export-pcp2elasticsearch License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics to ElasticSearch URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} Requires: python3-elasticsearch BuildRequires: python3-elasticsearch %else Requires: python-pcp = %{version}-%{release} Requires: python-elasticsearch BuildRequires: python-elasticsearch %endif %description export-pcp2elasticsearch Performance Co-Pilot (PCP) front-end tools for exporting metric values to Elasticsearch - a distributed, RESTful search and analytics engine. See https://www.elastic.co/community for further details. %endif # # pcp-export-pcp2graphite # %package export-pcp2graphite License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics to Graphite URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %else Requires: python-pcp = %{version}-%{release} %endif %description export-pcp2graphite Performance Co-Pilot (PCP) front-end tools for exporting metric values to graphite (http://graphite.readthedocs.org). # pcp-export-pcp2influxdb # %package export-pcp2influxdb License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics to InfluxDB URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} Requires: python3-requests %else Requires: python-pcp = %{version}-%{release} Requires: python-requests %endif %description export-pcp2influxdb Performance Co-Pilot (PCP) front-end tools for exporting metric values to InfluxDB (https://influxdata.com/time-series-platform/influxdb). # # pcp-export-pcp2json # %package export-pcp2json License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics in JSON format URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %else Requires: python-pcp = %{version}-%{release} %endif %description export-pcp2json Performance Co-Pilot (PCP) front-end tools for exporting metric values in JSON format. # # pcp-export-pcp2xlsx # %if !%{disable_xlsx} %package export-pcp2xlsx License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics to Excel URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %else Requires: python-pcp = %{version}-%{release} %endif %description export-pcp2xlsx Performance Co-Pilot (PCP) front-end tools for exporting metric values in Excel spreadsheet format. %endif # # pcp-export-pcp2xml # %package export-pcp2xml License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics in XML format URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %else Requires: python-pcp = %{version}-%{release} %endif %description export-pcp2xml Performance Co-Pilot (PCP) front-end tools for exporting metric values in XML format. # # pcp-export-pcp2zabbix # %package export-pcp2zabbix License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot tools for exporting PCP metrics to Zabbix URL: http://www.pcp.io Requires: pcp-libs >= %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %else Requires: python-pcp = %{version}-%{release} %endif %description export-pcp2zabbix Performance Co-Pilot (PCP) front-end tools for exporting metric values to the Zabbix (https://www.zabbix.org/) monitoring software. %endif %if !%{disable_papi} # # pcp-pmda-papi # %package pmda-papi License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Performance API and hardware counters URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} BuildRequires: papi-devel %description pmda-papi This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting hardware counters statistics through PAPI (Performance API). %endif %if !%{disable_perfevent} # # pcp-pmda-perfevent # %package pmda-perfevent License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for hardware counters URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} Requires: libpfm >= 4 BuildRequires: libpfm-devel >= 4 %description pmda-perfevent This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting hardware counters statistics through libpfm. %endif %if !%{disable_infiniband} # # pcp-pmda-infiniband # %package pmda-infiniband License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Infiniband HCAs and switches URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} Requires: libibmad >= 1.3.7 libibumad >= 1.3.7 BuildRequires: libibmad-devel >= 1.3.7 libibumad-devel >= 1.3.7 %description pmda-infiniband This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting Infiniband statistics. By default, it monitors the local HCAs but can also be configured to monitor remote GUIDs such as IB switches. %endif # # pcp-pmda-activemq # %package pmda-activemq License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for ActiveMQ URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(LWP::UserAgent) %description pmda-activemq This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the ActiveMQ message broker. #end pcp-pmda-activemq # # pcp-pmda-bind2 # %package pmda-bind2 License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for BIND servers URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(LWP::UserAgent) Requires: perl(XML::LibXML) Requires: perl(File::Slurp) %description pmda-bind2 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from BIND (Berkeley Internet Name Domain). #end pcp-pmda-bind2 # # pcp-pmda-redis # %package pmda-redis License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Redis URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-redis This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from Redis servers (redis.io). #end pcp-pmda-redis %if !%{disable_nutcracker} # # pcp-pmda-nutcracker # %package pmda-nutcracker License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for NutCracker (TwemCache) URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(YAML::XS::LibYAML) Requires: perl(JSON) %description pmda-nutcracker This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from NutCracker (TwemCache). #end pcp-pmda-nutcracker %endif # # pcp-pmda-bonding # %package pmda-bonding License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Bonded network interfaces URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-bonding This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about bonded network interfaces. #end pcp-pmda-bonding # # pcp-pmda-dbping # %package pmda-dbping License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Database response times and Availablility URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-dbping This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Database response times and Availablility. #end pcp-pmda-dbping # # pcp-pmda-ds389 # %package pmda-ds389 License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Servers URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl-LDAP %description pmda-ds389 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about a 389 Directory Server. #end pcp-pmda-ds389 # # pcp-pmda-ds389log # %package pmda-ds389log License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl-Date-Manip %description pmda-ds389log This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from a 389 Directory Server log. #end pcp-pmda-ds389log # # pcp-pmda-elasticsearch # %package pmda-elasticsearch License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Elasticsearch URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(LWP::UserAgent) BuildRequires: perl(LWP::UserAgent) %description pmda-elasticsearch This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Elasticsearch. #end pcp-pmda-elasticsearch # # pcp-pmda-gpfs # %package pmda-gpfs License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for GPFS Filesystem URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-gpfs This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the GPFS filesystem. #end pcp-pmda-gpfs # # pcp-pmda-gpsd # %package pmda-gpsd License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-gpsd This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about a GPS Daemon. #end pcp-pmda-gpsd # # pcp-pmda-kvm # %package pmda-kvm License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for KVM URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-kvm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Kernel based Virtual Machine. #end pcp-pmda-kvm # # pcp-pmda-docker # %package pmda-docker License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics from the Docker daemon URL: http://www.pcp.io %description pmda-docker This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics using the Docker daemon REST API. #end pcp-pmda-docker # # pcp-pmda-lustre # %package pmda-lustre License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-lustre This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Lustre Filesystem. #end pcp-pmda-lustre # # pcp-pmda-lustrecomm # %package pmda-lustrecomm License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem Comms URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-lustrecomm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Lustre Filesystem Comms. #end pcp-pmda-lustrecomm # # pcp-pmda-memcache # %package pmda-memcache License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Memcached URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-memcache This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Memcached. #end pcp-pmda-memcache # # pcp-pmda-mysql # %package pmda-mysql License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for MySQL URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(DBI) perl(DBD::mysql) BuildRequires: perl(DBI) perl(DBD::mysql) %description pmda-mysql This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the MySQL database. #end pcp-pmda-mysql # # pcp-pmda-named # %package pmda-named License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Named URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-named This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Named nameserver. #end pcp-pmda-named # pcp-pmda-netfilter # %package pmda-netfilter License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Netfilter framework URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-netfilter This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Netfilter packet filtering framework. #end pcp-pmda-netfilter # # pcp-pmda-news # %package pmda-news License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Usenet News URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-news This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Usenet News. #end pcp-pmda-news # # pcp-pmda-nginx # %package pmda-nginx License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Nginx Webserver URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(LWP::UserAgent) BuildRequires: perl(LWP::UserAgent) %description pmda-nginx This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Nginx Webserver. #end pcp-pmda-nginx # # pcp-pmda-nfsclient # %package pmda-nfsclient License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for NFS Clients URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-nfsclient This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics for NFS Clients. #end pcp-pmda-nfsclient # # pcp-pmda-oracle # %package pmda-oracle License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Oracle database URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(DBI) BuildRequires: perl(DBI) %description pmda-oracle This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Oracle database. #end pcp-pmda-oracle # # pcp-pmda-pdns # %package pmda-pdns License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for PowerDNS URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-pdns This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the PowerDNS. #end pcp-pmda-pdns # # pcp-pmda-postfix # %package pmda-postfix License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Postfix (MTA) URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %if 0%{?fedora} > 16 || 0%{?rhel} > 5 Requires: postfix-perl-scripts BuildRequires: postfix-perl-scripts %endif %if 0%{?rhel} <= 5 Requires: postfix BuildRequires: postfix %endif %if "%{_vendor}" == "suse" Requires: postfix-doc BuildRequires: postfix-doc %endif %description pmda-postfix This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Postfix (MTA). #end pcp-pmda-postfix # # pcp-pmda-postgresql # %package pmda-postgresql License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for PostgreSQL URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} Requires: perl(DBI) perl(DBD::Pg) BuildRequires: perl(DBI) perl(DBD::Pg) %description pmda-postgresql This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the PostgreSQL database. #end pcp-pmda-postgresql # # pcp-pmda-rsyslog # %package pmda-rsyslog License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Rsyslog URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-rsyslog This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Rsyslog. #end pcp-pmda-rsyslog # # pcp-pmda-samba # %package pmda-samba License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Samba URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-samba This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Samba. #end pcp-pmda-samba # # pcp-pmda-slurm # %package pmda-slurm License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for NFS Clients URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-slurm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from the SLURM Workload Manager. #end pcp-pmda-slurm %if !%{disable_snmp} # # pcp-pmda-snmp # %package pmda-snmp License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Simple Network Management Protocol URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} # There are no perl-Net-SNMP packages in rhel, disable unless non-rhel or epel5 %if 0%{?rhel} == 0 || 0%{?rhel} < 6 Requires: perl(Net::SNMP) %endif %description pmda-snmp This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about SNMP. #end pcp-pmda-snmp %endif # # pcp-pmda-vmware # %package pmda-vmware License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for VMware URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-vmware This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics for VMware. #end pcp-pmda-vmware # # pcp-pmda-zimbra # %package pmda-zimbra License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Zimbra URL: http://www.pcp.io Requires: perl-PCP-PMDA = %{version}-%{release} %description pmda-zimbra This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Zimbra. #end pcp-pmda-zimbra # # pcp-pmda-dm # %package pmda-dm License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Device Mapper Cache and Thin Client URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-dm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Device Mapper Cache and Thin Client. # end pcp-pmda-dm %if !%{disable_python2} || !%{disable_python3} # # pcp-pmda-gluster # %package pmda-gluster License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Gluster filesystem URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp %else Requires: python-pcp %endif %description pmda-gluster This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the gluster filesystem. # end pcp-pmda-gluster # # pcp-pmda-zswap # %package pmda-zswap License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for compressed swap URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp %else Requires: python-pcp %endif %description pmda-zswap This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about compressed swap. # end pcp-pmda-zswap # # pcp-pmda-unbound # %package pmda-unbound License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Unbound DNS Resolver URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp %else Requires: python-pcp %endif %description pmda-unbound This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Unbound DNS Resolver. # end pcp-pmda-unbound # # pcp-pmda-mic # %package pmda-mic License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Intel MIC cards URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp %else Requires: python-pcp %endif %description pmda-mic This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Intel MIC cards. # end pcp-pmda-mic # # pcp-pmda-haproxy # %package pmda-haproxy License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for HAProxy URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp %else Requires: python-pcp %endif %description pmda-haproxy This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting performance metrics from HAProxy over the HAProxy stats socket. # end pcp-pmda-haproxy # # pcp-pmda-libvirt # %package pmda-libvirt License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for virtual machines URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp Requires: libvirt-python3 python3-lxml BuildRequires: libvirt-python3 python3-lxml %else Requires: python-pcp Requires: libvirt-python python-lxml %if 0%{?rhel} == 0 || 0%{?rhel} > 5 BuildRequires: libvirt-python python-lxml %endif %endif %description pmda-libvirt This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting virtualisation statistics from libvirt about behaviour of guest and hypervisor machines. # end pcp-pmda-libvirt # # pcp-pmda-lio # %package pmda-lio License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the LIO subsystem URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp Requires: python3-rtslib BuildRequires: python3-rtslib %else Requires: python-pcp Requires: python-rtslib BuildRequires: python-rtslib %endif %description pmda-lio This package provides a PMDA to gather performance metrics from the kernels iSCSI target interface (LIO). The metrics are stored by LIO within the Linux kernels configfs filesystem. The PMDA provides per LUN level stats, and a summary instance per iSCSI target, which aggregates all LUN metrics within the target. #end pcp-pmda-lio # # pcp-pmda-prometheus # %package pmda-prometheus License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics from Prometheus endpoints URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %if !%{disable_python3} Requires: python3-pcp Requires: python3-requests BuildRequires: python3-requests %else Requires: python-pcp Requires: python-requests BuildRequires: python-requests %endif %description pmda-prometheus This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting statistics from programs instrumented as Prometheus endpoints. #end pcp-pmda-prometheus %endif # !%{disable_python2} || !%{disable_python3} %if !%{disable_json} # # pcp-pmda-json # %package pmda-json License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for JSON data URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp Requires: python3-jsonpointer python3-six BuildRequires: python3-jsonpointer python3-six %else Requires: python-pcp Requires: python-jsonpointer python-six BuildRequires: python-jsonpointer python-six %endif %description pmda-json This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics output in JSON. # end pcp-pmda-json %endif # !%{disable_json} # # C pmdas # pcp-pmda-apache # %package pmda-apache License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Apache webserver URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-apache This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Apache webserver. # end pcp-pmda-apache # # pcp-pmda-bash # %package pmda-bash License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Bash shell URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-bash This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Bash shell. # end pcp-pmda-bash # # pcp-pmda-cifs # %package pmda-cifs License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the CIFS protocol URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-cifs This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Common Internet Filesytem. # end pcp-pmda-cifs # # pcp-pmda-cisco # %package pmda-cisco License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Cisco routers URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-cisco This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Cisco routers. # end pcp-pmda-cisco # # pcp-pmda-gfs2 # %package pmda-gfs2 License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the GFS2 filesystem URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-gfs2 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Global Filesystem v2. # end pcp-pmda-gfs2 # # pcp-pmda-lmsensors # %package pmda-lmsensors License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for hardware sensors URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-lmsensors 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-logger # %package pmda-logger License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics from arbitrary log files URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-logger This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from a specified set of log files (or pipes). The PMDA supports both sampled and event-style metrics. # end pcp-pmda-logger # # pcp-pmda-mailq # %package pmda-mailq License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the sendmail queue URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-mailq This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about email queues managed by sendmail. # end pcp-pmda-mailq # # pcp-pmda-mounts # %package pmda-mounts License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for filesystem mounts URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-mounts This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about filesystem mounts. # end pcp-pmda-mounts # # pcp-pmda-nvidia-gpu # %package pmda-nvidia-gpu License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the Nvidia GPU URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-nvidia-gpu This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Nvidia GPUs. # end pcp-pmda-nvidia-gpu # # pcp-pmda-roomtemp # %package pmda-roomtemp License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the room temperature URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-roomtemp This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the room temperature. # end pcp-pmda-roomtemp %if !%{disable_rpm} # # pcp-pmda-rpm # %package pmda-rpm License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for the RPM package manager URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-rpm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the installed RPM packages. %endif # end pcp-pmda-rpm # # pcp-pmda-sendmail # %package pmda-sendmail License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for Sendmail URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-sendmail This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Sendmail traffic. # end pcp-pmda-sendmail # # pcp-pmda-shping # %package pmda-shping License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for shell command responses URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-shping This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about quality of service and response time measurements of arbitrary shell commands. # end pcp-pmda-shping # # pcp-pmda-summary # %package pmda-summary License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) summary metrics from pmie URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-summary This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about other installed pmdas. # end pcp-pmda-summary %if !%{disable_systemd} # # pcp-pmda-systemd # %package pmda-systemd License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics from the Systemd journal URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-systemd This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from the Systemd journal. # end pcp-pmda-systemd %endif # # pcp-pmda-trace # %package pmda-trace License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics for application tracing URL: http://www.pcp.io Requires: pcp-libs = %{version}-%{release} %description pmda-trace This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about trace performance data in applications. # end pcp-pmda-trace # # pcp-pmda-weblog # %package pmda-weblog License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) metrics from web server logs URL: http://www.pcp.io Requires: pcp = %{version}-%{release} Requires: pcp-libs = %{version}-%{release} %description pmda-weblog This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about web server logs. # end pcp-pmda-weblog # end C pmdas # pcp-collector metapackage %package collector License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) Collection meta Package URL: http://www.pcp.io Requires: pcp-pmda-activemq pcp-pmda-bonding pcp-pmda-dbping pcp-pmda-ds389 pcp-pmda-ds389log Requires: pcp-pmda-elasticsearch pcp-pmda-gpfs pcp-pmda-gpsd pcp-pmda-kvm pcp-pmda-lustre Requires: pcp-pmda-memcache pcp-pmda-mysql pcp-pmda-named pcp-pmda-netfilter pcp-pmda-news Requires: pcp-pmda-nginx pcp-pmda-nfsclient pcp-pmda-pdns pcp-pmda-postfix pcp-pmda-postgresql pcp-pmda-oracle Requires: pcp-pmda-samba pcp-pmda-slurm pcp-pmda-vmware pcp-pmda-zimbra Requires: pcp-pmda-dm pcp-pmda-apache Requires: pcp-pmda-bash pcp-pmda-cisco pcp-pmda-gfs2 pcp-pmda-lmsensors pcp-pmda-mailq pcp-pmda-mounts Requires: pcp-pmda-nvidia-gpu pcp-pmda-roomtemp pcp-pmda-sendmail pcp-pmda-shping Requires: pcp-pmda-lustrecomm pcp-pmda-logger pcp-pmda-docker pcp-pmda-bind2 %if !%{disable_nutcracker} Requires: pcp-pmda-nutcracker %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 %endif %if !%{disable_snmp} Requires: pcp-pmda-snmp %endif %if !%{disable_json} Requires: pcp-pmda-json %endif %if !%{disable_rpm} Requires: pcp-pmda-rpm %endif Requires: pcp-pmda-summary pcp-pmda-trace pcp-pmda-weblog %description collector This meta-package installs the PCP metric collection dependencies. This includes the vast majority of packages used to collect PCP metrics. The pcp-collector package also automatically enables and starts the pmcd and pmlogger services. # collector # pcp-monitor metapackage %package monitor License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) Monitoring meta Package URL: http://www.pcp.io %if !%{disable_microhttpd} Requires: pcp-webapi %endif %if !%{disable_python2} || !%{disable_python3} Requires: pcp-system-tools %endif %if !%{disable_qt} Requires: pcp-gui %endif %description monitor This meta-package contains the PCP performance monitoring dependencies. This includes a large number of packages for analysing PCP metrics in various ways. # monitor %package zeroconf License: GPLv2+ Group: Applications/System Summary: Performance Co-Pilot (PCP) Zeroconf Package URL: http://www.pcp.io Requires: pcp Requires: pcp-pmda-dm pcp-pmda-nfsclient %description zeroconf This package contains configuration tweaks and files to increase metrics gathering frequency, several extended pmlogger configurations, as well as automated pmie diagnosis, alerting and self-healing for the localhost. %if !%{disable_python2} # # python-pcp. This is the PCP library bindings for python. # %package -n python-pcp License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Python bindings and documentation URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %if 0%{?rhel} == 5 Requires: python%{default_python} %else Requires: python %endif %description -n python-pcp This python PCP module contains the language bindings for Performance Metric API (PMAPI) monitor tools and Performance Metric Domain Agent (PMDA) collector tools written in Python. %endif %if !%{disable_python3} # # python3-pcp. This is the PCP library bindings for python3. # %package -n python3-pcp License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) Python3 bindings and documentation URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} Requires: python3 %description -n python3-pcp This python PCP module contains the language bindings for Performance Metric API (PMAPI) monitor tools and Performance Metric Domain Agent (PMDA) collector tools written in Python3. %endif %if !%{disable_python2} || !%{disable_python3} # # pcp-system-tools # %package system-tools License: GPLv2+ Group: Development/Libraries Summary: Performance Co-Pilot (PCP) System and Monitoring Tools URL: http://www.pcp.io %if !%{disable_python3} Requires: python3-pcp = %{version}-%{release} %endif %if !%{disable_python2} Requires: python-pcp = %{version}-%{release} %endif Requires: pcp-libs = %{version}-%{release} %description system-tools This PCP module contains additional system monitoring tools written in python. %endif #end pcp-system-tools %if !%{disable_qt} # # pcp-gui package for Qt tools # %package gui License: GPLv2+ and LGPLv2+ and LGPLv2+ with exceptions Group: Applications/System Summary: Visualization tools for the Performance Co-Pilot toolkit URL: http://www.pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} BuildRequires: hicolor-icon-theme %description gui Visualization tools for the Performance Co-Pilot toolkit. The pcp-gui package primarily includes visualization tools for monitoring systems using live and archived Performance Co-Pilot (PCP) sources. %endif # # pcp-doc package # %package doc License: GPLv2+ and CC-BY Group: Documentation %if !%{disable_noarch} BuildArch: noarch %endif Summary: Documentation and tutorial for the Performance Co-Pilot URL: http://www.pcp.io # http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" # (all man pages migrated to pcp-doc during great package split of '15) Conflicts: pcp-pmda-pmda < 3.10.5 Conflicts: pcp-pmda-infiniband < 3.10.5 %description doc Documentation and tutorial for the Performance Co-Pilot Performance Co-Pilot (PCP) provides a framework and services to support system-level performance monitoring and performance management. The pcp-doc package provides useful information on using and configuring the Performance Co-Pilot (PCP) toolkit for system level performance management. It includes tutorials, HOWTOs, and other detailed documentation about the internals of core PCP utilities and daemons, and the PCP graphical tools. # # pcp-selinux package # %if !%{disable_selinux} %package selinux License: GPLv2+ and CC-BY Group: Applications/System Summary: Selinux policy package URL: http://www.pcp.io BuildRequires: selinux-policy-devel BuildRequires: selinux-policy-targeted %if 0%{?rhel} == 5 BuildRequires: setools %else BuildRequires: setools-console %endif Requires: policycoreutils %description selinux This package contains SELinux support for PCP. The package contains interface rules, type enforcement and file context adjustments for an 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 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %clean rm -Rf $RPM_BUILD_ROOT %build %if !%{disable_python2} && 0%{?default_python} != 3 export PYTHON=python%{?default_python} %endif %configure %{?_with_initd} %{?_with_doc} %{?_with_ib} %{?_with_papi} %{?_with_perfevent} %{?_with_json} %{?_with_snmp} %{?_with_nutcracker} make %{?_smp_mflags} default_pcp %install rm -Rf $RPM_BUILD_ROOT export NO_CHOWN=true DIST_ROOT=$RPM_BUILD_ROOT make install_pcp PCP_GUI='pmchart|pmconfirm|pmdumptext|pmmessage|pmquery|pmsnap|pmtime' # Fix stuff we do/don't want to ship rm -f $RPM_BUILD_ROOT/%{_libdir}/*.a # remove sheet2pcp until BZ 830923 and BZ 754678 are resolved. rm -f $RPM_BUILD_ROOT/%{_bindir}/sheet2pcp $RPM_BUILD_ROOT/%{_mandir}/man1/sheet2pcp.1* # remove {config,platform}sz.h as these are not multilib friendly. 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 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 %if %{disable_infiniband} # remove pmdainfiniband on platforms lacking IB devel packages. rm -f $RPM_BUILD_ROOT/%{_pmdasdir}/ib rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/infiniband %endif %if %{disable_selinux} rm -fr $RPM_BUILD_ROOT/%{_selinuxdir} %endif %if %{disable_qt} rm -fr $RPM_BUILD_ROOT/%{_pixmapdir} rm -fr $RPM_BUILD_ROOT/%{_hicolordir} rm -fr $RPM_BUILD_ROOT/%{_confdir}/pmsnap rm -fr $RPM_BUILD_ROOT/%{_localstatedir}/lib/pcp/config/pmsnap rm -fr $RPM_BUILD_ROOT/%{_localstatedir}/lib/pcp/config/pmchart rm -f $RPM_BUILD_ROOT/%{_localstatedir}/lib/pcp/config/pmafm/pcp-gui rm -f $RPM_BUILD_ROOT/%{_datadir}/applications/pmchart.desktop rm -f `find $RPM_BUILD_ROOT/%{_mandir}/man1 | grep -E "$PCP_GUI"` %else rm -rf $RPM_BUILD_ROOT/usr/share/doc/pcp-gui 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 test -f "$f" || continue sed -i -e '/^# chkconfig/s/:.*$/: - 95 05/' -e '/^# Default-Start:/s/:.*$/:/' $f done %if 0%{?fedora} > 26 PCP_SYSCONFIG_DIR=%{_sysconfdir}/sysconfig sed -i 's/^\#\ PMLOGGER_LOCAL.*/PMLOGGER_LOCAL=1/g' "$RPM_BUILD_ROOT/$PCP_SYSCONFIG_DIR/pmlogger" sed -i 's/^\#\ PMCD_LOCAL.*/PMCD_LOCAL=1/g' "$RPM_BUILD_ROOT/$PCP_SYSCONFIG_DIR/pmcd" %endif # list of PMDAs in the base pkg ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\ grep -E -v '^simple|sample|trivial|txmon' |\ grep -E -v '^perfevent|perfalloc.1' |\ grep -E -v '^ib$|^infiniband' |\ grep -E -v '^activemq' |\ grep -E -v '^bonding' |\ grep -E -v '^bind2' |\ grep -E -v '^dbping' |\ grep -E -v '^docker' |\ grep -E -v '^ds389log'|\ grep -E -v '^ds389' |\ grep -E -v '^elasticsearch' |\ grep -E -v '^gpfs' |\ grep -E -v '^gpsd' |\ grep -E -v '^kvm' |\ grep -E -v '^lio' |\ grep -E -v '^lustre' |\ grep -E -v '^lustrecomm' |\ grep -E -v '^memcache' |\ grep -E -v '^mysql' |\ grep -E -v '^named' |\ grep -E -v '^netfilter' |\ grep -E -v '^news' |\ grep -E -v '^nfsclient' |\ grep -E -v '^nginx' |\ grep -E -v '^nutcracker' |\ grep -E -v '^oracle' |\ grep -E -v '^papi' |\ grep -E -v '^pdns' |\ grep -E -v '^postfix' |\ grep -E -v '^postgresql' |\ grep -E -v '^redis' |\ grep -E -v '^rsyslog' |\ grep -E -v '^samba' |\ grep -E -v '^slurm' |\ grep -E -v '^snmp' |\ grep -E -v '^vmware' |\ grep -E -v '^zimbra' |\ grep -E -v '^dm' |\ grep -E -v '^apache' |\ grep -E -v '^bash' |\ grep -E -v '^cifs' |\ grep -E -v '^cisco' |\ grep -E -v '^gfs2' |\ grep -E -v '^libvirt' |\ grep -E -v '^lmsensors' |\ grep -E -v '^logger' |\ grep -E -v '^mailq' |\ grep -E -v '^mounts' |\ grep -E -v '^nvidia' |\ grep -E -v '^roomtemp' |\ grep -E -v '^sendmail' |\ grep -E -v '^shping' |\ grep -E -v '^summary' |\ grep -E -v '^trace' |\ grep -E -v '^weblog' |\ grep -E -v '^rpm' |\ grep -E -v '^json' |\ grep -E -v '^mic' |\ grep -E -v '^gluster' |\ grep -E -v '^zswap' |\ grep -E -v '^unbound' |\ grep -E -v '^haproxy' |\ sed -e 's#^#'%{_pmdasdir}'\/#' >base_pmdas.list # all base pcp package files except those split out into sub packages ls -1 $RPM_BUILD_ROOT/%{_bindir} |\ grep -E -v 'pmiostat|pmcollectl|pmatop|zabbix|zbxpcp' |\ grep -E -v 'pmrep|pcp2graphite|pcp2influxdb|pcp2zabbix' |\ grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\ grep -E -v 'pmdbg|pmclient|pmerr|genpmda' |\ sed -e 's#^#'%{_bindir}'\/#' >base_bin.list # # Separate the pcp-system-tools package files. # # pmatop, pmcollectl and pmiostat are back-compat symlinks to their # pcp(1) sub-command variants so must also be in pcp-system-tools. %if !%{disable_python2} || !%{disable_python3} ls -1 $RPM_BUILD_ROOT/%{_bindir} |\ grep -E 'pmiostat|pmcollectl|pmatop|pmrep' |\ sed -e 's#^#'%{_bindir}'\/#' >pcp_system_tools.list ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\ grep -E 'atop|collectl|dmcache|free|iostat|mpstat|numastat|pidstat|tapestat|verify|uptime|shping' |\ sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >>pcp_system_tools.list %endif ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\ %if !%{disable_python2} || !%{disable_python3} grep -E -v 'atop|collectl|dmcache|free|iostat|mpstat|numastat|pidstat|tapestat|verify|uptime|shping' |\ %endif sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >base_exec.list ls -1 $RPM_BUILD_ROOT/%{_booksdir} |\ sed -e 's#^#'%{_booksdir}'\/#' > pcp-doc.list ls -1 $RPM_BUILD_ROOT/%{_mandir}/man1 |\ sed -e 's#^#'%{_mandir}'\/man1\/#' >>pcp-doc.list ls -1 $RPM_BUILD_ROOT/%{_mandir}/man5 |\ sed -e 's#^#'%{_mandir}'\/man5\/#' >>pcp-doc.list ls -1 $RPM_BUILD_ROOT/%{_datadir}/pcp/demos/tutorials |\ sed -e 's#^#'%{_datadir}/pcp/demos/tutorials'\/#' >>pcp-doc.list %if !%{disable_selinux} ls -1 $RPM_BUILD_ROOT/%{_selinuxdir} |\ sed -e 's#^#'%{_selinuxdir}'\/#' > pcp-selinux.list %endif %if !%{disable_qt} ls -1 $RPM_BUILD_ROOT/%{_pixmapdir} |\ sed -e 's#^#'%{_pixmapdir}'\/#' > pcp-gui.list ls -1 $RPM_BUILD_ROOT/%{_hicolordir} |\ sed -e 's#^#'%{_hicolordir}'\/#' >> pcp-gui.list cat base_bin.list base_exec.list |\ grep -E "$PCP_GUI" >> pcp-gui.list %endif 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 "$PCP_GUI|pixmaps|hicolor|pcp-doc|tutorials|selinux" |\ grep -E -v %{_confdir} | grep -E -v %{_logsdir} > base.list # all devel pcp package files except those split out into sub packages ls -1 $RPM_BUILD_ROOT/%{_mandir}/man3 |\ sed -e 's#^#'%{_mandir}'\/man3\/#' | grep -v '3pm' >>pcp-doc.list ls -1 $RPM_BUILD_ROOT/%{_datadir}/pcp/demos |\ sed -e 's#^#'%{_datadir}'\/pcp\/demos\/#' | grep -E -v tutorials >> devel.list ls -1 $RPM_BUILD_ROOT/%{_bindir} |\ grep -E 'pmdbg|pmclient|pmerr|genpmda' |\ sed -e 's#^#'%{_bindir}'\/#' >>devel.list %pre testsuite test -d %{_testsdir} || mkdir -p -m 755 %{_testsdir} getent group pcpqa >/dev/null || groupadd -r pcpqa getent passwd pcpqa >/dev/null || \ useradd -c "PCP Quality Assurance" -g pcpqa -d %{_testsdir} -M -r -s /bin/bash pcpqa 2>/dev/null chown -R pcpqa:pcpqa %{_testsdir} 2>/dev/null exit 0 %post testsuite chown -R pcpqa:pcpqa %{_testsdir} 2>/dev/null exit 0 %pre 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 %if !%{disable_systemd} systemctl --no-reload disable pmmgr.service >/dev/null 2>&1 systemctl stop pmmgr.service >/dev/null 2>&1 %else /sbin/service pmmgr stop >/dev/null 2>&1 /sbin/chkconfig --del pmmgr >/dev/null 2>&1 %endif fi %if !%{disable_rpm} %preun pmda-rpm %{pmda_remove "$1" "rpm"} %endif #preun pmda-rpm %if !%{disable_papi} %preun pmda-papi %{pmda_remove "$1" "papi"} %endif #preun pmda-papi %if !%{disable_systemd} %preun pmda-systemd %{pmda_remove "$1" "systemd"} %endif #preun pmda-systemd %if !%{disable_infiniband} %preun pmda-infiniband %{pmda_remove "$1" "infiniband"} %endif #preun pmda-infiniband %if !%{disable_perfevent} %preun pmda-perfevent %{pmda_remove "$1" "perfevent"} %endif #preun pmda-perfevent %if !%{disable_json} %preun pmda-json %{pmda_remove "$1" "json"} %endif #preun pmda-json %preun pmda-nginx %{pmda_remove "$1" "nginx"} %preun pmda-oracle %{pmda_remove "$1" "oracle"} %preun pmda-postgresql %{pmda_remove "$1" "postgresql"} %preun pmda-postfix %{pmda_remove "$1" "postfix"} %preun pmda-elasticsearch %{pmda_remove "$1" "elasticsearch"} %if !%{disable_snmp} %preun pmda-snmp %{pmda_remove "$1" "snmp"} %endif %preun pmda-mysql %{pmda_remove "$1" "mysql"} %preun pmda-activemq %{pmda_remove "$1" "activemq"} %preun pmda-bind2 %{pmda_remove "$1" "bind2"} %preun pmda-bonding %{pmda_remove "$1" "bonding"} %preun pmda-dbping %{pmda_remove "$1" "dbping"} %preun pmda-docker %{pmda_remove "$1" "docker"} %preun pmda-ds389 %{pmda_remove "$1" "ds389"} %preun pmda-ds389log %{pmda_remove "$1" "ds389log"} %preun pmda-gpfs %{pmda_remove "$1" "gpfs"} %preun pmda-gpsd %{pmda_remove "$1" "gpsd"} %preun pmda-kvm %{pmda_remove "$1" "kvm"} %preun pmda-lio %{pmda_remove "$1" "lio"} %preun pmda-prometheus %{pmda_remove "$1" "prometheus"} %preun pmda-lustre %{pmda_remove "$1" "lustre"} %preun pmda-lustrecomm %{pmda_remove "$1" "lustrecomm"} %preun pmda-memcache %{pmda_remove "$1" "memcache"} %preun pmda-named %{pmda_remove "$1" "named"} %preun pmda-netfilter %{pmda_remove "$1" "netfilter"} %preun pmda-news %{pmda_remove "$1" "news"} %preun pmda-nfsclient %{pmda_remove "$1" "nfsclient"} %if !%{disable_nutcracker} %preun pmda-nutcracker %{pmda_remove "$1" "nutcracker"} %endif %preun pmda-pdns %{pmda_remove "$1" "pdns"} %preun pmda-rsyslog %{pmda_remove "$1" "rsyslog"} %preun pmda-redis %{pmda_remove "$1" "redis"} %preun pmda-samba %{pmda_remove "$1" "samba"} %preun pmda-vmware %{pmda_remove "$1" "vmware"} %preun pmda-zimbra %{pmda_remove "$1" "zimbra"} %preun pmda-dm %{pmda_remove "$1" "dm"} %if !%{disable_python2} || !%{disable_python3} %preun pmda-gluster %{pmda_remove "$1" "gluster"} %preun pmda-zswap %{pmda_remove "$1" "zswap"} %preun pmda-unbound %{pmda_remove "$1" "unbound"} %preun pmda-mic %{pmda_remove "$1" "mic"} %preun pmda-haproxy %{pmda_remove "$1" "haproxy"} %preun pmda-libvirt %{pmda_remove "$1" "libvirt"} %endif # !%{disable_python[2,3]} %preun pmda-apache %{pmda_remove "$1" "apache"} %preun pmda-bash %{pmda_remove "$1" "bash"} %preun pmda-cifs %{pmda_remove "$1" "cifs"} %preun pmda-cisco %{pmda_remove "$1" "cisco"} %preun pmda-gfs2 %{pmda_remove "$1" "gfs2"} %preun pmda-lmsensors %{pmda_remove "$1" "lmsensors"} %preun pmda-logger %{pmda_remove "$1" "logger"} %preun pmda-mailq %{pmda_remove "$1" "mailq"} %preun pmda-mounts %{pmda_remove "$1" "mounts"} %preun pmda-nvidia-gpu %{pmda_remove "$1" "nvidia"} %preun pmda-roomtemp %{pmda_remove "$1" "roomtemp"} %preun pmda-sendmail %{pmda_remove "$1" "sendmail"} %preun pmda-shping %{pmda_remove "$1" "shping"} %preun pmda-summary %{pmda_remove "$1" "summary"} %preun pmda-trace %{pmda_remove "$1" "trace"} %preun pmda-weblog %{pmda_remove "$1" "weblog"} %preun if [ "$1" -eq 0 ] then # stop daemons before erasing the package %if !%{disable_systemd} %systemd_preun pmlogger.service %systemd_preun pmie.service %systemd_preun pmproxy.service %systemd_preun pmcd.service systemctl stop pmlogger.service >/dev/null 2>&1 systemctl stop pmie.service >/dev/null 2>&1 systemctl stop pmproxy.service >/dev/null 2>&1 systemctl stop pmcd.service >/dev/null 2>&1 %else /sbin/service pmlogger stop >/dev/null 2>&1 /sbin/service pmie stop >/dev/null 2>&1 /sbin/service pmproxy stop >/dev/null 2>&1 /sbin/service pmcd stop >/dev/null 2>&1 /sbin/chkconfig --del pcp >/dev/null 2>&1 /sbin/chkconfig --del pmcd >/dev/null 2>&1 /sbin/chkconfig --del pmlogger >/dev/null 2>&1 /sbin/chkconfig --del pmie >/dev/null 2>&1 /sbin/chkconfig --del pmproxy >/dev/null 2>&1 %endif # cleanup namespace state/flag, may still exist PCP_PMNS_DIR=%{_pmnsdir} 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} systemctl condrestart pmmgr.service >/dev/null 2>&1 %else /sbin/chkconfig --add pmmgr >/dev/null 2>&1 /sbin/service pmmgr condrestart %endif %post collector %if 0%{?rhel} %if !%{disable_systemd} systemctl restart pmcd >/dev/null 2>&1 systemctl restart pmlogger >/dev/null 2>&1 systemctl enable pmcd >/dev/null 2>&1 systemctl enable pmlogger >/dev/null 2>&1 %else /sbin/chkconfig --add pmcd >/dev/null 2>&1 /sbin/chkconfig --add pmlogger >/dev/null 2>&1 /sbin/service pmcd condrestart /sbin/service pmlogger condrestart %endif %endif %post zeroconf PCP_PMDAS_DIR=%{_pmdasdir} PCP_SYSCONFIG_DIR=%{_sysconfdir}/sysconfig # auto-install important PMDAs for RH Support for PMDA in dm nfsclient ; do touch "$PCP_PMDAS_DIR/$PMDA/.NeedInstall" done # increase default pmlogger recording frequency sed -i 's/^\#\ PMLOGGER_INTERVAL.*/PMLOGGER_INTERVAL=10/g' "$PCP_SYSCONFIG_DIR/pmlogger" # auto-enable these usually optional pmie rules pmieconf -c enable dmthin %if 0%{?rhel} %if !%{disable_systemd} systemctl restart pmcd >/dev/null 2>&1 systemctl restart pmlogger >/dev/null 2>&1 systemctl restart pmie >/dev/null 2>&1 systemctl enable pmcd >/dev/null 2>&1 systemctl enable pmlogger >/dev/null 2>&1 systemctl enable pmie >/dev/null 2>&1 %else /sbin/chkconfig --add pmcd >/dev/null 2>&1 /sbin/chkconfig --add pmlogger >/dev/null 2>&1 /sbin/chkconfig --add pmie >/dev/null 2>&1 /sbin/service pmcd condrestart /sbin/service pmlogger condrestart /sbin/service pmie condrestart %endif %endif #zeroconf %if !%{disable_selinux} %post selinux %{selinux_handle_policy "$1" "pcpupstream.pp"} %triggerin selinux -- docker-selinux %{selinux_handle_policy "$1" "pcpupstream-docker.pp"} %triggerin selinux -- container-selinux %{selinux_handle_policy "$1" "pcpupstream-container.pp"} %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}/pmie 2>/dev/null chown -R pcp:pcp %{_logsdir}/pmproxy 2>/dev/null touch "$PCP_PMNS_DIR/.NeedRebuild" chmod 644 "$PCP_PMNS_DIR/.NeedRebuild" %if !%{disable_systemd} %systemd_postun_with_restart pmcd.service %systemd_post pmcd.service %systemd_postun_with_restart pmlogger.service %systemd_post pmlogger.service %systemd_postun_with_restart pmie.service %systemd_post pmie.service systemctl condrestart pmproxy.service >/dev/null 2>&1 %else /sbin/chkconfig --add pmcd >/dev/null 2>&1 /sbin/service pmcd condrestart /sbin/chkconfig --add pmlogger >/dev/null 2>&1 /sbin/service pmlogger condrestart /sbin/chkconfig --add pmie >/dev/null 2>&1 /sbin/service pmie condrestart /sbin/chkconfig --add pmproxy >/dev/null 2>&1 /sbin/service pmproxy condrestart %endif cd $PCP_PMNS_DIR && ./Rebuild -s && rm -f .NeedRebuild cd %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %if !%{disable_selinux} %preun selinux %{selinux_handle_policy "$1" "pcpupstream"} %triggerun selinux -- docker-selinux %{selinux_handle_policy "$1" "pcpupstream-docker"} %triggerun selinux -- container-selinux %{selinux_handle_policy "$1" "pcpupstream-container"} %endif %files -f base.list # # Note: there are some headers (e.g. domain.h) and in a few cases some # C source files that rpmlint complains about. These are not devel files, # but rather they are (slightly obscure) PMDA config files. # %doc CHANGELOG COPYING INSTALL.md README.md VERSION.pcp pcp.lsm %dir %{_confdir} %dir %{_pmdasdir} %dir %{_datadir}/pcp %dir %{_localstatedir}/lib/pcp %dir %{_localstatedir}/lib/pcp/config %dir %attr(0775,pcp,pcp) %{_tempsdir} %dir %attr(0775,pcp,pcp) %{_tempsdir}/pmie %dir %attr(0775,pcp,pcp) %{_tempsdir}/pmlogger %dir %attr(0700,root,root) %{_tempsdir}/pmcd %dir %{_datadir}/pcp/lib %{_datadir}/pcp/lib/ReplacePmnsSubtree %{_datadir}/pcp/lib/bashproc.sh %{_datadir}/pcp/lib/lockpmns %{_datadir}/pcp/lib/pmdaproc.sh %{_datadir}/pcp/lib/utilproc.sh %{_datadir}/pcp/lib/rc-proc.sh %{_datadir}/pcp/lib/rc-proc.sh.minimal %{_datadir}/pcp/lib/unlockpmns %dir %attr(0775,pcp,pcp) %{_logsdir} %attr(0775,pcp,pcp) %{_logsdir}/pmcd %attr(0775,pcp,pcp) %{_logsdir}/pmlogger %attr(0775,pcp,pcp) %{_logsdir}/pmie %attr(0775,pcp,pcp) %{_logsdir}/pmproxy %{_localstatedir}/lib/pcp/pmns %{_initddir}/pcp %{_initddir}/pmcd %{_initddir}/pmlogger %{_initddir}/pmie %{_initddir}/pmproxy %if !%{disable_systemd} %{_unitdir}/pmcd.service %{_unitdir}/pmlogger.service %{_unitdir}/pmie.service %{_unitdir}/pmproxy.service %endif %config(noreplace) %{_sysconfdir}/sasl2/pmcd.conf %config(noreplace) %{_sysconfdir}/cron.d/pcp-pmlogger %config(noreplace) %{_sysconfdir}/cron.d/pcp-pmie %config(noreplace) %{_sysconfdir}/sysconfig/pmlogger %config(noreplace) %{_sysconfdir}/sysconfig/pmproxy %config(noreplace) %{_sysconfdir}/sysconfig/pmcd %config %{_sysconfdir}/pcp.env %dir %{_confdir}/pmcd %config(noreplace) %{_confdir}/pmcd/pmcd.conf %config(noreplace) %{_confdir}/pmcd/pmcd.options %config(noreplace) %{_confdir}/pmcd/rc.local %dir %{_confdir}/pmproxy %config(noreplace) %{_confdir}/pmproxy/pmproxy.options %dir %{_confdir}/pmie %dir %{_confdir}/pmie/control.d %config(noreplace) %{_confdir}/pmie/control %config(noreplace) %{_confdir}/pmie/control.d/local %dir %{_confdir}/pmlogger %dir %{_confdir}/pmlogger/control.d %config(noreplace) %{_confdir}/pmlogger/control %config(noreplace) %{_confdir}/pmlogger/control.d/local %dir %attr(0775,pcp,pcp) %{_confdir}/nssdb %ghost %{_localstatedir}/run/pcp %{_localstatedir}/lib/pcp/config/pmafm %dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmie %{_localstatedir}/lib/pcp/config/pmie %{_localstatedir}/lib/pcp/config/pmieconf %dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmlogger %{_localstatedir}/lib/pcp/config/pmlogger/* %{_localstatedir}/lib/pcp/config/pmlogrewrite %dir %attr(0775,pcp,pcp) %{_localstatedir}/lib/pcp/config/pmda %{_datadir}/bash-completion/completions/* %{_datadir}/zsh/site-functions/_pcp %if !%{disable_sdt} %{tapsetdir}/pmcd.stp %endif %files monitor #empty %files collector #empty %files zeroconf %{_localstatedir}/lib/pcp/config/pmlogconf/zeroconf #additional pmlogger config files %files conf %dir %{_includedir}/pcp %{_includedir}/pcp/builddefs %{_includedir}/pcp/buildrules %config %{_sysconfdir}/pcp.conf %dir %{_localstatedir}/lib/pcp/config/derived %config %{_localstatedir}/lib/pcp/config/derived/* %files libs %{_libdir}/libpcp.so.3 %{_libdir}/libpcp_gui.so.2 %{_libdir}/libpcp_mmv.so.1 %{_libdir}/libpcp_pmda.so.3 %{_libdir}/libpcp_trace.so.2 %{_libdir}/libpcp_import.so.1 %{_libdir}/libpcp_web.so.1 %files libs-devel %{_libdir}/libpcp.so %{_libdir}/libpcp_gui.so %{_libdir}/libpcp_mmv.so %{_libdir}/libpcp_pmda.so %{_libdir}/libpcp_trace.so %{_libdir}/libpcp_import.so %{_libdir}/libpcp_web.so %{_libdir}/pkgconfig/libpcp.pc %{_libdir}/pkgconfig/libpcp_pmda.pc %{_libdir}/pkgconfig/libpcp_import.pc %{_includedir}/pcp/*.h %files devel -f devel.list %{_datadir}/pcp/examples # PMDAs that ship src and are not for production use # straight out-of-the-box, for devel or QA use only. %{_pmdasdir}/simple %{_pmdasdir}/sample %{_pmdasdir}/trivial %{_pmdasdir}/txmon %files testsuite %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 directories from pcp and pcp-webjs, but rpm copes with that. %dir %{_datadir}/pcp %dir %{_datadir}/pcp/webapps %endif %files webjs # duplicate directories from pcp and pcp-webapi, 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 %files manager %{_initddir}/pmmgr %if !%{disable_systemd} %{_unitdir}/pmmgr.service %endif %{_libexecdir}/pcp/bin/pmmgr %attr(0775,pcp,pcp) %{_logsdir}/pmmgr %config(missingok,noreplace) %{_confdir}/pmmgr %config(noreplace) %{_confdir}/pmmgr/pmmgr.options %files import-sar2pcp %{_bindir}/sar2pcp %files import-iostat2pcp %{_bindir}/iostat2pcp %files import-mrtg2pcp %{_bindir}/mrtg2pcp %files import-ganglia2pcp %{_bindir}/ganglia2pcp %files import-collectl2pcp %{_bindir}/collectl2pcp %if !%{disable_papi} %files pmda-papi %{_pmdasdir}/papi %endif %if !%{disable_perfevent} %files pmda-perfevent %{_pmdasdir}/perfevent %config(noreplace) %{_pmdasdir}/perfevent/perfevent.conf %endif %if !%{disable_infiniband} %files pmda-infiniband %{_pmdasdir}/ib %{_pmdasdir}/infiniband %endif %files pmda-activemq %{_pmdasdir}/activemq %files pmda-bonding %{_pmdasdir}/bonding %files pmda-bind2 %{_pmdasdir}/bind2 %files pmda-dbping %{_pmdasdir}/dbping %files pmda-ds389log %{_pmdasdir}/ds389log %files pmda-ds389 %{_pmdasdir}/ds389 %files pmda-elasticsearch %{_pmdasdir}/elasticsearch %files pmda-gpfs %{_pmdasdir}/gpfs %files pmda-gpsd %{_pmdasdir}/gpsd %files pmda-kvm %{_pmdasdir}/kvm %files pmda-docker %{_pmdasdir}/docker %files pmda-lio %{_pmdasdir}/lio %files pmda-prometheus %{_pmdasdir}/prometheus %files pmda-lustre %{_pmdasdir}/lustre %files pmda-lustrecomm %{_pmdasdir}/lustrecomm %files pmda-memcache %{_pmdasdir}/memcache %files pmda-mysql %{_pmdasdir}/mysql %files pmda-named %{_pmdasdir}/named %files pmda-netfilter %{_pmdasdir}/netfilter %files pmda-news %{_pmdasdir}/news %files pmda-nginx %{_pmdasdir}/nginx %files pmda-nfsclient %{_pmdasdir}/nfsclient %if !%{disable_nutcracker} %files pmda-nutcracker %{_pmdasdir}/nutcracker %endif %files pmda-oracle %{_pmdasdir}/oracle %files pmda-pdns %{_pmdasdir}/pdns %files pmda-postfix %{_pmdasdir}/postfix %files pmda-postgresql %{_pmdasdir}/postgresql %files pmda-redis %{_pmdasdir}/redis %files pmda-rsyslog %{_pmdasdir}/rsyslog %files pmda-samba %{_pmdasdir}/samba %if !%{disable_snmp} %files pmda-snmp %{_pmdasdir}/snmp %endif %files pmda-slurm %{_pmdasdir}/slurm %files pmda-vmware %{_pmdasdir}/vmware %files pmda-zimbra %{_pmdasdir}/zimbra %files pmda-dm %{_pmdasdir}/dm %if !%{disable_python2} || !%{disable_python3} %files pmda-gluster %{_pmdasdir}/gluster %files pmda-zswap %{_pmdasdir}/zswap %files pmda-unbound %{_pmdasdir}/unbound %files pmda-mic %{_pmdasdir}/mic %files pmda-haproxy %{_pmdasdir}/haproxy %files pmda-libvirt %{_pmdasdir}/libvirt %if !%{disable_elasticsearch} %files export-pcp2elasticsearch %{_bindir}/pcp2elasticsearch %endif %files export-pcp2graphite %{_bindir}/pcp2graphite %files export-pcp2influxdb %{_bindir}/pcp2influxdb %files export-pcp2json %{_bindir}/pcp2json %if !%{disable_xlsx} %files export-pcp2xlsx %{_bindir}/pcp2xlsx %endif %files export-pcp2xml %{_bindir}/pcp2xml %files export-pcp2zabbix %{_bindir}/pcp2zabbix %endif # !%{disable_python2} || !%{disable_python3} %files export-zabbix-agent %{_libdir}/zabbix %if !%{disable_json} %files pmda-json %{_pmdasdir}/json %endif %files pmda-apache %{_pmdasdir}/apache %files pmda-bash %{_pmdasdir}/bash %files pmda-cifs %{_pmdasdir}/cifs %files pmda-cisco %{_pmdasdir}/cisco %files pmda-gfs2 %{_pmdasdir}/gfs2 %files pmda-lmsensors %{_pmdasdir}/lmsensors %files pmda-logger %{_pmdasdir}/logger %files pmda-mailq %{_pmdasdir}/mailq %files pmda-mounts %{_pmdasdir}/mounts %files pmda-nvidia-gpu %{_pmdasdir}/nvidia %files pmda-roomtemp %{_pmdasdir}/roomtemp %if !%{disable_rpm} %files pmda-rpm %{_pmdasdir}/rpm %endif %files pmda-sendmail %{_pmdasdir}/sendmail %files pmda-shping %{_pmdasdir}/shping %files pmda-summary %{_pmdasdir}/summary %if !%{disable_systemd} %files pmda-systemd %{_pmdasdir}/systemd %endif %files pmda-trace %{_pmdasdir}/trace %files pmda-weblog %{_pmdasdir}/weblog %files -n perl-PCP-PMDA -f perl-pcp-pmda.list %files -n perl-PCP-MMV -f perl-pcp-mmv.list %files -n perl-PCP-LogImport -f perl-pcp-logimport.list %files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list %if !%{disable_python2} %files -n python-pcp -f python-pcp.list.rpm %endif %if !%{disable_python3} %files -n python3-pcp -f python3-pcp.list.rpm %endif %if !%{disable_qt} %files gui -f pcp-gui.list %{_confdir}/pmsnap %config(noreplace) %{_confdir}/pmsnap/control %{_localstatedir}/lib/pcp/config/pmsnap %{_localstatedir}/lib/pcp/config/pmchart %{_localstatedir}/lib/pcp/config/pmafm/pcp-gui %{_datadir}/applications/pmchart.desktop %endif %files doc -f pcp-doc.list %if !%{disable_selinux} %files selinux -f pcp-selinux.list %endif %if !%{disable_python2} || !%{disable_python3} %files system-tools -f pcp_system_tools.list %dir %{_confdir}/pmrep %config(noreplace) %{_confdir}/pmrep/pmrep.conf %endif %changelog * Tue Jun 05 2018 Lukas Zapletal 3.12.2-6 - Backporting test * Mon Jan 29 2018 Lukas Berk - 3.12.2-5 - Correction to spec file and selinux policy (BZ 1488116) - Show all perfevent metrics in pcpatop (BZ 1525864) - Multilib corrections (BZ 1537623) * Wed Nov 29 2017 Nathan Scott - 3.12.2-4 - Correction to selinux.patch embedded spec file change * Wed Nov 29 2017 Nathan Scott - 3.12.2-3 - Update Source2 for external grafana webapp (BZ 1516933) - Remove an unhelpful log metadata diagnostic (BZ 1472153) * Tue Nov 28 2017 Lukas Berk - 3.12.2-2 - Selinux policy updates (BZs 1517655,1517656,1480447,1505888,1515928,1517281,1517862) - Multilib corrections (BZ 1513503) * Fri Oct 20 2017 Lukas Berk - 3.12.2-1 - Selinux policy updates (BZs 1459165,1460131,1488116,1447585,1449671) - PCP bash completions not working (BZ 1482605) - pmdabash man page fix (BZ 1459907) * Wed Jun 14 2017 Nathan Scott - 3.11.8-7 - Fix problems in the new pcp-zeroconf sub-package (BZ 1456609) * Mon May 8 2017 Lukas Berk - 3.11.8-5 - Removed pmdalibvirt dep for collector on aarch64 (BZ 1432007) * Fri Apr 21 2017 Nathan Scott - 3.11.8-4 - Enable collecting POWER9 NEST PMU perf metrics (BZ 1419490) - SELinux policy updates (BZs 1381301,1432086,1433271,1443632) - zeroconf package added (BZs 1211432, 1371950) * Thu Mar 02 2017 Nathan Scott - 3.11.8-3 - Rebuild with the correct (previous) version of Vector. * Wed Mar 01 2017 Nathan Scott - 3.11.8-2 - Drop pcp-pmda-nutcracker package, missing deps (BZ 1425880) - Incorporate several fixes from Coverity scan review. * Mon Feb 20 2017 Dave Brolley - 3.11.8-1 - Latest upstream PCP, dropping all earlier patches (BZ 1423020) * Fri Aug 26 2016 Lukas Berk - 3.11.3-4 - pcp-pmda-ds389log uses dirsrv user instead of nobody * Fri Aug 05 2016 Nathan Scott - 3.11.3-3 - Install the missing /etc/pcp/nssdb directory (BZ 1360206) - pcp-pmda-ds389 requires perl-LDAP dependency (BZ 1357605) - Switch pcp-pmda-ds389log to the dirsrv user (BZ 1357607) - pcp-pmda-ds389log requires perl-Date-Manip (BZ 1354055) - Remove multi-archive loglabel timezone check (BZ 1351223) * Thu Jul 07 2016 Nathan Scott - 3.11.3-2 - Export filesys metrics with persistent DM naming (BZ 1349932) * Fri Jun 17 2016 Nathan Scott - 3.11.3-1 - Latest upstream PCP, dropping all earlier patches (BZ 1284307) - Minimal package dependencies for PMAPI applications (BZ 1298993) - Resolve perl Net:SNMP pmdasnmp dependency problem (BZ 1332624) - Improve time taken to detect pmcd startup failure (BZ 1336210) - Fix cron service stopping disabled pmie/pmlogger (BZ 1336792) - Fix instance domain handling in derived metrics (BZ 1337212) - Include latest Oracle database PMDA enhancements (BZ 1340430) - Workaround valgrind failure for pmmgr test case (BZ 1343319) * Mon May 02 2016 Nathan Scott - 3.11.2-1 - Improve PMAPI python clients signal handling (BZ 1238550) - Fix issues in postfix PMDA search for mail log (BZ 1252308) - Fix local_sock() souble free error in perl API (BZ 1258860) - Fix sigsegv in pcp-uptime(1) --archive option (BZ 1262721) - Update to current stable PCP version (BZ 1284307) - Fix pcp-compat dependency drawing in many packages (BZ 1293466) - Support for per-processor softnet kernel metrics (BZ 1316085) - Fix GFS2 PMDA Install script PMNS parsing error (BZ 1320591) - Report Docker version 1.10+ container information (BZ 1327737) * Mon Aug 24 2015 Nathan Scott - 3.10.6-2 - Fixes targetting several QE reported test failures (BZ 1241591) - Remove tool-specific interval settings for pmlogconf (BZ 1243809) * Wed Aug 05 2015 Nathan Scott - 3.10.6-1 - Export the softnet_stat kernel networking metrics (BZ 1190912) - Latest upstream PCP, dropping all earlier patches (BZ 1200584) - Re-enable the pcp-pmda-jsonpointer package build (BZ 1238134) - Fix failing test cases and bugs from Red Hat QE (BZ 1241591) - pcp2graphite support for exporting from archives (BZ 1242622) - Remove percpu interrupt metrics from default set (BZ 1243809) - pcp-collector meta-package enables pmcd+pmlogger (BZ 1249090) * Thu Jul 16 2015 Nathan Scott - 3.10.5-5 - Disable pcp-pmda-json, waiting on missing dependency (BZ 1238134) * Wed Jul 08 2015 Dave Brolley - 3.10.5-4 - Fix concurrency (locking) problem discovered by coverity (BZ 1237412) * Mon Jul 06 2015 Dave Brolley - 3.10.5-3 - Update with missing package dependency for pmda-lustrecomm. - Rebuild to pickup bintils fix (BZ 1238469) * Thu Jun 18 2015 Dave Brolley - 3.10.5-2 - Update to latest PCP sources (BZ 1200584) - Support for per-containtainer cgroup metrics (BZ 1121218) - Allow pmlogger/pmie start when not chkconfig on (BZ 1186012) - No pmlogger_daily messages when not chkconfig on (BZ 1208699) - Fix pmdamounts potential stack corruption (BZ 1213833) - Tackle numerous testsuite issues on aarch64 (BZ 1190680) - Tackle numerous testsuite issues on ppc64le (BZ 1194244) - Allow pmlogger to run in local context mode (BZ 1129539) - Deprecate hinv.map.lvname for hinv.map.dmname (BZ 1109539) * Mon Nov 24 2014 Nathan Scott - 3.9.10-8 - Respin with QA archive missing from last patch (BZ 1161515) * Mon Nov 24 2014 Nathan Scott - 3.9.10-7 - Tackle bugs and test failures found by QE (BZ 1161515) - Resolve pcp web packaging issues, regression (BZ 1163560) * Fri Oct 17 2014 Frank Ch. Eigler - 3.9.10-6 - Fix BZ1152503 (pcp rebuild - qmake workaround) - Fix BZ1152535 (systemd daemon-reload) * Thu Oct 16 2014 Nathan Scott - 3.9.10-5 - Fix script locations for systemd services (BZ 1147400) * Fri Sep 05 2014 Frank Ch. Eigler - 3.9.10-4 - Add pcpfans add-ons. - Correct webapi subrpm license tag * Fri Sep 05 2014 Lukas Berk - 3.9.10-2 - Add condition for disable_papi on arch and rhel version * Fri Sep 05 2014 Nathan Scott - 3.9.10-1 - Convert PCP init scripts to systemd services (BZ 1044682) - Improve hinv device mapper metric instances (BZ 1109539) - Fix pmcollect dev instance domain handling (BZ 1097095) - Remove bogus pmlogger_daily cron messages (BZ 1125700) - Update to latest PCP sources (BZ 1107734). * Wed Feb 26 2014 Nathan Scott - 3.8.10-8 - Update pmmgr to pcp 3.9.0+ level (BZ 1067547) * Tue Feb 25 2014 Nathan Scott - 3.8.10-7 - Fix a handful of QE-found test-induced failures (BZ 987086) - Multilib packaging support for libs and devel (BZ 1059642) * Tue Feb 18 2014 Nathan Scott - 3.8.10-6 - Added missing qualified output for test qa/844 (BZ 1064311) - Fix pmdalinux memory corruption issue on s390x (BZ 1064254) - PMDA installation works without a running pmcd (BZ 1062443) - Fix some more issues in pcpqa account creation (BZ 1025688) * Mon Feb 10 2014 Nathan Scott - 3.8.10-5 - Resolve pmdammv induced pmcd segv during tests (BZ 1061330) - Fix python-pcp time API wrapper implementation (BZ 1062467) * Wed Jan 29 2014 Nathan Scott - 3.8.10-4 - Ensure the PMNS stdpmid files are installed (BZ 1059004) * Fri Jan 24 2014 Daniel Mach - 3.8.10-3 - Mass rebuild 2014-01-24 * Wed Jan 22 2014 Nathan Scott - 3.8.10-2 - Fix pmdalinux failure on unexpected ICMP types (BZ 1055826) - Add man pages for all of the PMDAs missing out (BZ 1053094) * Wed Jan 15 2014 Nathan Scott - 3.8.10-1 - Add symbol-versioning for PCP shared libraries (BZ 1037771) - Fix pmcd/Avahi interaction with multiple ports (BZ 1035513) - Confine set of exported symbols from DSO PMDAs (BZ 1025694) - Ensure pcpqa user created by pcp-testsuite rpm (BZ 1025688) - Remove empty pmlogger configuration directory (BZ 1025599) - Resolve warning messages from pcp rpm scripts (BZ 1025587) - Remove world-writeable private temp directory (BZ 1025583) - Tackle remaining failing pcp-testsuite cases (BZ 987086) - Update to latest PCP sources. * Fri Dec 27 2013 Daniel Mach - 3.8.6-3 - Mass rebuild 2013-12-27 * Wed Nov 06 2013 Frank Ch. Eigler - 3.8.6-2 - BZ1027236: adapt to droppage of nss export ciphers * Fri Nov 01 2013 Nathan Scott - 3.8.6-1 - Update to latest PCP sources. - Rework pmpost test which confused virus checkers (BZ 1024850) - Tackle pmatop reporting issues via alternate metrics (BZ 998735) * Fri Oct 18 2013 Nathan Scott - 3.8.5-1 - Update to latest PCP sources. - Correct pcp Infiniband package dependencies (BZ 1016368) * Mon Sep 16 2013 Nathan Scott - 3.8.4-2 - Disable the pcp-pmda-infiniband sub-package on s390 platforms. * Sun Sep 15 2013 Nathan Scott - 3.8.4-1 - Very minor release containing mostly QA related changes. - Enables many more metrics to be logged for Linux hosts. * Wed Sep 11 2013 Stan Cox - 3.8.3-2 - Disable pmcd.stp on el5 ppc. * Mon Sep 09 2013 Nathan Scott - 3.8.3-1 - Default to Unix domain socket (authenticated) local connections. - Introduces new pcp-pmda-infiniband sub-package. - Disable systemtap-sdt-devel usage on ppc. * Sat Aug 03 2013 Petr Pisar - 3.8.2-1.1 - Perl 5.18 rebuild * Wed Jul 31 2013 Nathan Scott - 3.8.2-1 - Update to latest PCP sources. - Integrate gluster related stats with PCP (BZ 969348) - Fix for iostat2pcp not parsing iostat output (BZ 981545) - Start pmlogger with usable config by default (BZ 953759) - Fix pmatop failing to start, gives stacktrace (BZ 963085) * Wed Jun 19 2013 Nathan Scott - 3.8.1-1 - Update to latest PCP sources. - Fix log import silently dropping >1024 metrics (BZ 968210) - Move some commonly used tools on the usual PATH (BZ 967709) - Improve pmatop handling of missing proc metrics (BZ 963085) - Stop out-of-order records corrupting import logs (BZ 958745) * Tue May 14 2013 Nathan Scott - 3.8.0-1 - Update to latest PCP sources. - Validate metric names passed into pmiAddMetric (BZ 958019) - Install log directories with correct ownership (BZ 960858) * Fri Apr 19 2013 Nathan Scott - 3.7.2-1 - Update to latest PCP sources. - Ensure root namespace exists at the end of install (BZ 952977) * Wed Mar 20 2013 Nathan Scott - 3.7.1-1 - Update to latest PCP sources. - Migrate all tempfiles correctly to the new tempdir hierarchy. * Sun Mar 10 2013 Nathan Scott - 3.7.0-1 - Update to latest PCP sources. - Migrate all configuration files below the /etc/pcp hierarchy. * Thu Feb 14 2013 Fedora Release Engineering - 3.6.10-2.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Wed Nov 28 2012 Nathan Scott - 3.6.10-2 - Ensure tmpfile directories created in %%files section. - Resolve tmpfile create/teardown race conditions. * Mon Nov 19 2012 Nathan Scott - 3.6.10-1 - Update to latest PCP sources. - Resolve tmpfile security flaws: CVE-2012-5530 - Introduces new "pcp" user account for all daemons to use. * Fri Oct 12 2012 Nathan Scott - 3.6.9-1 - Update to latest PCP sources. - Fix pmcd sigsegv in NUMA/CPU indom setup (BZ 858384) - Fix sar2pcp uninitialised perl variable warning (BZ 859117) - Fix pcp.py and pmcollectl with older python versions (BZ 852234) * Fri Sep 14 2012 Nathan Scott - 3.6.8-1 - Update to latest PCP sources. * Wed Sep 05 2012 Nathan Scott - 3.6.6-1.1 - Move configure step from prep to build section of spec (BZ 854128) * Tue Aug 28 2012 Mark Goodwin - 3.6.6-1 - Update to latest PCP sources, see installed CHANGELOG for details. - Introduces new python-pcp and pcp-testsuite sub-packages. * Thu Aug 16 2012 Mark Goodwin - 3.6.5-1 - Update to latest PCP sources, see installed CHANGELOG for details. - Fix security flaws: CVE-2012-3418 CVE-2012-3419 CVE-2012-3420 and CVE-2012-3421 (BZ 848629) * Thu Jul 19 2012 Mark Goodwin - pmcd and pmlogger services are not supposed to be enabled by default (BZ 840763) - 3.6.3-1.3 * Thu Jun 21 2012 Mark Goodwin - remove pcp-import-sheet2pcp subpackage due to missing deps (BZ 830923) - 3.6.3-1.2 * Fri May 18 2012 Dan Hork - 3.6.3-1.1 - fix build on s390x * Mon Apr 30 2012 Mark Goodwin - 3.6.3-1 - Update to latest PCP sources * Thu Apr 26 2012 Mark Goodwin - 3.6.2-1 - Update to latest PCP sources * Thu Apr 12 2012 Mark Goodwin - 3.6.1-1 - Update to latest PCP sources * Thu Mar 22 2012 Mark Goodwin - 3.6.0-1 - use %%configure macro for correct libdir logic - update to latest PCP sources * Thu Dec 15 2011 Mark Goodwin - 3.5.11-2 - patched configure.in for libdir=/usr/lib64 on ppc64 * Thu Dec 01 2011 Mark Goodwin - 3.5.11-1 - Update to latest PCP sources. * Fri Nov 04 2011 Mark Goodwin - 3.5.10-1 - Update to latest PCP sources. * Mon Oct 24 2011 Mark Goodwin - 3.5.9-1 - Update to latest PCP sources. * Mon Aug 08 2011 Mark Goodwin - 3.5.8-1 - Update to latest PCP sources. * Fri Aug 05 2011 Mark Goodwin - 3.5.7-1 - Update to latest PCP sources. * Fri Jul 22 2011 Mark Goodwin - 3.5.6-1 - Update to latest PCP sources. * Tue Jul 19 2011 Mark Goodwin - 3.5.5-1 - Update to latest PCP sources. * Thu Feb 03 2011 Mark Goodwin - 3.5.0-1 - Update to latest PCP sources. * Thu Sep 30 2010 Mark Goodwin - 3.4.0-1 - Update to latest PCP sources. * Fri Jul 16 2010 Mark Goodwin - 3.3.3-1 - Update to latest PCP sources. * Sat Jul 10 2010 Mark Goodwin - 3.3.2-1 - Update to latest PCP sources. * Tue Jun 29 2010 Mark Goodwin - 3.3.1-1 - Update to latest PCP sources. * Fri Jun 25 2010 Mark Goodwin - 3.3.0-1 - Update to latest PCP sources. * Thu Mar 18 2010 Mark Goodwin - 3.1.2-1 - Update to latest PCP sources. * Wed Jan 27 2010 Mark Goodwin - 3.1.0-1 - BuildRequires: initscripts for %%{_vendor} == redhat. * Thu Dec 10 2009 Mark Goodwin - 3.0.3-1 - BuildRequires: initscripts for FC12. * Wed Dec 02 2009 Mark Goodwin - 3.0.2-1 - Added sysfs.kernel metrics, rebased to minor community release. * Mon Oct 19 2009 Martin Hicks - 3.0.1-2 - Remove IB dependencies. The Infiniband PMDA is being moved to a stand-alone package. - Move cluster PMDA to a stand-alone package. * Fri Oct 09 2009 Mark Goodwin - 3.0.0-9 - This is the initial import for Fedora - See 3.0.0 details in CHANGELOG