From af599bbbd8fc1fb93ae527914732f340e1c22617 Mon Sep 17 00:00:00 2001 From: Martin Hoyer Date: Mon, 7 Oct 2024 14:30:43 +0200 Subject: [PATCH] Use pipx for hatch installation and cache its env --- .github/workflows/doc-tests.yml | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/.github/workflows/doc-tests.yml b/.github/workflows/doc-tests.yml index 8faa2fce12..d486090e6c 100644 --- a/.github/workflows/doc-tests.yml +++ b/.github/workflows/doc-tests.yml @@ -21,20 +21,32 @@ jobs: with: python-version: '3.x' cache: 'pip' + - name: Set PIPX_HOME + run: echo "PIPX_HOME=${{ github.workspace }}/.pipx" >> $GITHUB_ENV + + - name: Cache pipx environments + uses: actions/cache@v3 + with: + path: ${{ github.workspace }}/.pipx + # pipx is creating a cachedir.tag with unique + key: ${{ runner.os }}-pipx-${{ hashFiles('.cache/CACHEDIR.TAG') }} + restore-keys: | + ${{ runner.os }}-pipx- + + - name: Make sure latest hatch is installed + run: pipx upgrade hatch || pipx install hatch - name: Cache Hatch environments uses: actions/cache@v3 with: - path: .hatch_envs + path: ${{ github.workspace }}/.hatch_envs + # hatch envs are described in pyproject.toml key: ${{ runner.os }}-hatch-envs-${{ hashFiles('pyproject.toml') }} restore-keys: | ${{ runner.os }}-hatch-envs- - - name: Install hatch - run: pip install hatch - - name: Set HATCH_ENV_TYPE_VIRTUAL_PATH - run: echo "HATCH_ENV_TYPE_VIRTUAL_PATH=$(pwd)/.hatch_envs" >> $GITHUB_ENV + run: echo "HATCH_ENV_TYPE_VIRTUAL_PATH=${{ github.workspace }}/.hatch_envs" >> $GITHUB_ENV - name: Run sphinx html builder # -W = warnings as error