diff --git a/Makefile b/Makefile index 0b3bb613..64bb9792 100644 --- a/Makefile +++ b/Makefile @@ -185,7 +185,8 @@ permissions: certs prometheus.dev.yml \ settings.conf \ tests/config/registries/seek/nginx.conf \ - tests/config/registries/seek/doorkeeper.rb + tests/config/registries/seek/doorkeeper.rb \ + && mkdir -p /tmp/lifemonitor-logs aux_images: tests/config/registries/seek/seek.Dockerfile certs @@ -223,7 +224,8 @@ start-dev: images compose-files dev reset_compose permissions ## Start LifeMonit start-testing: compose-files aux_images ro_crates images reset_compose permissions ## Start LifeMonitor in a Testing environment @printf "\n$(bold)Starting testing services...$(reset)\n" ; \ base=$$(if [[ -f "docker-compose.yml" ]]; then echo "-f docker-compose.yml"; fi) ; \ - echo "$$($(docker_compose) $${base} \ + echo "$$(USER_UID=$$(id -u) USER_GID=$$(id -g) \ + $(docker_compose) $${base} \ -f docker-compose.extra.yml \ -f docker-compose.base.yml \ -f docker-compose.monitoring.yml \ diff --git a/docker-compose.base.yml b/docker-compose.base.yml index ee0d60d0..5e682008 100644 --- a/docker-compose.base.yml +++ b/docker-compose.base.yml @@ -1,5 +1,3 @@ -version: "3.5" - services: db: # Docker image docs: https://github.com/bitnami/bitnami-docker-postgresql @@ -65,6 +63,7 @@ services: - "./instance:/lm/instance:ro" - "./settings.conf:/lm/settings.conf:ro" # default settings - "data_workflows:/var/data/lm" + - "/tmp/lifemonitor-logs:/var/log/lm" networks: - life_monitor diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index df1310b3..1c880321 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -1,5 +1,3 @@ -version: "3.5" - services: db: environment: diff --git a/docker-compose.extra.yml b/docker-compose.extra.yml index 4cd89b6c..2a6c5530 100644 --- a/docker-compose.extra.yml +++ b/docker-compose.extra.yml @@ -1,5 +1,3 @@ -version: "3.5" - services: seek: image: crs4/lifemonitor-tests:seek diff --git a/docker-compose.maintenance.yml b/docker-compose.maintenance.yml new file mode 100644 index 00000000..17646c29 --- /dev/null +++ b/docker-compose.maintenance.yml @@ -0,0 +1,61 @@ +services: + db: + environment: + - "ALLOW_EMPTY_PASSWORD=yes" + + console: + image: crs4/lifemonitor + restart: "unless-stopped" + depends_on: + - "db" + - "init" + - "redis" + entrypoint: /bin/bash + command: | + -c "sleep infinity" + user: "${USER_UID}:${USER_GID}" + env_file: + - settings.conf + environment: + - "FLASK_ENV=development" + - "TEMPLATES_AUTO_RELOAD=True" + - "HOME=/lm" + # Normally, OAuthLib will raise an InsecureTransportError if you attempt to use OAuth2 over HTTP, + # rather than HTTPS. Setting this environment variable will prevent this error from being raised. + # This is mostly useful for local testing, or automated tests. Never set this variable in production. + - "AUTHLIB_INSECURE_TRANSPORT=1" + # - "SERVER_NAME=lm:8000" + volumes: + - "./certs:/certs:ro" + - "./instance:/lm/instance:ro" + - "./settings.conf:/lm/settings.conf:ro" # default settings + - "./:/lm" + - "data_workflows:/var/data/lm" + ports: + - "8000" + networks: + - life_monitor + + init: + user: "${USER_UID}:${USER_GID}" + environment: + - "FLASK_ENV=development" + # Normally, OAuthLib will raise an InsecureTransportError if you attempt to use OAuth2 over HTTP, + # rather than HTTPS. Setting this environment variable will prevent this error from being raised. + # This is mostly useful for local testing, or automated tests. Never set this variable in production. + - "AUTHLIB_INSECURE_TRANSPORT=1" + - "HOME=/lm" + volumes: + - "./:/lm" + + lm: + environment: + - "FLASK_ENV=maintenance" + + ws_server: + environment: + - "FLASK_ENV=maintenance" + + worker: + environment: + - "FLASK_ENV=maintenance" diff --git a/docker-compose.monitoring.yml b/docker-compose.monitoring.yml index 2e17806e..56983999 100644 --- a/docker-compose.monitoring.yml +++ b/docker-compose.monitoring.yml @@ -1,5 +1,3 @@ -version: "3.5" - services: prometheus: image: prom/prometheus:v2.48.0 diff --git a/docker-compose.test.yml b/docker-compose.test.yml index c2fe73b1..2389352b 100644 --- a/docker-compose.test.yml +++ b/docker-compose.test.yml @@ -1,5 +1,3 @@ -version: "3.5" - services: lmtests: image: crs4/lifemonitor @@ -34,6 +32,7 @@ services: - "./certs:/certs:ro" - "./instance:/lm/instance:ro" - "./settings.conf:/lm/settings.conf:ro" # default settings + - "/tmp/lifemonitor-logs:/var/log/lm" ports: - "8000" networks: