diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index e1b6ccf..cce3781 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -25,6 +25,11 @@ jobs: test: runs-on: go steps: + - name: Disable apt auto-clean (preserve cache for actions/cache) + run: | + rm -f /etc/apt/apt.conf.d/docker-clean + echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache + - name: Install Node (required by actions/cache) run: | apt-get update >/dev/null @@ -61,6 +66,11 @@ jobs: runs-on: go needs: test steps: + - name: Disable apt auto-clean (preserve cache for actions/cache) + run: | + rm -f /etc/apt/apt.conf.d/docker-clean + echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache + - name: Install Node (required by actions/cache) run: | apt-get update >/dev/null diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 4cd2b17..cba7e8f 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -16,6 +16,15 @@ jobs: release: runs-on: go steps: + # Debian-based Docker images ship /etc/apt/apt.conf.d/docker-clean + # which deletes /var/cache/apt/archives after every apt-get install. + # That defeats actions/cache for the apt cache; disable it before + # any apt operations. + - name: Disable apt auto-clean (preserve cache for actions/cache) + run: | + rm -f /etc/apt/apt.conf.d/docker-clean + echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache + - name: Install Node (required by actions/cache) run: | apt-get update >/dev/null @@ -42,12 +51,13 @@ jobs: # Cache apt downloads — saves ~50s on the wine + innoextract install. # Bump the cache key (-v2, -v3, ...) when the package list changes. - name: Cache apt packages + id: apt-cache uses: actions/cache@v4 with: path: | /var/cache/apt/archives /var/lib/apt/lists - key: apt-trixie-wine-innoextract-v1 + key: apt-trixie-wine-innoextract-v2 - name: Extract version from tag id: version