diff options
Diffstat (limited to 'docker')
-rw-r--r-- | docker/barometer-grafana/Dockerfile | 13 | ||||
-rwxr-xr-x | docker/barometer-grafana/configure_grafana.sh | 19 |
2 files changed, 22 insertions, 10 deletions
diff --git a/docker/barometer-grafana/Dockerfile b/docker/barometer-grafana/Dockerfile index 32a78862..610e8086 100644 --- a/docker/barometer-grafana/Dockerfile +++ b/docker/barometer-grafana/Dockerfile @@ -1,6 +1,11 @@ -FROM grafana/grafana:latest +FROM grafana/grafana:4.6.3 -COPY ./configure_grafana.sh / +ENV grafana_folder /opt/grafana +RUN mkdir -p ${grafana_folder}/dashboards/ + +COPY ./configure_grafana.sh ${grafana_folder} COPY ./run.sh / -COPY ./dashboards/ /var/lib/grafana/dashboards/ -RUN chmod 755 run.sh configure_grafana.sh +COPY ./dashboards/ ${grafana_folder}/dashboards/ + +WORKDIR $grafana_folder +RUN chmod 755 /run.sh configure_grafana.sh diff --git a/docker/barometer-grafana/configure_grafana.sh b/docker/barometer-grafana/configure_grafana.sh index 0b185297..abe85824 100755 --- a/docker/barometer-grafana/configure_grafana.sh +++ b/docker/barometer-grafana/configure_grafana.sh @@ -1,4 +1,4 @@ -# Copyright 2017 OPNFV +# Copyright 2017-2018 OPNFV, Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -12,14 +12,21 @@ # See the License for the specific language governing permissions and # limitations under the License. +if [ -z "${influxdb_host}" ] +then + influxdb_host=localhost +fi -sleep 20 #allow 20 seconds for grafana complete initilization -curl -u admin:admin -X POST -H 'content-type: application/json'\ - http://127.0.0.1:3000/api/datasources -d \ - '{"name":"collectd","type":"influxdb","url":"http://localhost:8086","access":"proxy","isDefault":true,"database":"collectd","user":"admin","password":"admin","basicAuth":false}' +while [ -z "$RETURN" ] +do + sleep 1 + RETURN=$(curl -u admin:admin -X POST -H 'content-type: application/json'\ + http://127.0.0.1:3000/api/datasources -d \ + '{"name":"collectd","type":"influxdb","url":"http://'"${influxdb_host}"':8086","access":"proxy","isDefault":true,"database":"collectd","user":"admin","password":"admin","basicAuth":false}') +done -FILES=/var/lib/grafana/dashboards/*.json +FILES=/opt/grafana/dashboards/*.json for f in $FILES do curl -u admin:admin -X POST -H 'content-type: application/json' \ |