Upgrading Python ================ * Increment version specifier in ``pyproject.toml`` * Update the source container version in ``./docker/Dockerfile.base`` * Rebuild base Docker image: ``docker build -f ./docker/Dockerfile.base -t ghcr.io/emfcamp/website-base:latest .`` * Rebuild base-dev Docker image: ``docker build -f ./docker/Dockerfile.base-dev -t ghcr.io/emfcamp/website-base-dev:latest .`` * ``docker compose up --build`` Now you can ``./run_tests`` and check if everything worked successfully. Deploying the update -------------------- This is a bit ugly due to the way we handle the base containers. * Commit and push your changes directly to ``main``. (Tests will fail in a PR.) * Cancel the ``deploy`` workflow build (or it'll just fail anyway) * Wait for the ``base`` workflow to finish building (takes a while) * Re-trigger the ``deploy`` workflow from the GitHub UI