.npmrc in den Docker-Build-Kontext kopieren
docker_web scheiterte am Tag v0.6.0-rc.1: pnpm loeste @sorb/threadnet-call-embedded gegen registry.npmjs.org auf und bekam 404. Die COPY-Zeile hat .npmrc noch nie mitgenommen. Bis pnpm 10 fiel das nicht auf, weil --frozen-lockfile die im Lockfile gepinnte Tarball-URL nahm und gar nichts aufzuloesen brauchte. Upstream bringt pnpm 11 mit minimumReleaseAgeStrict: true - das prueft fuer jeden Lockfile-Eintrag das Veroeffentlichungsdatum und braucht dafuer Registry-Metadaten. Damit wird der Scope wieder aufgeloest, und ohne .npmrc gegen die falsche Registry. Genau diesen Ablauf sagt die .npmrc selbst voraus (management#0055) - der Fix lag nur an einer Stelle, an die der Docker-Build nie herankam. Fuer den Scope ist kein Geheimnis noetig, der Lesezugriff ist anonym.
This commit is contained in:
+8
-1
@@ -18,7 +18,14 @@ ARG JS_SDK_BRANCH="master"
|
||||
WORKDIR /src
|
||||
|
||||
# Install dependencies
|
||||
COPY --parents package.json pnpm-lock.yaml pnpm-workspace.yaml patches scripts **/package.json /src/
|
||||
#
|
||||
# ThreadNet-Fork: .npmrc muss mit, sonst loest @sorb/threadnet-call-embedded
|
||||
# gegen registry.npmjs.org auf (404, im schlimmeren Fall ein fremdes Paket).
|
||||
# Bis pnpm 10 fiel das nicht auf, weil --frozen-lockfile die gepinnte
|
||||
# Tarball-URL nahm und nichts aufloeste. pnpm 11 prueft mit
|
||||
# minimumReleaseAgeStrict das Alter jedes Eintrags und braucht dafuer
|
||||
# Registry-Metadaten - also wieder die richtige Registry. Siehe management#0055.
|
||||
COPY --parents .npmrc package.json pnpm-lock.yaml pnpm-workspace.yaml patches scripts **/package.json /src/
|
||||
RUN pnpm install --frozen-lockfile
|
||||
RUN --mount=type=bind,source=.git,target=/src/.git /src/scripts/docker-link-repos.sh
|
||||
|
||||
|
||||
Reference in New Issue
Block a user