From 4721582f5e562c6116e5dd051128985b1f7be697 Mon Sep 17 00:00:00 2001 From: Facu de la Cruz Date: Sat, 24 Oct 2020 23:32:40 -0300 Subject: [PATCH] Upgrading Makefile --- Makefile | 29 ++++++++++++------- docker-compose/docker-compose.yaml | 2 +- docker-compose/grafana/network-dashboard.json | 14 +++++++++ .../grafana/raspberry-dashboard.json | 15 ++++++++++ 4 files changed, 48 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index bde612a..ae5d470 100755 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: default install start stop restart prune +.PHONY: default install start stop restart prune provision docker-bootstrap NAME=ISP-Checker VERSION=1.2 @@ -15,7 +15,13 @@ default: @echo "\t- stop : Stops entire stack." @echo "\t- restart : Restart stack.\n" -install: +install: docker-bootstrap provision + @echo "\nOpen your browser a points to http://127.0.0.1:3000/\n" + @echo "Default Username: admin | Default Password: admin" + @echo "Updated credentials after your first login!." + $(info Make: Bootstrap done) + +docker-bootstrap: $(info Make: Creating persistent Docker volumes) @bash ./docker-compose/bin/inject_credentials.sh @docker volume create --name=influxdb-storage @@ -24,28 +30,29 @@ install: @docker-compose -f $(COMPOSE_FILE) up -d @sleep 10 +provision: $(info Make: Initializing datasources and dashboards) - @docker run --network host -v "$(PWD)/grafana:/app" --rm curlimages/curl:7.73.0 \ + + @echo ">> Provisioning: InfluxDB datasource\n" + @docker run --network host -v "$(PWD)/docker-compose/grafana:/app" --rm curlimages/curl:7.73.0 \ -s --location -XPOST 'http://admin:admin@127.0.0.1:3000/api/datasources' \ --header 'Content-Type: application/json' -d @/app/datasource.json > /dev/null - @docker run --network host -v "$(PWD)/grafana:/app" --rm curlimages/curl:7.73.0 \ + @echo ">> Provisioning: Network dashboard\n" + @docker run --network host -v "$(PWD)/docker-compose/grafana:/app" --rm curlimages/curl:7.73.0 \ -s --location -XPOST 'http://admin:admin@127.0.0.1:3000/api/dashboards/db' \ --header 'Content-Type: application/json' -d @/app/network-dashboard.json > /dev/null - @docker run --network host -v "$(PWD)/grafana:/app" --rm curlimages/curl:7.73.0 \ + @echo ">> Provisioning: Raspberry dashboard\n" + @docker run --network host -v "$(PWD)/docker-compose/grafana:/app" --rm curlimages/curl:7.73.0 \ -s --location -XPOST 'http://admin:admin@127.0.0.1:3000/api/dashboards/db' \ --header 'Content-Type: application/json' -d @/app/raspberry-dashboard.json > /dev/null - @docker run --network host -v "$(PWD)/grafana:/app" --rm curlimages/curl:7.73.0 \ + @echo ">> Provisioning: Network preferences\n" + @docker run --network host -v "$(PWD)/docker-compose/grafana:/app" --rm curlimages/curl:7.73.0 \ -s --location -XPUT 'http://admin:admin@127.0.0.1:3000/api/user/preferences' \ --header 'Content-Type: application/json' -d @/app/default.json > /dev/null - @echo "\nOpen your browser a points to http://127.0.0.1:3000/\n" - @echo "Default Username: admin | Default Password: admin" - @echo "Updated credentials after your first login!." - $(info Make: Bootstrap done) - kube-install: kubectl apply -f https://raw.githubusercontent.com/fmdlc/ISP-Checker/master/kubernetes/ISP-Checker-deploy.yaml diff --git a/docker-compose/docker-compose.yaml b/docker-compose/docker-compose.yaml index 79627c8..01d6de4 100644 --- a/docker-compose/docker-compose.yaml +++ b/docker-compose/docker-compose.yaml @@ -22,7 +22,7 @@ services: container_name: telegraf image: tty0/isp_telegraf:1.15.3 volumes: - - "../telegraf/conf/telegraf.conf:/etc/telegraf/telegraf.conf" + - "./telegraf/conf/telegraf.conf:/etc/telegraf/telegraf.conf" env_file: - ./credentials.env links: diff --git a/docker-compose/grafana/network-dashboard.json b/docker-compose/grafana/network-dashboard.json index e566808..f837216 100644 --- a/docker-compose/grafana/network-dashboard.json +++ b/docker-compose/grafana/network-dashboard.json @@ -1,7 +1,21 @@ { "dashboard": { + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, "description": "Network latencies and availability", "editable": true, + "gnetId": 13140, "graphTooltip": 0, "id": null, "links": [], diff --git a/docker-compose/grafana/raspberry-dashboard.json b/docker-compose/grafana/raspberry-dashboard.json index 140c036..06cd65e 100644 --- a/docker-compose/grafana/raspberry-dashboard.json +++ b/docker-compose/grafana/raspberry-dashboard.json @@ -1,7 +1,22 @@ { "dashboard": { + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, "description": "Raspberry Pi Monitoring", "editable": true, + "gnetId": 10578, + "graphTooltip": 1, "id": null, "links": [], "panels": [