summaryrefslogtreecommitdiff
path: root/.docker/app
diff options
context:
space:
mode:
authorAndrew Dolgov <fox@fakecake.org>2024-10-24 11:08:20 +0300
committerAndrew Dolgov <fox@fakecake.org>2024-10-24 11:08:20 +0300
commitdba6a39d2a34b9e2368b5da566ae24f1a10d5e5d (patch)
tree7078ae39f94d8719f4c5e8fb5ef31a41be63278d /.docker/app
parent9f0eb4d7fca748bae3e3fc6f9714ca83d169cc64 (diff)
drop RESTORE_SCHEMA, add simple mechanism to apply SQL patch files after migrations
Diffstat (limited to '.docker/app')
-rw-r--r--.docker/app/Dockerfile2
-rw-r--r--.docker/app/startup.sh12
2 files changed, 6 insertions, 8 deletions
diff --git a/.docker/app/Dockerfile b/.docker/app/Dockerfile
index eb1af1ba9..b8bb7598f 100644
--- a/.docker/app/Dockerfile
+++ b/.docker/app/Dockerfile
@@ -25,7 +25,7 @@ RUN [ ! -z ${ALPINE_MIRROR} ] && \
-e 's/;\(php_admin_value\[error_log\]\) = .*/\1 = \/tmp\/error.log/' \
-e 's/;\(php_admin_flag\[log_errors\]\) = .*/\1 = on/' \
/etc/php83/php-fpm.d/www.conf && \
- mkdir -p /var/www ${SCRIPT_ROOT}/config.d
+ mkdir -p /var/www ${SCRIPT_ROOT}/config.d ${SCRIPT_ROOT}/sql/post-up.d
ARG CI_COMMIT_BRANCH
ENV CI_COMMIT_BRANCH=${CI_COMMIT_BRANCH}
diff --git a/.docker/app/startup.sh b/.docker/app/startup.sh
index dd21d4ef1..2669310b2 100644
--- a/.docker/app/startup.sh
+++ b/.docker/app/startup.sh
@@ -88,13 +88,6 @@ PSQL="psql -q -h $TTRSS_DB_HOST -p $TTRSS_DB_PORT -U $TTRSS_DB_USER $TTRSS_DB_NA
$PSQL -c "create extension if not exists pg_trgm"
-RESTORE_SCHEMA=${SCRIPT_ROOT}/restore-schema.sql.gz
-
-if [ -r $RESTORE_SCHEMA ]; then
- $PSQL -c "drop schema public cascade; create schema public;"
- zcat $RESTORE_SCHEMA | $PSQL
-fi
-
# this was previously generated
rm -f $DST_DIR/config.php.bak
@@ -121,6 +114,11 @@ sed -i.bak "s/^\(pm.max_children\) = \(.*\)/\1 = ${PHP_WORKER_MAX_CHILDREN}/" \
sudo -Eu app php83 $DST_DIR/update.php --update-schema=force-yes
+find ${SCRIPT_ROOT}/sql/post-up.d/ -type f -name '*.sql' | while read F; do
+ echo applying SQL patch file: $F
+ $PSQL -f $F
+done
+
if [ ! -z "$ADMIN_USER_PASS" ]; then
sudo -Eu app php83 $DST_DIR/update.php --user-set-password "admin:$ADMIN_USER_PASS"
else