Packages

Telemetry.Metrics reporter for InfluxDB

Current section

Files

Jump to
Raw

Makefile

.PHONY: test
CONTAINER_NAME_V1=influxdb-test-v1
CONTAINER_NAME_V2=influxdb-test-v2
SHELL=bash
USERNAME=myuser
PASSWORD=mysecretpassword
STORAGE=myinflux
start_influx: start_influx_v1 start_influx_v2
start_influx_v1: stop_influx_v1
docker run -tid -p 8087:8086 \
-p 8089:8089/udp \
-e INFLUXDB_UDP_ENABLED=true \
-e INFLUXDB_DB=${STORAGE} \
-e INFLUXDB_HTTP_AUTH_ENABLED=true \
-e INFLUXDB_ADMIN_ENABLED=true \
-e INFLUXDB_ADMIN_USER=${USERNAME} \
-e INFLUXDB_ADMIN_PASSWORD=${PASSWORD} \
-v ${PWD}/influxdb-meta.conf:/etc/influxdb/influxdb-meta.conf \
--name=${CONTAINER_NAME_V1} influxdb -config /etc/influxdb/influxdb-meta.conf
start_influx_v2: stop_influx_v2
docker run -tid -p 9999:9999 \
--name=${CONTAINER_NAME_V2} quay.io/influxdb/influxdb:2.0.0-beta
wait_for_influx: wait_for_influx_v1 provision_influx_v2
wait_for_influx_v1:
@echo "Waiting for InfluxDB v1: "
@i=0; while \
!(curl --fail -i 'http://localhost:8087/ping' >error_v1.log 2>&1 ); do \
sleep 1; echo -n '.'; \
if [ $$((i+=1)) -gt 60 ] ; then cat error_v1.log ; exit 1; fi; \
done
@echo "DONE"
wait_for_influx_v2:
@echo "Waiting for InfluxDB v2: "
@i=0; while \
!(curl --fail -i 'http://localhost:9999/ping' >error_v2.log 2>&1 ); do \
sleep 1; echo -n '.'; \
if [ $$((i+=1)) -gt 60 ] ; then cat error_v2.log ; exit 1; fi; \
done
@echo "DONE"
provision_influx_v2: wait_for_influx_v2
curl -sb -X POST -H "Content-type: application/json" \
-d "{\"username\":\"${USERNAME}\",\"password\":\"${PASSWORD}\",\"org\":\"myorg\",\"bucket\":\"${STORAGE}\"}" \
http://localhost:9999/api/v2/setup \
| jq -j .auth.token > .token
stop_influx: stop_influx_v1 stop_influx_v2
stop_influx_v1:
docker rm -f ${CONTAINER_NAME_V1} || true
stop_influx_v2:
docker rm -f ${CONTAINER_NAME_V2} || true
test: start_influx wait_for_influx
MIX_ENV=test mix test ${file}