Blame SPECS/grafana-pcp.spec

2ae673
Name:           grafana-pcp
1fc467
Version:        2.0.2
cdf1dc
Release:        3%{?dist}
2ae673
Summary:        Performance Co-Pilot Grafana Plugin
2ae673
2ae673
%global         github https://github.com/performancecopilot/grafana-pcp
2ae673
%global         install_dir %{_sharedstatedir}/grafana/plugins/grafana-pcp
2ae673
2ae673
BuildArch:      noarch
2ae673
ExclusiveArch:  %{nodejs_arches}
2ae673
2ae673
License:        ASL 2.0
2ae673
URL:            %{github}
2ae673
2ae673
Source0:        %{github}/archive/v%{version}/%{name}-%{version}.tar.gz
2ae673
Source1:        grafana-pcp-deps-%{version}.tar.xz
2ae673
Source2:        create_dependency_bundle.sh
1fc467
Source3:        list_bundled_nodejs_packages.py
2ae673
3d96d6
Patch1:         001-fix-empty-container-dashboard.patch
cdf1dc
Patch2:         002-add-process-name-and-pid-in-flamegraph-dashboard.patch
3d96d6
2ae673
BuildRequires:  nodejs
1fc467
Requires:       grafana >= 6.6.0
2ae673
Suggests:       pcp >= 5.0.0
2ae673
Suggests:       redis >= 5.0.0
2ae673
Suggests:       bpftrace >= 0.9.2
2ae673
2ae673
# Obsolete old webapps
1fc467
Obsoletes: pcp-webjs <= 4.3.4
1fc467
Obsoletes: pcp-webapp-blinkenlights <= 4.3.4
1fc467
Obsoletes: pcp-webapp-grafana <= 4.3.4
1fc467
Obsoletes: pcp-webapp-graphite <= 4.3.4
1fc467
Obsoletes: pcp-webapp-vector <= 4.3.4
2ae673
2ae673
# Bundled npm packages
1fc467
Provides: bundled(nodejs-@babel/cli) = 7.8.4
1fc467
Provides: bundled(nodejs-@babel/core) = 7.8.4
1fc467
Provides: bundled(nodejs-@babel/preset-env) = 7.8.4
1fc467
Provides: bundled(nodejs-@babel/preset-react) = 7.8.3
1fc467
Provides: bundled(nodejs-@babel/preset-typescript) = 7.8.3
1fc467
Provides: bundled(nodejs-@grafana/data) = 6.6.0
1fc467
Provides: bundled(nodejs-@grafana/ui) = 6.6.0
2ae673
Provides: bundled(nodejs-@types/benchmark) = 1.0.31
2ae673
Provides: bundled(nodejs-@types/d3) = 5.7.2
2ae673
Provides: bundled(nodejs-@types/grafana) = 4.6.3
1fc467
Provides: bundled(nodejs-@types/jest) = 24.9.1
1fc467
Provides: bundled(nodejs-@types/lodash) = 4.14.149
1fc467
Provides: bundled(nodejs-babel-jest) = 24.9.0
2ae673
Provides: bundled(nodejs-babel-loader) = 8.0.6
2ae673
Provides: bundled(nodejs-babel-plugin-angularjs-annotate) = 0.10.0
2ae673
Provides: bundled(nodejs-benchmark) = 2.1.4
2ae673
Provides: bundled(nodejs-clean-webpack-plugin) = 0.1.19
2ae673
Provides: bundled(nodejs-copy-webpack-plugin) = 5.1.1
1fc467
Provides: bundled(nodejs-core-js) = 1.2.7
2ae673
Provides: bundled(nodejs-css-loader) = 1.0.1
1fc467
Provides: bundled(nodejs-d3-flame-graph) = 2.1.9
2ae673
Provides: bundled(nodejs-d3-selection) = 1.4.0
2ae673
Provides: bundled(nodejs-expr-eval) = 1.2.3
1fc467
Provides: bundled(nodejs-jest) = 24.9.0
1fc467
Provides: bundled(nodejs-jest-date-mock) = 1.0.8
2ae673
Provides: bundled(nodejs-jsdom) = 9.12.0
2ae673
Provides: bundled(nodejs-lodash) = 4.17.15
1fc467
Provides: bundled(nodejs-memoize-one) = 4.1.0
1fc467
Provides: bundled(nodejs-mocha) = 6.2.2
2ae673
Provides: bundled(nodejs-prunk) = 1.3.1
2ae673
Provides: bundled(nodejs-q) = 1.5.1
1fc467
Provides: bundled(nodejs-regenerator-runtime) = 0.11.1
2ae673
Provides: bundled(nodejs-request) = 2.88.0
2ae673
Provides: bundled(nodejs-style-loader) = 0.22.1
1fc467
Provides: bundled(nodejs-ts-jest) = 24.3.0
2ae673
Provides: bundled(nodejs-ts-loader) = 4.5.0
1fc467
Provides: bundled(nodejs-tslint) = 5.20.1
1fc467
Provides: bundled(nodejs-tslint-config-airbnb) = 5.11.2
1fc467
Provides: bundled(nodejs-typescript) = 3.7.5
1fc467
Provides: bundled(nodejs-webpack) = 4.41.5
1fc467
Provides: bundled(nodejs-webpack-cli) = 3.3.10
2ae673
2ae673
2ae673
%description
2ae673
This Grafana plugin for Performance Co-Pilot includes datasources for
2ae673
scalable time series from pmseries(1) and Redis, live PCP metrics and
2ae673
bpftrace scripts from pmdabpftrace(1), as well as several dashboards.
2ae673
2ae673
%prep
2ae673
%setup -q
2ae673
%setup -q -a 1
3d96d6
%patch1 -p1
cdf1dc
%patch2 -p1
2ae673
2ae673
%build
2ae673
rm -rf dist
2ae673
./node_modules/webpack/bin/webpack.js --config webpack.config.prod.js
2ae673
2ae673
# webpack/copy-webpack-plugin sometimes outputs files with mode = 666 due to reasons unknown (race condition/umask issue afaics)
2ae673
chmod -Rf a+rX,u+w,g-w,o-w dist
2ae673
2ae673
%check
2ae673
./node_modules/jest/bin/jest.js --silent
2ae673
2ae673
%install
2ae673
install -d -m 755 %{buildroot}/%{install_dir}
2ae673
cp -a dist/* %{buildroot}/%{install_dir}
2ae673
2ae673
%files
2ae673
%{install_dir}
2ae673
2ae673
%license LICENSE NOTICE
2ae673
%doc README.md
2ae673
2ae673
%changelog
cdf1dc
* Fri Aug 07 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-3
cdf1dc
- bpftrace: show process name and PID in flame graphs
cdf1dc
3d96d6
* Fri Jul 24 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-2
3d96d6
- vector: do not show all cgroups in the container overview dashboard in case no containers are present on the system
3d96d6
1fc467
* Mon May 11 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-1
1fc467
- update to upstream version 2.0.2, see CHANGELOG
1fc467
2ae673
* Tue Jan 28 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-3
2ae673
- redis: pass correct timespec to pmproxy (fixes empty graphs for large time ranges)
2ae673
2ae673
* Tue Jan 07 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-2
2ae673
- redis: support wildcards in metric names
2ae673
- redis: fix legend and label support
2ae673
2ae673
* Mon Dec 16 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-1
2ae673
- upgrade to upstream 1.0.5
2ae673
- flame graphs: clean flame graph stacks every 5s (reduces CPU load)
2ae673
- general: implement PCP version checks
2ae673
- redis: set default sample interval to 60s (fixes empty graph borders)
2ae673
2ae673
* Mon Dec 16 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.3-2
2ae673
- remove node_modules/node-notifier directory from webpack (due to licensing issues)
2ae673
- upgrade copy-webpack-plugin, terser-webpack-plugin and remove uglifyjs-webpack-plugin to mitigate XSS vulnerability in serialize-javascript dependency
2ae673
2ae673
* Tue Nov 26 2019 Nathan Scott <nathans@redhat.com> 1.0.3-1
2ae673
- fix flame graph dependency (flamegraph.destroy error in javascript console)
2ae673
2ae673
* Tue Nov 12 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.2-1
2ae673
- handle counter wraps (overflows)
2ae673
- convert time based counters to time utilization
2ae673
- flame graphs: aggregate stack counts by selected time range in the Grafana UI
2ae673
- flame graphs: add option to hide idle stacks
2ae673
- vector: fix container dropdown in query editor
2ae673
- vector: remove container setting from datasource settings page
2ae673
- redis: fix value transformations (e.g. rate conversation of counters)
2ae673
- request more datapoints from the datasource to fill the borders of the graph panel
2ae673
2ae673
* Fri Oct 11 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.0-1
2ae673
- bpftrace: support for Flame Graphs
2ae673
- bpftrace: context-sensitive auto completion for bpftrace probes, builtin variables and functions incl. help texts
2ae673
- bpftrace: parse output of bpftrace scripts (e.g. using `printf()`) as CSV and display it in the Grafana table panel
2ae673
- bpftrace: sample dashboards (BPFtrace System Analysis, BPFtrace Flame Graphs)
2ae673
- vector: table output: show instance name in left column
2ae673
- vector: table output: support non-matching instance names (cells of metrics which don't have the specific instance will be blank)
2ae673
- vector & bpftrace: if the metric/script gets changed in the query editor, immeditately stop polling the old metric/deregister the old script
2ae673
- vector & bpftrace: improve pmwebd compatibility
2ae673
- misc: help texts for all datasources (visible with the **[ ? ]** button in the query editor)
2ae673
- misc: renamed PCP Live to PCP Vector
2ae673
- misc: logos for all datasources
2ae673
- misc: improved error handling
2ae673
2ae673
* Fri Aug 16 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 0.0.7-1
2ae673
- converted into a Grafana app plugin, renamed to grafana-pcp
2ae673
- redis: support for instance domains, labels, autocompletion, automatic rate conversation
2ae673
- live and bpftrace: initial commit of datasources
2ae673
2ae673
* Tue Jun 11 2019 Mark Goodwin <mgoodwin@redhat.com> 0.0.6-1
2ae673
- renamed package to grafana-pcp-redis, updated README, etc
2ae673
2ae673
* Wed Jun 05 2019 Mark Goodwin <mgoodwin@redhat.com> 0.0.5-1
2ae673
- renamed package to grafana-pcp-datasource, README, etc
2ae673
2ae673
* Fri May 17 2019 Mark Goodwin <mgoodwin@redhat.com> 0.0.4-1
2ae673
- add suggested pmproxy URL in config html
2ae673
- updated instructions and README.md now that grafana is in Fedora
2ae673
2ae673
* Fri Apr 12 2019 Mark Goodwin <mgoodwin@redhat.com> 0.0.3-1
2ae673
- require grafana v6.1.3 or later
2ae673
- install directory is now below /var/lib/grafana/plugins
2ae673
2ae673
* Wed Mar 20 2019 Mark Goodwin <mgoodwin@redhat.com> 0.0.2-1
2ae673
- initial version