From 58111bcc7a45ba0ae98f2100ad607ad5c7394d93 Mon Sep 17 00:00:00 2001
From: Bryan Brancotte <bryan.brancotte@pasteur.fr>
Date: Fri, 21 Jun 2024 14:22:22 +0200
Subject: [PATCH] test image with docker compose  * check that it starts  *
 check the log dir is writable

---
 .gitlab-ci.yml | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c49c387..a99583e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -30,6 +30,38 @@ build:
 
 
 
+test-with-compose:
+  needs: [ "build"]
+  rules:
+    - if: $CI_COMMIT_BRANCH != "base-common"
+  variables:
+    CURL_ERR: "0"
+  before_script:
+    - i=0; while [ "$i" -lt 60 ]; do docker info && break; sleep 1; i=$(( i + 1 )) ; done
+    - echo $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER $CI_REGISTRY --password-stdin
+  script:
+    - apk add --no-cache curl
+    - docker compose build
+    - docker compose up -d
+    - docker ps
+    - curl --retry-all-errors --retry 10 --retry-delay 1 -s -o /dev/null 0.0.0.0:3838 || CURL_ERR=1
+    - |
+      if [ ${CURL_ERR} == "1" ]; then
+        docker compose logs
+        exit 2
+      fi
+      # trying to create a log file
+    - docker exec $(basename $(pwd))-shiny-k8s-toolkit-1 touch /var/log/shiny-server/foo
+    - |
+      if [ -e logs/foo ]; then
+        echo "flag file created"
+      else
+        echo "cannot write in log dir with compose"
+        exit 3
+      fi
+
+
+
 .deploy:
   rules:
     - if: $CI_COMMIT_BRANCH != "base-common"
-- 
GitLab