diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -158,12 +158,6 @@ image: postgres:12 env_file: - ./env/storage-db.env - environment: - # unset PGHOST as db service crashes otherwise - PGHOST: - # unset POSTGRES_DB: we're handling db creation ourselves in the backend - # service entrypoint - POSTGRES_DB: swh-storage: image: swh/stack @@ -176,7 +170,7 @@ - kafka env_file: - ./env/common_python.env - - ./env/storage-db.env + - ./env/storage.env environment: SWH_CONFIG_FILENAME: /storage.yml STORAGE_BACKEND: postgresql @@ -207,12 +201,6 @@ image: postgres:12 env_file: - ./env/indexers-db.env - environment: - # unset PGHOST as db service crashes otherwise - PGHOST: - # unset POSTGRES_DB: we're handling db creation ourselves in the backend - # service entrypoint - POSTGRES_DB: swh-idx-storage: image: swh/stack @@ -224,6 +212,7 @@ env_file: - ./env/common_python.env - ./env/indexers-db.env + - ./env/indexers.env environment: SWH_CONFIG_FILENAME: /indexer_storage.yml entrypoint: /entrypoint.sh @@ -256,9 +245,6 @@ image: postgres:12 env_file: - ./env/deposit-db.env - environment: - # unset PGHOST as db service crashes otherwise - PGHOST: swh-deposit: image: swh/stack @@ -271,6 +257,7 @@ env_file: - ./env/common_python.env - ./env/deposit-db.env + - ./env/deposit.env environment: VERBOSITY: 3 SWH_CONFIG_FILENAME: /deposit.yml @@ -284,12 +271,6 @@ image: postgres:12 env_file: - ./env/vault-db.env - environment: - # unset PGHOST as db service crashes otherwise - PGHOST: - # unset POSTGRES_DB: we're handling db creation ourselves in the backend - # service entrypoint - POSTGRES_DB: swh-vault: image: swh/stack @@ -297,6 +278,7 @@ env_file: - ./env/common_python.env - ./env/vault-db.env + - ./env/vault.env environment: SWH_CONFIG_FILENAME: /vault.yml command: server @@ -336,9 +318,6 @@ image: postgres:12 env_file: - ./env/listers-db.env - environment: - # unset PGHOST as db service crashes otherwise - PGHOST: swh-lister: image: swh/stack @@ -346,6 +325,7 @@ env_file: - ./env/common_python.env - ./env/listers-db.env + - ./env/listers.env - ./env/workers.env user: swh environment: @@ -393,6 +373,7 @@ env_file: - ./env/common_python.env - ./env/indexers-db.env + - ./env/indexers.env - ./env/workers.env environment: SWH_WORKER_INSTANCE: indexer diff --git a/docker/env/deposit-db.env b/docker/env/deposit-db.env --- a/docker/env/deposit-db.env +++ b/docker/env/deposit-db.env @@ -1,5 +1,2 @@ -PGHOST=swh-deposit-db -PGUSER=postgres POSTGRES_PASSWORD=testpassword POSTGRES_DB=swh-deposit - diff --git a/docker/env/deposit.env b/docker/env/deposit.env new file mode 100644 --- /dev/null +++ b/docker/env/deposit.env @@ -0,0 +1,2 @@ +PGHOST=swh-deposit-db +PGUSER=postgres diff --git a/docker/env/indexers-db.env b/docker/env/indexers-db.env --- a/docker/env/indexers-db.env +++ b/docker/env/indexers-db.env @@ -1,4 +1,2 @@ -PGHOST=swh-idx-storage-db -PGUSER=postgres POSTGRES_PASSWORD=testpassword -POSTGRES_DB=swh-indexers \ No newline at end of file +POSTGRES_DB=swh-indexers diff --git a/docker/env/indexers.env b/docker/env/indexers.env new file mode 100644 --- /dev/null +++ b/docker/env/indexers.env @@ -0,0 +1,2 @@ +PGHOST=swh-idx-storage-db +PGUSER=postgres diff --git a/docker/env/listers-db.env b/docker/env/listers-db.env --- a/docker/env/listers-db.env +++ b/docker/env/listers-db.env @@ -1,4 +1,2 @@ -PGHOST=swh-listers-db -PGUSER=postgres POSTGRES_PASSWORD=testpassword POSTGRES_DB=swh-listers diff --git a/docker/env/listers.env b/docker/env/listers.env new file mode 100644 --- /dev/null +++ b/docker/env/listers.env @@ -0,0 +1,2 @@ +PGHOST=swh-listers-db +PGUSER=postgres diff --git a/docker/env/scheduler-db.env b/docker/env/scheduler-db.env --- a/docker/env/scheduler-db.env +++ b/docker/env/scheduler-db.env @@ -1,3 +1,2 @@ -PGUSER=postgres POSTGRES_PASSWORD=testpassword POSTGRES_DB=swh-scheduler diff --git a/docker/env/scheduler.env b/docker/env/scheduler.env --- a/docker/env/scheduler.env +++ b/docker/env/scheduler.env @@ -1,4 +1,6 @@ PGHOST=swh-scheduler-db +PGUSER=postgres + SWH_WORKER_INSTANCE=scheduler LOGLEVEL=INFO CELERY_BROKER_URL=amqp://amqp// diff --git a/docker/env/storage-db.env b/docker/env/storage-db.env --- a/docker/env/storage-db.env +++ b/docker/env/storage-db.env @@ -1,6 +1,4 @@ # Please sync changes in storage-read-replica-db.env -PGHOST=swh-storage-db -PGUSER=postgres POSTGRES_PASSWORD=testpassword POSTGRES_DB=swh-storage diff --git a/docker/env/storage.env b/docker/env/storage.env --- a/docker/env/storage.env +++ b/docker/env/storage.env @@ -1,5 +1,7 @@ -POSTGRES_PASSWORD=testpassword -POSTGRES_DB=swh-storage PGHOST=swh-storage-db PGUSER=postgres -SWH_CONFIG_FILENAME=/storage.yml \ No newline at end of file + +POSTGRES_PASSWORD=testpassword +POSTGRES_DB=swh-storage + +SWH_CONFIG_FILENAME=/storage.yml diff --git a/docker/env/vault-db.env b/docker/env/vault-db.env --- a/docker/env/vault-db.env +++ b/docker/env/vault-db.env @@ -1,4 +1,2 @@ POSTGRES_DB=swh-vault POSTGRES_PASSWORD=testpassword -PGUSER=postgres -PGHOST=swh-vault-db diff --git a/docker/env/vault.env b/docker/env/vault.env --- a/docker/env/vault.env +++ b/docker/env/vault.env @@ -1,4 +1,2 @@ -POSTGRES_DB=swh-vault -POSTGRES_PASSWORD=testpassword PGUSER=postgres PGHOST=swh-vault-db diff --git a/docker/services/swh-indexer-storage/entrypoint.sh b/docker/services/swh-indexer-storage/entrypoint.sh --- a/docker/services/swh-indexer-storage/entrypoint.sh +++ b/docker/services/swh-indexer-storage/entrypoint.sh @@ -14,13 +14,12 @@ ;; *) - wait_pgsql template1 + wait_pgsql ${POSTGRES_DB} echo Database setup - if ! check_pgsql_db_created; then - echo Creating database and extensions... - swh db create --db-name ${POSTGRES_DB} indexer - fi + echo Creating extensions... + swh db init-admin --db-name ${POSTGRES_DB} indexer + echo Initializing the database... swh db init --db-name ${POSTGRES_DB} indexer diff --git a/docker/services/swh-listers-worker/entrypoint.sh b/docker/services/swh-listers-worker/entrypoint.sh --- a/docker/services/swh-listers-worker/entrypoint.sh +++ b/docker/services/swh-listers-worker/entrypoint.sh @@ -13,15 +13,9 @@ exec bash -i ;; *) - wait_pgsql + wait_pgsql ${POSTGRES_DB} echo Setup ${POSTGRES_DB} database for ${SWH_WORKER_INSTANCE} - if psql -lqt | cut -d \| -f 1 | grep -qw ${POSTGRES_DB}; then - echo Database already exists, nothing to do - else - echo Creating database - createdb ${POSTGRES_DB} - fi echo Initialize database swh lister -C ${SWH_CONFIG_FILENAME} db-init diff --git a/docker/services/swh-storage/entrypoint.sh b/docker/services/swh-storage/entrypoint.sh --- a/docker/services/swh-storage/entrypoint.sh +++ b/docker/services/swh-storage/entrypoint.sh @@ -26,13 +26,13 @@ ;; *) if [ "$STORAGE_BACKEND" = "postgresql" ]; then - wait_pgsql template1 + wait_pgsql ${POSTGRES_DB} echo Database setup - if ! check_pgsql_db_created; then - echo Creating database and extensions... - swh db create --db-name ${POSTGRES_DB} storage - fi + + echo Creating extensions... + swh db init-admin --db-name ${POSTGRES_DB} storage + echo Initializing the database... swh db init --db-name ${POSTGRES_DB} storage fi diff --git a/docker/services/swh-vault/entrypoint.sh b/docker/services/swh-vault/entrypoint.sh --- a/docker/services/swh-vault/entrypoint.sh +++ b/docker/services/swh-vault/entrypoint.sh @@ -27,13 +27,13 @@ # ensure the pathslicing root dir for the cache exists mkdir -p /srv/softwareheritage/vault - wait_pgsql template1 + wait_pgsql ${POSTGRES_DB} echo swh-vault Database setup - if ! check_pgsql_db_created; then - echo Creating database and extensions... - swh db create --db-name ${POSTGRES_DB} vault - fi + + echo Creating extensions... + swh db init-admin --db-name ${POSTGRES_DB} vault + echo Initializing the database... swh db init --db-name ${POSTGRES_DB} vault