name: "Setup project" description: "Setup Python and Poetry" runs: using: composite steps: - name: Install apt packages uses: awalsh128/cache-apt-pkgs-action@latest with: packages: gettext version: 1.0 # increment to reset cache - name: Install uv uses: astral-sh/setup-uv@v5 with: version: "0.5.14" enable-cache: true cache-dependency-glob: "uv.lock" - name: "Set up Python" uses: actions/setup-python@v5 with: python-version-file: ".python-version" - name: Restore cached virtualenv uses: actions/cache/restore@v4 with: key: venv-${{ runner.os }}-${{ hashFiles('.python-version') }}-${{ hashFiles('pyproject.toml') }}-${{ env.CACHE_SUFFIX }} path: .venv - name: Install dependencies run: uv sync shell: bash - name: Install Xapian run: uv run ./manage.py install_xapian shell: bash - name: Save cached virtualenv uses: actions/cache/save@v4 with: key: venv-${{ runner.os }}-${{ hashFiles('.python-version') }}-${{ hashFiles('pyproject.toml') }}-${{ env.CACHE_SUFFIX }} path: .venv - name: Compile gettext messages run: uv run ./manage.py compilemessages shell: bash