From 11ca6f48b7f49e1c6eb693c6e4de0d5cfa74b5f2 Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Mon, 4 Sep 2017 10:35:25 +0100
Subject: [PATCH] Add CI configuration

---
 .gitlab-ci.yml  | 30 ++++++++++++++++++++++++++++++
 repl_manager.sh |  6 +++++-
 2 files changed, 35 insertions(+), 1 deletion(-)
 create mode 100644 .gitlab-ci.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..b3c9659
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,30 @@
+image: docker:latest
+
+stages:
+  - build
+  - release
+
+services:
+  - docker:dind
+
+variables:
+  IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
+  RELEASE_TAG: $CI_REGISTRY_IMAGE:latest
+
+before_script:
+  - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN registry.git.autistici.org
+
+build:
+  stage: build
+  script:
+    - docker build --pull -t $IMAGE_TAG .
+    - docker push $IMAGE_TAG
+
+release:
+  stage: release
+  script:
+    - docker pull $IMAGE_TAG
+    - docker tag $IMAGE_TAG $RELEASE_TAG
+    - docker push $RELEASE_TAG
+  only:
+    - master
diff --git a/repl_manager.sh b/repl_manager.sh
index c2f0227..1ca3e7f 100755
--- a/repl_manager.sh
+++ b/repl_manager.sh
@@ -1,7 +1,11 @@
 #!/bin/sh
 
 MASTERELECTION_NAME=${MASTERELECTION_NAME:-mariadb}
-PUBLIC_ADDR=${PUBLIC_ADDR:-$(/bin/hostname):3306}
+
+if [ -z "${PUBLIC_ADDR}" ]; then
+    echo "ERROR: PUBLIC_ADDR is undefined" >&2
+    exit 2
+fi
 
 wait_for_mysql() {
     echo "Waiting for MySQL server to start up..." >&2
-- 
GitLab