Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ The nginx config (`nginx.conf.build.sh`) serves parkour2's split frontend/backen

Clones the branch/tag named by `BUILD_parkour2` (e.g. `parkour2-develop` → branch `develop`, `parkour2-26.07.16` → tag `26.07.16`) into `${BUILD_DIR}`, caching a `.tar` there to speed up the initial clone on future full rebuilds. That local `.tar`/directory is only a seed for the first clone into `${PROJECT}/${BUILD_parkour2}` - once that checkout exists, its `origin` remote is pointed at the real `https://github.com/maxplanck-ie/parkour2.git` (not the local cache) and `git pull origin <branch>` is run on every build, so a branch pin like `develop` actually tracks new upstream commits instead of freezing at whatever the cache had. Installs Python deps via `uv pip install --system` using the compiled requirements file matching the running Python minor version (`backend/requirements/<major.minor>/base.txt`). Builds the Vue3 frontend with `npm run build`. Generates `backend/.env` (secret key, database URL, CSRF trusted origin) and runs `manage.py collectstatic`.

**Version pin (`build.profile`'s `BUILD_parkour2`) currently tracks `develop`, not a release tag** - deliberate, to get bug fixes (e.g. maxplanck-ie/parkour2#310) before they're cut into a tagged release. This means every `buildall.sh` run can pull in new upstream commits, unlike the immutable-by-design tag pins used for the other components. Switch back to a tag (`parkour2-<tag>`) once a release incorporating the needed fixes exists, for reproducibility.
**Version pin (`build.profile`'s `BUILD_parkour2`) is the release tag `parkour2-26.10.05`.** It tracked `develop` from 26.07 until 26.10.05 to pick up fixes (e.g. maxplanck-ie/parkour2#310) before they were released. With a tag pin, `git pull origin <tag>` on each build is a no-op, so rebuilds are reproducible. Upstream tags are not strictly immutable, though: `26.10.05` was re-pointed from `5abec953` to `073d4b6b` (adding a CHANGELOG-only commit) on release day, so check `git ls-remote --tags` when an exact commit matters. Changing `BUILD_parkour2` also changes the checkout directory (`${PROJECT}/${BUILD_parkour2}`), and with it the paths in the regenerated `startstop.sh`, `nginx.conf` and `profile`. The running services keep using the old checkout until they're restarted. Also, `develop` can rewrite already-applied migrations (it did in September 2026), so after any upgrade compare `pg_dump --schema-only` against a from-scratch `migrate`.

### `backend/media` persistence across releases

Expand Down
2 changes: 1 addition & 1 deletion build.profile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
BUILD_TAG=26.10.05

BUILD_parkour2=parkour2-develop
BUILD_parkour2=parkour2-26.10.05

BUILD_DIR=build

Expand Down