metrics: switch over to grafana 5.x provisioning.

Provides both dashboards and datasources.
This commit is contained in:
Jimmy Berry 2018-03-09 16:42:05 -06:00
parent c10dec54dd
commit 8dd2694617
5 changed files with 59 additions and 7 deletions

View File

@ -22,7 +22,7 @@ VERSION = "build-$(shell date +%F)"
all:
install:
install -d -m 755 $(DESTDIR)$(bindir) $(DESTDIR)$(pkgdatadir) $(DESTDIR)$(unitdir) $(DESTDIR)$(oscplugindir) $(DESTDIR)$(sysconfdir)/$(package_name) $(DESTDIR)$(grafana_dashboards_dir)
install -d -m 755 $(DESTDIR)$(bindir) $(DESTDIR)$(pkgdatadir) $(DESTDIR)$(unitdir) $(DESTDIR)$(oscplugindir) $(DESTDIR)$(sysconfdir)/$(package_name) $(DESTDIR)$(grafana_provisioning_dir)/dashboards $(DESTDIR)$(grafana_provisioning_dir)/datasources
for i in $(pkgdata_SCRIPTS); do install -m 755 $$i $(DESTDIR)$(pkgdatadir); done
chmod 644 $(DESTDIR)$(pkgdatadir)/osc-*.py
for i in $(pkgdata_DATA); do cp -a $$i $(DESTDIR)$(pkgdatadir); done
@ -34,7 +34,9 @@ install:
for i in $(pkgdata_BINS); do ln -s $(pkgdatadir)/$$i $(DESTDIR)$(bindir)/osrt-$${i%.*}; done
install -m 755 script/* $(DESTDIR)$(bindir)
cp -R config/* $(DESTDIR)$(sysconfdir)/$(package_name)
for i in metrics/grafana/* ; do ln -s $(pkgdatadir)/$$i $(DESTDIR)$(grafana_dashboards_dir)/osrt-$$(basename $$i); done
for dir in dashboards datasources ; do ln -s $(pkgdatadir)/metrics/grafana/provisioning/$$dir.yaml \
$(DESTDIR)$(grafana_provisioning_dir)/$$dir/$(package_name).yaml ; done
sed -i "s|OSRT_DATA_DIR|$(pkgdatadir)|" $(DESTDIR)$(pkgdatadir)/metrics/grafana/provisioning/dashboards.yaml
check: test

View File

@ -5,7 +5,7 @@ datadir=$(prefix)/share
sysconfdir=/etc
unitdir=$(prefix)/lib/systemd/system
pkgdatadir=$(datadir)/osc-plugin-factory
grafana_dashboards_dir="/var/lib/grafana/dashboards/$(package_name)"
grafana_provisioning_dir="$(sysconfdir)/grafana/provisioning"
oscplugindir=$(prefix)/lib/osc-plugins
apachevhostsdir=$(sysconfdir)/apache2/vhosts.d
tmpfilesdir=$(prefix)/lib/tmpfiles.d

View File

@ -278,7 +278,7 @@ make %{?_smp_mflags}
%install
%make_install \
grafana_dashboards_dir="%{_localstatedir}/lib/grafana/dashboards/%{name}" \
grafana_provisioning_dir="%{_sysconfdir}/grafana/provisioning" \
oscplugindir="%{osc_plugin_dir}" \
VERSION="%{version}"
@ -449,9 +449,12 @@ fi
%{_datadir}/%{source_dir}/metrics.py
%{_datadir}/%{source_dir}/metrics_release.py
# To avoid adding grafana as BuildRequires since it does not live in same repo.
%dir %attr(0750, grafana, grafana) %{_localstatedir}/lib/grafana
%dir %{_localstatedir}/lib/grafana/dashboards
%{_localstatedir}/lib/grafana/dashboards/%{name}
%dir %attr(0750, root grafana) %{_sysconfdir}/grafana
%dir %{_sysconfdir}/grafana/provisioning
%dir %{_sysconfdir}/grafana/provisioning/dashboards
%dir %{_sysconfdir}/grafana/provisioning/datasources
%{_sysconfdir}/grafana/provisioning/dashboards/%{name}.yaml
%{_sysconfdir}/grafana/provisioning/datasources/%{name}.yaml
%{_unitdir}/osrt-metrics@.service
%{_unitdir}/osrt-metrics@.timer
%{_unitdir}/osrt-metrics-release@.service

View File

@ -0,0 +1,9 @@
apiVersion: 1
providers:
- name: openSUSE-release-tools
orgId: 1
folder: 'OSRT'
type: file
options:
path: OSRT_DATA_DIR/metrics/grafana

View File

@ -0,0 +1,38 @@
apiVersion: 1
datasources:
- name: openSUSE:Factory
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:Factory
- name: openSUSE:Leap:15.0
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:Leap:15.0
- name: openSUSE:Leap:42.3
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:Leap:42.3
- name: openSUSE:Leap:42.2
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:Leap:42.2
- name: openSUSE:Leap:42.1
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:Leap:42.1
- name: openSUSE:13.2
type: influxdb
url: http://localhost:8086
access: proxy
database: openSUSE:13.2