Compare commits

...
Author SHA1 Message Date
notplants 3a9e85a114 bump to 0.6.0+v0.12.0 2026-02-18 14:38:22 +00:00
notplants f114ed0bab bump to 0.5.0+v0.12.0 2026-02-18 13:54:20 +00:00
5 changed files with 31 additions and 34 deletions
+9
View File
@@ -65,3 +65,12 @@ OIDC_AUTH_REQUEST_EXTRA_PARAMS='{"acr_values": "eidas1"}'
LOGGING_LEVEL_HANDLERS_CONSOLE=INFO LOGGING_LEVEL_HANDLERS_CONSOLE=INFO
LOGGING_LEVEL_LOGGERS_ROOT=INFO LOGGING_LEVEL_LOGGERS_ROOT=INFO
LOGGING_LEVEL_LOGGERS_APP=INFO LOGGING_LEVEL_LOGGERS_APP=INFO
##############################################################################
# WOPI SCHEDULING
##############################################################################
# Celery Beat crontab for the WOPI configuration task (default: daily at 3:00 AM)
#WOPI_CONFIGURATION_CRONTAB_MINUTE=0
#WOPI_CONFIGURATION_CRONTAB_HOUR=3
#WOPI_CONFIGURATION_CRONTAB_DAY_OF_MONTH=*
#WOPI_CONFIGURATION_CRONTAB_MONTH_OF_YEAR=*
+7
View File
@@ -11,5 +11,12 @@ set -e
# if not in "env" mode, then execute the original entrypoint and command # if not in "env" mode, then execute the original entrypoint and command
if [ ! "$1" = "-e" ]; then if [ ! "$1" = "-e" ]; then
# Run WOPI configuration on startup if enabled (celery worker service only).
# This ensures WOPI clients are configured immediately after each deploy,
# rather than waiting for the next celery-beat cron tick (default: 3 AM).
if [ "${RUN_WOPI_ON_STARTUP:-}" = "true" ]; then
echo "🐳(entrypoint) running WOPI configuration on startup..."
python manage.py trigger_wopi_configuration || echo "⚠ WOPI configuration failed (non-fatal, will retry on schedule)"
fi
exec "$@" exec "$@"
fi fi
+1 -2
View File
@@ -1,10 +1,9 @@
# Set any config versions here # Set any config versions here
# Docs: https://docs.coopcloud.tech/maintainers/handbook/#manage-configs # Docs: https://docs.coopcloud.tech/maintainers/handbook/#manage-configs
export ABRA_ENTRYPOINT_VERSION=v5 export ABRA_ENTRYPOINT_VERSION=v7
export NGINX_CONF_VERSION=v6 export NGINX_CONF_VERSION=v6
export ONLYOFFICE_CONF_VERSION=v2 export ONLYOFFICE_CONF_VERSION=v2
export PG_BACKUP_VERSION=v3 export PG_BACKUP_VERSION=v3
export SCHEDULE_WOPI_VERSION=v1
environment() { environment() {
# this exports all the secrets as environment variables # this exports all the secrets as environment variables
+14 -19
View File
@@ -66,6 +66,11 @@ x-common-env: &common-env
WOPI_COLLABORA_DISCOVERY_URL: "https://${COLLABORA_DOMAIN}/hosting/discovery" WOPI_COLLABORA_DISCOVERY_URL: "https://${COLLABORA_DOMAIN}/hosting/discovery"
WOPI_ONLYOFFICE_DISCOVERY_URL: "https://${ONLY_OFFICE_DOMAIN}/hosting/discovery" WOPI_ONLYOFFICE_DISCOVERY_URL: "https://${ONLY_OFFICE_DOMAIN}/hosting/discovery"
WOPI_SRC_BASE_URL: "https://${DOMAIN}" WOPI_SRC_BASE_URL: "https://${DOMAIN}"
# WOPI scheduling (Celery Beat crontab for WOPI configuration task)
WOPI_CONFIGURATION_CRONTAB_MINUTE: ${WOPI_CONFIGURATION_CRONTAB_MINUTE:-0}
WOPI_CONFIGURATION_CRONTAB_HOUR: ${WOPI_CONFIGURATION_CRONTAB_HOUR:-3}
WOPI_CONFIGURATION_CRONTAB_DAY_OF_MONTH: ${WOPI_CONFIGURATION_CRONTAB_DAY_OF_MONTH:-*}
WOPI_CONFIGURATION_CRONTAB_MONTH_OF_YEAR: ${WOPI_CONFIGURATION_CRONTAB_MONTH_OF_YEAR:-*}
x-postgres-env: &postgres-env x-postgres-env: &postgres-env
# Postgresql db container configuration # Postgresql db container configuration
@@ -94,7 +99,7 @@ services:
labels: labels:
- "traefik.enable=false" - "traefik.enable=false"
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}" - "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
- "coop-cloud.${STACK_NAME}.version=0.4.0+v0.12.0" - "coop-cloud.${STACK_NAME}.version=0.6.0+v0.12.0"
environment: environment:
<<: [ *common-env ] <<: [ *common-env ]
healthcheck: healthcheck:
@@ -130,26 +135,20 @@ services:
- postgres_p - postgres_p
- email_pass - email_pass
# this may be unecessary once the PR is merged to use celery beat celery:
# but this is a workaround for now https://github.com/suitenumerique/drive/issues/484
scheduler:
image: lasuite/drive-backend:v0.12.0
user: ${DOCKER_USER:-1000} user: ${DOCKER_USER:-1000}
image: lasuite/drive-backend:v0.12.0
networks: networks:
- backend - backend
depends_on: command: [ "celery", "-A", "drive.celery_app", "worker", "-l", "INFO" ]
- db entrypoint: ["/abra-entrypoint.sh", "/usr/local/bin/entrypoint"]
- redis
environment: environment:
<<: [ *common-env, *postgres-env ] <<: [*common-env, *postgres-env]
RUN_WOPI_ON_STARTUP: "true"
configs: configs:
- source: schedule_wopi
target: /app/schedule_wopi.sh
mode: 0755
- source: abra_entrypoint - source: abra_entrypoint
target: /abra-entrypoint.sh target: /abra-entrypoint.sh
mode: 0555 mode: 0555
entrypoint: ["/app/schedule_wopi.sh"]
secrets: secrets:
- django_sk - django_sk
- django_sp - django_sp
@@ -158,12 +157,12 @@ services:
- postgres_p - postgres_p
- email_pass - email_pass
celery: celery-beat:
user: ${DOCKER_USER:-1000} user: ${DOCKER_USER:-1000}
image: lasuite/drive-backend:v0.12.0 image: lasuite/drive-backend:v0.12.0
networks: networks:
- backend - backend
command: [ "celery", "-A", "drive.celery_app", "worker", "-l", "INFO" ] command: [ "celery", "-A", "drive.celery_app", "beat", "-l", "INFO", "--schedule", "/tmp/celerybeat-schedule" ]
entrypoint: ["/abra-entrypoint.sh", "/usr/local/bin/entrypoint"] entrypoint: ["/abra-entrypoint.sh", "/usr/local/bin/entrypoint"]
environment: environment:
<<: [*common-env, *postgres-env] <<: [*common-env, *postgres-env]
@@ -389,10 +388,6 @@ configs:
pg_backup: pg_backup:
name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION} name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION}
file: pg_backup.sh file: pg_backup.sh
schedule_wopi:
name: ${STACK_NAME}_schedule_wopi_${SCHEDULE_WOPI_VERSION}
file: schedule_wopi.sh
template_driver: golang
abra_entrypoint: abra_entrypoint:
name: ${STACK_NAME}_entrypoint_${ABRA_ENTRYPOINT_VERSION} name: ${STACK_NAME}_entrypoint_${ABRA_ENTRYPOINT_VERSION}
file: abra-entrypoint.sh file: abra-entrypoint.sh
-13
View File
@@ -1,13 +0,0 @@
#!/bin/sh
set -e
while true; do
echo "Running WOPI job at $(date)"
# source env
. /abra-entrypoint.sh -e
# run python command
python manage.py trigger_wopi_configuration
echo "++ completed wopi trigger. now sleeping."
# wait before next run
sleep 1800 # 1800 seconds = 30 minutes
done