Configuration for Django's Trac instance (code.djangoproject.com)
License
django/code.djangoproject.com
main
Code
- Clone
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI.Learn more.
- Open with GitHub Desktop
- Download ZIP
Launching GitHub Desktop
If nothing happens,download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens,download GitHub Desktop and try again.
Launching Xcode
If nothing happens,download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Configuration for Django's Trac instance (code.djangoproject.com)
Local install
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
tracd --port 9000 -s trac-env
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.
Using Docker
Install Docker
pip install docker-compose
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 /venv/bin/trac-admin /code/trac-env/ permission add anonymous TRAC_ADMIN
Using Podman
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).
How to port the CSS from djangoproject.com
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
How to recreate trac.sql after upgrading Trac
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)