diff --git a/pcp.spec b/pcp.spec index 1a0c374..d77fdf3 100644 --- a/pcp.spec +++ b/pcp.spec @@ -1,5 +1,5 @@ Name: pcp -Version: 3.11.9 +Version: 3.11.10 Release: 1%{?dist} Summary: System-level performance monitoring and performance management License: GPLv2+ and LGPLv2.1+ and CC-BY @@ -266,6 +266,31 @@ then fi } +%global selinux_handle_policy() %{expand: +if [ "%1" -eq 1 ] +then + PCP_SELINUX_DIR=%{_selinuxdir} + if [ -f "$PCP_SELINUX_DIR/%2" ] + then + %if 0%{?fedora} >= 24 || 0%{?rhel} > 6 + (semodule -X 400 -i %{_selinuxdir}/%2) + %else + (semodule -i %{_selinuxdir}/%2) + %endif #distro version check + fi +elif [ "%1" -eq 0 ] +then + if semodule -l | grep %2 >/dev/null 2>&1 + then + %if 0%{?fedora} >= 24 || 0%{?rhel} > 6 + (semodule -X 400 -r %2 >/dev/null) + %else + (semodule -r %2 >/dev/null) + %endif #distro version check + fi +fi +} + %description Performance Co-Pilot (PCP) provides a framework and services to support system-level performance monitoring and performance management. @@ -1721,6 +1746,18 @@ 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. @@ -2407,31 +2444,44 @@ chown -R pcp:pcp %{_logsdir}/pmmgr 2>/dev/null %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 -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -i %{_selinuxdir}/pcpupstream.pp -%else - semodule -i %{_selinuxdir}/pcpupstream.pp -%endif #distro version check +%{selinux_handle_policy "$1" "pcpupstream.pp"} + %triggerin selinux -- docker-selinux -if ls %{_selinuxdir} | grep -q docker 2>/dev/null -then -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -i %{_selinuxdir}/pcpupstream-docker.pp -%else - semodule -i %{_selinuxdir}/pcpupstream-docker.pp -%endif #distro version check -fi +%{selinux_handle_policy "$1" "pcpupstream-docker.pp"} + %triggerin selinux -- container-selinux -if ls %{_selinuxdir} | grep -q container 2>/dev/null -then -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -i %{_selinuxdir}/pcpupstream-container.pp -%else - semodule -i %{_selinuxdir}/pcpupstream-container.pp -%endif #distro version check -fi +%{selinux_handle_policy "$1" "pcpupstream-container.pp"} %endif %post @@ -2495,33 +2545,14 @@ cd %if !%{disable_selinux} %preun selinux -if semodule -l | grep pcpupstream >/dev/null 2>&1 -then -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -r pcpupstream >/dev/null -%else - semodule -r pcpupstream >/dev/null -%endif -fi +%{selinux_handle_policy "$1" "pcpupstream"} + %triggerun selinux -- docker-selinux -if semodule -l | grep pcpupstream-docker >/dev/null 2>&1 -then -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -r pcpupstream-docker -%else -semodule -r pcpupstream-docker -%endif #distro version check -fi +%{selinux_handle_policy "$1" "pcpupstream-docker"} %triggerun selinux -- container-selinux -if semodule -l | grep pcpupstream-container >/dev/null 2>&1 -then -%if 0%{?fedora} >= 24 || 0%{?rhel} > 6 - semodule -X 400 -r pcpupstream-container -%else - semodule -r pcpupstream-container -%endif #distro version check -fi +%{selinux_handle_policy "$1" "pcpupstream-container"} + %endif %files -f base.list # @@ -2615,6 +2646,11 @@ fi %files collector #empty +%files zeroconf +%{_localstatedir}/lib/pcp/config/pmlogconf/zeroconf + +#additional pmlogger config files + %files conf %dir %{_includedir}/pcp %{_includedir}/pcp/builddefs @@ -2977,7 +3013,9 @@ fi %changelog * Wed May 17 2017 Dave Brolley - 3.11.10-1 -- Require qt5 for Fedora. +- python api: handle non-POSIXLY_CORRECT getopt cases (BZ 1289912) +- Fix pmchart reaction to timezone changes from pmtime (BZ 968823) +- Require Qt5 for Fedora. - Update to latest PCP Sources. * Fri Mar 31 2017 Nathan Scott - 3.11.9-1 diff --git a/sources b/sources index bd876be..5669e68 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (pcp-3.11.9.src.tar.gz) = 4b2d00693eaacf72a3d43c3a1b4818d6aab1406d1ba8825804cebda9535a8cebd3e7ad42912e326d241311919a0fe3fc8ca9391e6a8db54fcf68bcf368702de4 +SHA512 (pcp-3.11.10.src.tar.gz) = f91bfae176ae4ed189e11c0cc86db215b4343752400cef9026168fc2c39f5e7caff440078b7a4c459c1d620cd532a8bc60746f0ae820a81fa2a058361825a8c9 SHA512 (pcp-webapp-blinkenlights-1.0.0.tar.gz) = 505eafd4b8eb2ab97ec6b0fea3b5510ab0b976fa07559f1d163d240c62a8d7419f062eecc180b28b6b240207b45daed6fcc39d8e2930c6d038790d5ac0c695ab SHA512 (pcp-webapp-grafana-1.9.1.tar.gz) = 844c04b7155d19a294eacfab98e3950e5fefbf423b98a1195b86cb024e5dc6ab98ecb8785fd7ceff7fbcd947dd5c5ce07a2f059a4c432fda984c26a79ab641f3 SHA512 (pcp-webapp-graphite-0.9.10.tar.gz) = f716e5145e5d39b54be02e39202c51bdd1158d56fa16185a591c0f54fb376a637653f0c13aa9c5ad5700fc62d0c71163e94b9fa689fabe3e6de4ddf19fa827fa