Avoid unreachable Gitea runner cache

This commit is contained in:
Kevin
2026-09-04 02:09:46 -04:00
parent 6fa54a23d9
commit 052fa31d87
7 changed files with 9 additions and 15 deletions
@@ -20,8 +20,6 @@ jobs:
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: 22 node-version: 22
cache: npm
cache-dependency-path: package-lock.json
- name: Install locked dependencies - name: Install locked dependencies
run: npm ci --prefer-offline --no-audit --no-fund run: npm ci --prefer-offline --no-audit --no-fund
- name: Verify Decap configuration and content boundaries - name: Verify Decap configuration and content boundaries
-2
View File
@@ -33,8 +33,6 @@ jobs:
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: 22 node-version: 22
cache: npm
cache-dependency-path: package-lock.json
- name: Install locked dependencies - name: Install locked dependencies
run: npm ci --prefer-offline --no-audit --no-fund run: npm ci --prefer-offline --no-audit --no-fund
- name: Validate and build selected site - name: Validate and build selected site
-2
View File
@@ -33,8 +33,6 @@ jobs:
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: 22 node-version: 22
cache: npm
cache-dependency-path: package-lock.json
- name: Install locked dependencies - name: Install locked dependencies
run: npm ci --prefer-offline --no-audit --no-fund run: npm ci --prefer-offline --no-audit --no-fund
- name: Validate and build selected site - name: Validate and build selected site
-2
View File
@@ -34,8 +34,6 @@ jobs:
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: 22 node-version: 22
cache: npm
cache-dependency-path: package-lock.json
- name: Install locked dependencies - name: Install locked dependencies
run: npm ci --prefer-offline --no-audit --no-fund run: npm ci --prefer-offline --no-audit --no-fund
- name: Validate and build production blog - name: Validate and build production blog
@@ -34,8 +34,6 @@ jobs:
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: 22 node-version: 22
cache: npm
cache-dependency-path: package-lock.json
- name: Install locked dependencies - name: Install locked dependencies
run: npm ci --prefer-offline --no-audit --no-fund run: npm ci --prefer-offline --no-audit --no-fund
- name: Validate and build production site - name: Validate and build production site
+8 -3
View File
@@ -81,9 +81,14 @@ the pilot:
- The existing branch preview workflows remain in place. Local output checks - The existing branch preview workflows remain in place. Local output checks
now prove preview robots rules and page metadata stay no-index and that the now prove preview robots rules and page metadata stay no-index and that the
admin response has a no-index header rule. admin response has a no-index header rule.
- Validation, preview, and production workflows cache npm's download store by - Validation, preview, and production workflows use clean `npm ci` installs with
`package-lock.json` while retaining clean `npm ci` installs. Warm runner jobs `--prefer-offline --no-audit --no-fund`. Do not enable `setup-node`'s npm cache
avoid repeatedly downloading the same dependency tarballs. until the Actions runner cache service is reachable from job containers. The
September 4 pilot test timed out against the runner's auto-detected private
address during both cache restore and cleanup. Give `act_runner` a fixed
`cache.host` and `cache.port` reachable from its job containers, publish that
port (or attach runner and jobs to a shared network), restart the runner, and
then restore the lockfile-keyed `cache: npm` configuration.
The pilot dependencies are active: the public client ID, exact-origin CORS The pilot dependencies are active: the public client ID, exact-origin CORS
policy, `cms-pilot` branch, and both protection rules have been verified. policy, `cms-pilot` branch, and both protection rules have been verified.
+1 -2
View File
@@ -227,8 +227,7 @@ for (const path of [
'.gitea/workflows/production-blog.yml', '.gitea/workflows/production-blog.yml',
]) { ]) {
const text = await readFile(path, 'utf8'); const text = await readFile(path, 'utf8');
assert(/cache:\s*npm/.test(text) && /cache-dependency-path:\s*package-lock\.json/.test(text), `${path} must cache npm downloads by package-lock.json.`); assert(text.includes('npm ci --prefer-offline --no-audit --no-fund'), `${path} must retain a clean lockfile install with quiet, cache-friendly npm options.`);
assert(text.includes('npm ci --prefer-offline --no-audit --no-fund'), `${path} must retain a clean lockfile install while preferring the cache.`);
} }
console.log('Verified Decap backend, four content contracts, fixed page images, bounded media, admin pin, and stable PR status context.'); console.log('Verified Decap backend, four content contracts, fixed page images, bounded media, admin pin, and stable PR status context.');