From 663648b91109d0efa99655862bccbea37a7075f3 Mon Sep 17 00:00:00 2001
From: Robert Lange <robert.lange@uni-leipzig.de>
Date: Wed, 16 Aug 2023 13:13:07 +0200
Subject: [PATCH] refs #24354 [finc] fix missing db connection on first install

* let db container depend on autoconfig and env
* wait for Password in db file (file could exist before password written)
* autoconfig: remove circle dependeny on db service
---
 devops/docker/db/entrypoint.sh | 6 ++++++
 docker-compose.yml             | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/devops/docker/db/entrypoint.sh b/devops/docker/db/entrypoint.sh
index 168bb590f52..8be1f15524b 100755
--- a/devops/docker/db/entrypoint.sh
+++ b/devops/docker/db/entrypoint.sh
@@ -18,6 +18,12 @@
 # @license https://opensource.org/licenses/GPL-3.0 GNU GPLv3
 
 until ! (ping -c1 env >/dev/null 2>&1) && [ -f ./data/docker/env/db ]; do :; done
+while ! grep -q MYSQL_ROOT_PASSWORD ./data/docker/env/db
+do
+    echo "wait for MYSQL_ROOT_PASSWORD"
+    sleep 1
+done
 set -a; . ./data/docker/env/db; set +a
 
+echo "set up db"
 exec docker-entrypoint.sh "$@"
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 9f7c8cc5065..7eb40155c78 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -52,6 +52,7 @@ services:
       - db-data:/var/lib/mysql
     depends_on:
       - env
+      - autoconfig
     entrypoint: ["devops/docker/db/entrypoint.sh"]
     command: [
       "mysqld",
@@ -90,7 +91,6 @@ services:
       - ./:/usr/local/vufind:rw
     depends_on:
       - env
-      - db
     entrypoint: ["devops/docker/autoconfig/entrypoint.sh"]
     command: ["vufind", "deploy"]
 
-- 
GitLab