From 61eedcc52f3e9828bc58d89f08242e11b51e615f Mon Sep 17 00:00:00 2001 From: Eric Sherman Date: Fri, 12 Sep 2025 14:19:44 -0500 Subject: [PATCH 1/5] Update pgpassword value for tracdb to match Author: Eric Sherman Date: Fri Sep 12 13:12:59 2025 -0500 --- docker-entrypoint.dev.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-entrypoint.dev.sh b/docker-entrypoint.dev.sh index 11a38190b0..a15a7149b8 100755 --- a/docker-entrypoint.dev.sh +++ b/docker-entrypoint.dev.sh @@ -1,7 +1,7 @@ #!/bin/sh python -m manage flush --no-input -# PGPASSWORD=djangoproject psql --host db --port 5432 --username=code.djangoproject --dbname=code.djangoproject < tracdb/trac.sql +PGPASSWORD=secret psql --host db --port 5432 --username=code.djangoproject --dbname=code.djangoproject < tracdb/trac.sql python -m manage migrate make compile-scss # must come before collectstatic python -m manage collectstatic --no-input --clear From 7061ba71427cbbaaefcb7f65db350e70bb3232f7 Mon Sep 17 00:00:00 2001 From: Eric Sherman Date: Fri, 12 Sep 2025 13:14:35 -0500 Subject: [PATCH 2/5] Use docker-entrypoint-initdb to create tac db so it exists Without the database and expected user already existing, running tests via docker compose will fail to connect to the database to run the script --- docker-compose.yml | 2 ++ initdb/tracdb.sql | 3 +++ 2 files changed, 5 insertions(+) create mode 100644 initdb/tracdb.sql diff --git a/docker-compose.yml b/docker-compose.yml index fc7524f289..2ba9a382d2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -35,3 +35,5 @@ services: interval: 1s timeout: 10s retries: 10 + volumes: + - ./initdb/tracdb.sql:/docker-entrypoint-initdb.d/tracdb.sql diff --git a/initdb/tracdb.sql b/initdb/tracdb.sql new file mode 100644 index 0000000000..28ce982fd0 --- /dev/null +++ b/initdb/tracdb.sql @@ -0,0 +1,3 @@ +-- Legacy Trac DB +CREATE USER "code.djangoproject" WITH PASSWORD 'secret' CREATEDB; +CREATE DATABASE "code.djangoproject" OWNER "code.djangoproject"; From ff916bcf31f50c71b8d779a7217b7025d1454f7d Mon Sep 17 00:00:00 2001 From: Eric Sherman Date: Fri, 12 Sep 2025 13:16:09 -0500 Subject: [PATCH 3/5] Map tracdb specific values to config and compose.yml This could probably be refactored, but is needed so that tests and other code that use the tracsb have expected credentials needed inside the container --- djangoproject/settings/docker.py | 9 +++++++++ docker-compose.yml | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/djangoproject/settings/docker.py b/djangoproject/settings/docker.py index 917b818e1a..07f8f60210 100644 --- a/djangoproject/settings/docker.py +++ b/djangoproject/settings/docker.py @@ -10,6 +10,15 @@ "PORT": os.environ.get("SQL_PORT"), } } +# Trac connection +DATABASES["trac"] = { + "ENGINE": "django.db.backends.postgresql", + "NAME": os.environ.get("TRAC_DATABASE", "code.djangoproject"), + "USER": os.environ.get("TRAC_USER", "code.djangoproject"), + "PASSWORD": os.environ.get("TRAC_PASSWORD", ""), + "HOST": os.environ.get("TRAC_HOST", "db"), + "PORT": os.environ.get("TRAC_PORT", "5432"), +} SECRET_KEY = os.environ.get("SECRET_KEY") diff --git a/docker-compose.yml b/docker-compose.yml index 2ba9a382d2..ce0be0d923 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,6 +21,12 @@ services: - SQL_PASSWORD=secret - SQL_HOST=db - SQL_PORT=5432 + - TRAC_DATABASE=code.djangoproject + - TRAC_USER=code.djangoproject + - TRAC_PASSWORD=secret + - TRAC_HOST=db + - TRAC_PORT=5432 + depends_on: db: condition: service_healthy From 541c4cd38c77d13d879822c31db27673271a9861 Mon Sep 17 00:00:00 2001 From: Eric Sherman Date: Fri, 12 Sep 2025 13:16:40 -0500 Subject: [PATCH 4/5] Update expected PARENT_HOST value This helps tests pass which would fail otherwise (maybe just locally, on docker) --- djangoproject/settings/docker.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/djangoproject/settings/docker.py b/djangoproject/settings/docker.py index 07f8f60210..35216e40c6 100644 --- a/djangoproject/settings/docker.py +++ b/djangoproject/settings/docker.py @@ -10,6 +10,7 @@ "PORT": os.environ.get("SQL_PORT"), } } + # Trac connection DATABASES["trac"] = { "ENGINE": "django.db.backends.postgresql", @@ -27,4 +28,4 @@ LOCALE_MIDDLEWARE_EXCLUDED_HOSTS = ["docs.djangoproject.localhost"] # django-hosts settings -PARENT_HOST = "localhost:8000" +PARENT_HOST = "djangoproject.localhost:8000" From 8284a2c7bd48826d1054df2c59c00a643de998fd Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Fri, 12 Sep 2025 19:22:57 +0000 Subject: [PATCH 5/5] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index ce0be0d923..48fce609b4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -42,4 +42,4 @@ services: timeout: 10s retries: 10 volumes: - - ./initdb/tracdb.sql:/docker-entrypoint-initdb.d/tracdb.sql + - ./initdb/tracdb.sql:/docker-entrypoint-initdb.d/tracdb.sql