aboutsummaryrefslogtreecommitdiffstats
path: root/build/test
diff options
context:
space:
mode:
authorKristian Lyngstol <kly@kly.no>2016-11-22 15:35:16 +0100
committerKristian Lyngstol <kly@kly.no>2016-11-22 15:35:16 +0100
commit4f756e45b8393d4388af9bb3b7ee34d2ef79b46d (patch)
tree38aa83689db61ea3291fb89791d277ae4961f1b1 /build/test
parentc38af8933072bb2b9606cd6490e1a802ab4c4187 (diff)
Use persistent postgres storage and make grafana use postgres backing
Still need to fix session storage for Grafana. After that, the container is stateless.
Diffstat (limited to 'build/test')
-rw-r--r--build/test/gondul-db-test.Dockerfile6
-rw-r--r--build/test/gondul-grafana-test.Dockerfile6
-rw-r--r--build/test/pg_hba.tail1
-rwxr-xr-xbuild/test/postgres.sh17
4 files changed, 26 insertions, 4 deletions
diff --git a/build/test/gondul-db-test.Dockerfile b/build/test/gondul-db-test.Dockerfile
index b3d013b..38febc6 100644
--- a/build/test/gondul-db-test.Dockerfile
+++ b/build/test/gondul-db-test.Dockerfile
@@ -2,10 +2,8 @@ FROM debian:jessie
RUN apt-get update && apt-get install -y postgresql-9.4
ADD build/test/pg_hba.tail /pg_hba.tail
RUN cat /pg_hba.tail >> /etc/postgresql/9.4/main/pg_hba.conf
-RUN service postgresql start && su postgres -c "psql --command=\"CREATE ROLE nms PASSWORD 'risbrod' NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT LOGIN;\"" && su postgres -c "createdb -O nms nms" && service postgresql stop
-ADD build/schema.sql /schema.sql
-RUN service postgresql start && su postgres -c "cat /schema.sql | psql nms" && service postgresql stop
ADD build/test/postgresql.conf /etc/postgresql/9.4/main/postgresql.conf
RUN echo "listen_addresses = '*'" >> /etc/postgresql/9.4/main/postgresql.conf
-CMD pg_ctlcluster --foreground 9.4 main start
+CMD /opt/gondul/build/test/postgres.sh
+VOLUME /var/lib/postgresql
EXPOSE 5432
diff --git a/build/test/gondul-grafana-test.Dockerfile b/build/test/gondul-grafana-test.Dockerfile
index 33c69b4..223f8db 100644
--- a/build/test/gondul-grafana-test.Dockerfile
+++ b/build/test/gondul-grafana-test.Dockerfile
@@ -2,6 +2,12 @@ FROM grafana/grafana:4.0.0-beta1
ENV GF_SERVER_ROOT_URL http://nms-dev.gathering.org/grafana/
ENV GF_METRICS_GRAPHITE_ADDRESS graphite:2003
ENV GF_METRICS_GRAPHITE_PREFIX grafana.%(instance_name)s.
+ENV GF_DATABASE_TYPE postgres
+ENV GF_DATABASE_HOST db:5432
+ENV GF_DATABASE_NAME grafana
+ENV GF_DATABASE_USER grafana
+ENV GF_DATABASE_PASSWORD grafana
+ENV GF_DATABASE_SSL_MODE require
ENV GF_EXTERNAL_IMAGE_STORAGE_PROVIDER internal
ENV GF_EXTERNAL_IMAGE_STORAGE_S3_BUCKET_URL http://grafana.situla.bitbit.net/
ENV GF_EXTERNAL_IMAGE_STORAGE_S3_ACCESS_KEY 8KMMX9F3VZZ6MAZOGFF6
diff --git a/build/test/pg_hba.tail b/build/test/pg_hba.tail
index 60b8c53..ecf6295 100644
--- a/build/test/pg_hba.tail
+++ b/build/test/pg_hba.tail
@@ -1 +1,2 @@
host nms nms 172.17.0.0/16 md5
+host grafana grafana 172.17.0.0/16 md5
diff --git a/build/test/postgres.sh b/build/test/postgres.sh
new file mode 100755
index 0000000..1540d97
--- /dev/null
+++ b/build/test/postgres.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+set -e
+if [ ! -d /var/lib/postgresql/9.4/main ]; then
+ echo Bootstrapping DB
+ mkdir -p /var/lib/postgresql/9.4/main
+ chown -R postgres /var/lib/postgresql/9.4
+ su postgres -c '/usr/lib/postgresql/9.4/bin/initdb /var/lib/postgresql/9.4/main'
+ service postgresql start
+ su postgres -c "psql --command=\"CREATE ROLE nms PASSWORD 'risbrod' NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT LOGIN;\""
+ su postgres -c "createdb -O nms nms"
+ su postgres -c "psql --command=\"CREATE ROLE grafana PASSWORD 'grafana' NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT LOGIN;\""
+ su postgres -c "createdb -O grafana grafana"
+ su postgres -c "cat /opt/gondul/build/schema.sql | psql nms"
+ service postgresql stop
+ echo Bootstrap done
+fi
+exec pg_ctlcluster --foreground 9.4 main start