Journal du jeudi 12 septembre 2024 à 21:21
J'écris cette note pour me souvenir pourquoi j'ai paramétré .npmrc avec les options suivantes :
link-workspace-packages=true
prefer-workspace-packages=true
shared-workspace-lockfile=false
Sans l'option link-workspace-packages=true, je devais configurer package.json comme ceci
"gibbon-replay-js": "workspace:*"
pour que /demosite utilise le package local /packages/gibbon-replay-js.
Cette contrainte me posait un problème, parce que /demosite/Dockerfile ne pouvait pas être buildé.
L'option link-workspace-packages=true permet de configurer la dépendance suivante
"gibbon-replay-js": "0.2.0"
qui pourra être installé correctement lors du build de l'image Docker.
Attention, cette version de gibbon-replay-js doit avoir préalablement été publiée sur npm registry.
Seconde option qui m'a été utile : shared-workspace-lockfile=false.
Avec cette option, pnpm install génère les fichiers /demosite/pnpm-lock.yaml et /app/pnpm-lock.yaml, fichiers indispensables pour build les images Docker.