fix(deploy): set cache-dependency-path to package-lock.json #18

Merged
slaid098 merged 1 commit from fix/deploy-cache-dependency-path into main 2026-08-07 18:14:39 +03:00
Owner

Что сделано

Добавлена 1 строка в .forgejo/workflows/deploy.yml: cache-dependency-path: "package-lock.json" к actions/setup-node@v4. Тот же фикс, что PR #16 для ci.yml, но для deploy.yml.

Изменение

- uses: actions/setup-node@v4
  with:
    node-version: "22"
    cache: "npm"
    cache-dependency-path: "package-lock.json"   # ← добавлено

Почему

Блокер: deploy.yml упал на push после merge PR #16 (sha=2f1cc05, run id=136, failure). Тот же root cause, что issue #13: act-эмуляция setup-node@v4 ищет eslint.config.mjs (нет, проект на Biome) при cache miss → lstat failure. ci.yml починен в PR #16, deploy.yml — нет.

Влияние: сайт slaid098.dev не обновился после PR #15 (subscriptions content update) — deploy не работает. PR #15 content (новые подписки, Forgejo SVG) не в проде.

Фикс: cache-dependency-path: "package-lock.json" — идентично PR #16. setup-node читает package-lock.json (есть в репо) → cache-key → без lstat eslint.config.mjs.

Watch out

  • CI на этом PR: pull_request триггерит ci.yml (не deploy.yml — у deploy только push триггер). ci.yml на PR должен быть success (починен в PR #16). deploy.yml проверится только на push после merge.
  • Первый push после merge: cold cache (cache save, не restore). Последующие — cache restore.
  • Vercel CLI-deploy: git-provider link отключен (PR #6), CLI работает без git author verification. Token из secrets.VERCEL_TOKEN.

Pending

  • Проверить после merge: push на main → deploy.yml run → status=success (деплой работает). Сайт slaid098.dev обновлён (PR #15 content виден).
  • Если deploy всё ещё падает (не из-за cache) — отдельная задача.

Closes #17

## Что сделано Добавлена 1 строка в `.forgejo/workflows/deploy.yml`: `cache-dependency-path: "package-lock.json"` к `actions/setup-node@v4`. Тот же фикс, что PR #16 для ci.yml, но для deploy.yml. ### Изменение ```yaml - uses: actions/setup-node@v4 with: node-version: "22" cache: "npm" cache-dependency-path: "package-lock.json" # ← добавлено ``` ## Почему **Блокер**: deploy.yml упал на push после merge PR #16 (sha=2f1cc05, run id=136, failure). Тот же root cause, что issue #13: `act`-эмуляция `setup-node@v4` ищет `eslint.config.mjs` (нет, проект на Biome) при cache miss → `lstat` failure. ci.yml починен в PR #16, deploy.yml — нет. **Влияние**: сайт slaid098.dev не обновился после PR #15 (subscriptions content update) — deploy не работает. PR #15 content (новые подписки, Forgejo SVG) не в проде. **Фикс**: `cache-dependency-path: "package-lock.json"` — идентично PR #16. `setup-node` читает `package-lock.json` (есть в репо) → cache-key → без `lstat eslint.config.mjs`. ## Watch out - **CI на этом PR**: pull_request триггерит ci.yml (не deploy.yml — у deploy только push триггер). ci.yml на PR должен быть success (починен в PR #16). deploy.yml проверится только на push после merge. - **Первый push после merge**: cold cache (cache save, не restore). Последующие — cache restore. - **Vercel CLI-deploy**: git-provider link отключен (PR #6), CLI работает без git author verification. Token из secrets.VERCEL_TOKEN. ## Pending - Проверить после merge: push на main → deploy.yml run → status=success (деплой работает). Сайт slaid098.dev обновлён (PR #15 content виден). - Если deploy всё ещё падает (не из-за cache) — отдельная задача. Closes #17
fix(deploy): set cache-dependency-path to package-lock.json
All checks were successful
CI / check (pull_request) Successful in 1m54s
58405c37c4
- deploy.yml имеет тот же cache bug что ci.yml (issue #13)
- setup-node@v4 cache: npm падает на push (lstat eslint.config.mjs: no such file)
- cache-dependency-path: package-lock.json — явный путь, обходит дефолтный path-finding
- блокер: деплой не работает, PR #15 content не в проде

Closes #17
Author
Owner

Code Review Summary

Однострочный фикс блокера деплоя: добавлен cache-dependency-path: "package-lock.json" к setup-node@v4 в deploy.yml. Идентично решению из PR #16 для ci.yml.

Positives

  • Изменение минимальное и точечное — 1 строка, идентичная уже проверенному паттерну в ci.yml:19.
  • package-lock.json существует в корне репо (109 KB) — кеш будет валидным.
  • deploy.yml структура корректна: триггер push: [main], шаги checkout → setup-node(cache: npm + cache-dependency-path) → npm ci → build → vercel deploy. Секреты (VERCEL_TOKEN, FORGEJO_URL, FORGEJO_TOKEN, WEBHOOK_SECRET) не тронуты.
  • CI green на pull_request (run id=139, ci.yml). deploy.yml проверится на push после merge (только push-триггер — ожидаемо).
  • Закрывает issue #17 — блокер деплоя.

Suggestions (info, not blocking)

  • Нет замечаний. Фикс соответствует паттерну, уже доказавшему работу в ci.yml.

Verdict: APPROVE

## Code Review Summary Однострочный фикс блокера деплоя: добавлен `cache-dependency-path: "package-lock.json"` к `setup-node@v4` в `deploy.yml`. Идентично решению из PR #16 для `ci.yml`. ### Positives - Изменение минимальное и точечное — 1 строка, идентичная уже проверенному паттерну в `ci.yml:19`. - `package-lock.json` существует в корне репо (109 KB) — кеш будет валидным. - `deploy.yml` структура корректна: триггер `push: [main]`, шаги `checkout → setup-node(cache: npm + cache-dependency-path) → npm ci → build → vercel deploy`. Секреты (`VERCEL_TOKEN`, `FORGEJO_URL`, `FORGEJO_TOKEN`, `WEBHOOK_SECRET`) не тронуты. - CI green на pull_request (run id=139, ci.yml). deploy.yml проверится на push после merge (только push-триггер — ожидаемо). - Закрывает issue #17 — блокер деплоя. ### Suggestions (info, not blocking) - Нет замечаний. Фикс соответствует паттерну, уже доказавшему работу в `ci.yml`. ### Verdict: APPROVE
slaid098 deleted branch fix/deploy-cache-dependency-path 2026-08-07 18:14:40 +03:00
Sign in to join this conversation.
No reviewers
No labels
bug
performance
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
slaid098/slaid098-dev!18
No description provided.