- Notifications
You must be signed in to change notification settings - Fork55
Configuration for Django's Trac instance (code.djangoproject.com)
License
django/code.djangoproject.com
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Getting a local Trac install running is a bit tricky. Here are a few tricksthat can help:
- Follow the installation instructions in djangoproject/README.rst (especiallythe database creation).
- Use
trac-admin ./trac-env/ permission add anonymous TRAC_ADMIN
to give all permissions to the anonymous user. - Use the command
DJANGO_SETTINGS_MODULE=tracdjangoplugin.settings TRAC_ENV=`pwd`/trac-env gunicorn tracdjangoplugin.wsgi:application --bind 0.0.0.0:9000 --workers=1 --reload
to serve Trac locally. - If you've modified the
trackhack.scss
file, usesassc scss/trachacks.scss trac-env/htdocs/css/trachacks.css -s compressed
to compile it to CSS.
Install Docker
Create a
secrets.json
file at the root of the repository (next to Dockerfile), containingsomething like:{ "secret_key": "xyz", "db_host": "localhost", "db_password": "secret"}
docker compose up --build
Follow instructions above to create/load the DB, grant permissions, create theconfig, etc. For example:
docker compose up --buildexport DATABASE_URL=postgres://code.djangoproject:secret@db/code.djangoprojectdocker compose exec -T db psql $DATABASE_URL < ../djangoproject.com/tracdb/trac.sqldocker compose exec trac trac-admin /code/trac-env/ permission add anonymous TRAC_ADMIN
It may be possible to use Podman for local development to more closely simulateproduction. The above Docker instructions should work for Podman as well,however, be aware thatpodman-compose
is not as well battle-tested asdocker compose
(e.g., it may require pruning or forcefully stopping acontainer before it will rebuild properly).
Assumes that code.djangoproject.com and djangoproject.com are stored in thesame directory (adjust paths if needed).
- Copy the generated CSS:
cp ../djangoproject.com/static/css/*.css trac-env/htdocs/css/
- Copy _utils.scss (needed by trackahacks.scss):
cp ../djangoproject.com/static/scss/_utils.scss scss/
- Copy the javascript directory:
cp -rT ../djangoproject.com/static/js trac-env/htdocs/js
- Compile trackhacks.scss:
make compile-scss
Start with a clean slate:
docker compose downsh -c 'cd ../djangoproject.com && git checkout tracdb/trac.sql'
Bring up database and Trac via docker compose:
docker compose up --build -dexport DATABASE_URL=postgres://code.djangoproject:secret@db/code.djangoprojectdocker compose exec -T db psql $DATABASE_URL < ../djangoproject.com/tracdb/trac.sqldocker compose exec trac /venv/bin/trac-admin /code/trac-env/ upgradedocker compose exec db pg_dump --column-inserts -d $DATABASE_URL > ../djangoproject.com/tracdb/trac.sql
Note:
- There's no need to run the
trac-admin ... wiki upgrade
command - Be careful with changes that
trac-admin ... upgrade
makes totrac.ini
. We usually don't want them. - Review the diff carefully to make sure no unexpected database changesare inadvertently included.
About
Configuration for Django's Trac instance (code.djangoproject.com)
Resources
License
Code of conduct
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.