From 83578b381cf270dc0934b2e82afb0ea0f769457e Mon Sep 17 00:00:00 2001 From: Nathan Scott Date: Thu, 16 Apr 2015 11:57:22 +1000 Subject: [PATCH] Update to latest community sources --- .gitignore | 1 + pcp.spec | 138 ++++++++++++++++++++++++++++++++++++++--------------- sources | 3 +- 3 files changed, 102 insertions(+), 40 deletions(-) diff --git a/.gitignore b/.gitignore index 47cc6ed..2ac27c0 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,4 @@ pcp-3.3.3-1.src.tar.gz /pcp-3.10.4-1.20150331git8184d99.tar.gz /pcp-3.10.4-0.20150331git8184d99.tar.gz /pcp-3.10.4-0.20150413git42cfcf1.tar.gz +/pcp-3.10.4.src.tar.gz diff --git a/pcp.spec b/pcp.spec index be1b834..de30cb7 100644 --- a/pcp.spec +++ b/pcp.spec @@ -1,14 +1,15 @@ Summary: System-level performance monitoring and performance management Name: pcp Version: 3.10.4 -%global buildversion 0 +%global buildversion 1 -Release: 0.20150413git42cfcf1%{?dist} +Release: %{buildversion}%{?dist} License: GPLv2+ and LGPLv2.1+ and CC-BY URL: http://www.pcp.io Group: Applications/System -Source0: %{name}-%{version}-0.20150413git42cfcf1.tar.gz -Source1: ftp://ftp.pcp.io/projects/pcp/download/pcp-webjs.src.tar.gz +Source0: ftp://ftp.pcp.io/projects/pcp/download/%{name}-%{version}.src.tar.gz +# From: git://sourceware.org/git/pcpfans.git --branch=webjs +Source1: pcp-webjs.src.tar.gz # There are no papi/libpfm devel packages for s390 nor for some rhels, disable %ifarch s390 s390x @@ -75,7 +76,7 @@ BuildRequires: cyrus-sasl-devel BuildRequires: papi-devel %endif %if !%{disable_perfevent} -BuildRequires: libpfm-devel >= 4.4 +BuildRequires: libpfm-devel >= 4 %endif %if !%{disable_microhttpd} BuildRequires: libmicrohttpd-devel @@ -262,25 +263,70 @@ Co-Pilot (PCP) client API (PMAPI) to RESTful web applications using the HTTP (PMWEBAPI) protocol. %endif -%if !%{disable_microhttpd} # -# pcp-webjs +# pcp-webjs and pcp-webapp packages # %package webjs License: ASL2.0 and MIT and CC-BY -Group: Applications/System +Group: Applications/Internet %if 0%{?rhel} == 0 || 0%{?rhel} > 5 BuildArch: noarch -# pcp-webapi provides the .../webapps base path relied on here -Requires: pcp-webapi = %{version}-%{release} %endif +Requires: pcp-webapp-graphite pcp-webapp-grafana pcp-webapp-vector 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 0%{?rhel} == 0 || 0%{?rhel} > 5 +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 0%{?rhel} == 0 || 0%{?rhel} > 5 +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 0%{?rhel} == 0 || 0%{?rhel} > 5 +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. # # perl-PCP-PMDA. This is the PCP agent perl binding. @@ -453,8 +499,8 @@ 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.4 -BuildRequires: libpfm-devel >= 4.4 +Requires: libpfm >= 4 +BuildRequires: libpfm-devel >= 4 %description pmda-perfevent This package contains the PCP Performance Metrics Domain Agent (PMDA) for @@ -592,10 +638,9 @@ 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 -%else +%endif mv pcp-webjs/* $RPM_BUILD_ROOT/%{_datadir}/pcp/webapps rmdir pcp-webjs -%endif %if %{disable_infiniband} # remove pmdainfiniband on platforms lacking IB devel packages. @@ -684,6 +729,7 @@ exit 0 getent group pcp >/dev/null || groupadd -r pcp getent passwd pcp >/dev/null || \ useradd -c "Performance Co-Pilot" -g pcp -d %{_localstatedir}/lib/pcp -M -r -s /sbin/nologin pcp +PCP_CONFIG_DIR=%{_localstatedir}/lib/pcp/config PCP_SYSCONF_DIR=%{_confdir} PCP_LOG_DIR=%{_logsdir} PCP_ETC_DIR=%{_sysconfdir} @@ -706,6 +752,7 @@ save_configs_script() ( cd "$_dir" ; find . -type f -print ) | sed -e 's/^\.\///' \ | while read _file do + [ "$_file" = "control" ] && continue _want=true if [ -f "$_new/$_file" ] then @@ -722,10 +769,15 @@ save_configs_script() # 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 pmcd pmie pmlogger pmproxy +for daemon in pmie pmlogger do - save_configs_script >> "$PCP_LOG_DIR/configs.sh" "$PCP_SYSCONF_DIR/$daemon" \ - /var/lib/pcp/config/$daemon /etc/$daemon /etc/pcp/$daemon /etc/sysconfig/$daemon + 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 /etc/sysconfig/$daemon done exit 0 @@ -989,15 +1041,36 @@ chmod 644 "$PCP_PMNS_DIR/.NeedRebuild" %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 %{_mandir}/man1/pmwebd.1* %{_mandir}/man3/PMWEBAPI.3* %endif -%if !%{disable_microhttpd} %files webjs -%{_datadir}/pcp/webapps/* -%endif +# 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 +%{_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 @@ -1082,24 +1155,13 @@ chmod 644 "$PCP_PMNS_DIR/.NeedRebuild" %files -n pcp-doc -f pcp-doc.list %changelog -* Mon Apr 13 2015 Lukas Berk - 3.10.4-0.20150413git42cfcf1 -- Automated weekly rawhide release -- Applied spec changes from upstream git - -* Tue Mar 31 2015 Lukas Berk - 3.10.4-0.20150331git8184d99 -- Automated weekly rawhide release -- Applied spec changes from upstream git - -* Mon Mar 23 2015 Lukas Berk - 3.10.3-3.20150323git12b566f -- Automated weekly rawhide release - -* Mon Mar 16 2015 Lukas Berk - 3.10.3-0.804.g2e0fe59 -- Automated weekly rawhide release -- Applied spec changes from upstream git - -* Mon Mar 09 2015 Lukas Berk - 3.10.3-0.750.g326298d -- Automated weekly rawhide release -- Applied spec changes from upstream git +* Wed Apr 15 2015 Nathan Scott - 3.10.4-1 +- Update to latest PCP, pcp-webjs and Vector sources. +- Packaging improvements after re-review (BZ 1204467) +- Start pmlogger/pmie independent of persistent state (BZ 1185755) +- Fix cron error reports for disabled pmlogger service (BZ 1208699) +- Incorporate Vector from Netflix (https://github.com/Netflix/vector) +- Sub-packages for pcp-webjs allowing choice and reducing used space. * Wed Mar 04 2015 Dave Brolley - 3.10.3-2 - papi 5.4.1 rebuild diff --git a/sources b/sources index 67832c2..9e69edf 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -ccc40f72ba0803172c1d00a947ebaf7d pcp-3.10.4-0.20150413git42cfcf1.tar.gz -56af52255268e8579bd89f42573d19dd pcp-webjs.src.tar.gz +7f7fd77a543049b945cab4f2fbda6038 pcp-3.10.4.src.tar.gz