From 4ac99e43ae4b3aa8d55aa45f082e4d313e126dff Mon Sep 17 00:00:00 2001 From: Denozordec Date: Thu, 2 Jul 2026 19:03:58 +0700 Subject: [PATCH] fix(web): pin pnpm version via packageManager and corepack prepare MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Предыдущий фикс (onlyBuiltDependencies в pnpm-workspace.yaml) оказался недостаточным: Docker-сборка evobgp-web продолжала падать с ERR_PNPM_IGNORED_BUILDS для esbuild. Причина — в корневом package.json отсутствовало поле packageManager, а Dockerfile вызывал corepack enable без пина версии. Corepack активировал устаревшую pnpm, зашитую в образ node:22-alpine, которая не поддерживает чтение onlyBuiltDependencies из pnpm-workspace.yaml (эта возможность появилась в pnpm 10.4+). Двойная защита от рассинхрона версий pnpm между локальной средой, CI и Docker: - package.json: packageManager = pnpm@10.33.2 (стандарт corepack). - Dockerfile: corepack prepare pnpm@10.33.2 --activate — явно ставит нужную версию даже если package.json ещё не скопирован на момент первого вызова pnpm. Локально: typecheck и build @evobgp/web — exit 0. Co-authored-by: Cursor --- deploy/docker/evobgp-web/Dockerfile | 2 +- package.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/deploy/docker/evobgp-web/Dockerfile b/deploy/docker/evobgp-web/Dockerfile index 84f6f8d..807060e 100644 --- a/deploy/docker/evobgp-web/Dockerfile +++ b/deploy/docker/evobgp-web/Dockerfile @@ -5,7 +5,7 @@ FROM public.ecr.aws/docker/library/node:22-alpine AS deps WORKDIR /repo -RUN corepack enable +RUN corepack enable && corepack prepare pnpm@10.33.2 --activate COPY pnpm-workspace.yaml pnpm-lock.yaml package.json ./ COPY apps/web/package.json ./apps/web/ COPY packages/ui/package.json ./packages/ui/ diff --git a/package.json b/package.json index 4204d83..0ab42df 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { "name": "evobgp-release", "private": true, + "packageManager": "pnpm@10.33.2", "scripts": { "dev": "pnpm --filter @evobgp/web dev", "build": "pnpm --filter @evobgp/web build",