Kildekode og publisering av npm-moduler til frontender i FP (Foreldrepenger)
Kjør npm install på rot.
Mulig man midlertidig må slenge på --legacy-peer-deps pga en issue med peer dependencies i Storybook.
Kjør npm run bootstrap på rot for å hente dependencies og sette opp intern-dependencies i pakkene som er definert i lerna.json.
For å kjøre opp utviklingsmiljø i Storybook, kjør npm run dev på rot, etterfulgt av npm run pkg-dev for å kjøre opp Storybook-ene
til enkeltpakkene. Utviklingsmiljøet er satt opp med Storybook Composition.
Storybook-ene kan også kjøres opp hver for seg ved å kjøre npm run storybook i de aktuelle pakkene (pr nå packages/ui/react-components og packages/ui/web-components).
For å bygge pakkene, gjør npm run build på rot, ev. samme kommando lokalt på den enkelte modulen.
Det er ikke satt opp noen automatisk publisering av npm-moduler gjennom CI eller lignende. Dette må derfor gjøres manuelt.
Hver npm-pakke har sitt eget build-script i en package.json, som kan kjøres for å lage et nytt bygg under /dist-mappa på rot av den aktuelle pakken. Når det er gjort kan man bumpe versjonsnummer i package.json og gjøre npm publish fra rot av den aktuelle pakken for å publisere den nye versjonen.
Eksempel på publisering av @navikt/fp-react-components:
cd ./packages/ui/react-components- Gjør eventuelle endringer og bump versjon i
package.json npm run buildnpm publish
Pakkene publiseres på GitHub Package Registry, og krever derfor at man har satt opp lokal npm med en PAT (Personal Access Token) med write:packages-tilgang, med en bruker som har tilgang til å publisere pakker på repoet. GitHub har dokumentert oppsett her.
TLDR er å opprette en GitHub PAT med kun write:packages-tilgang, enable SSO, og putte det i en egen ~/.npmrc-fil slik:
//npm.pkg.github.com/:_authToken=<token>
Merk at dette ikke skal sjekkes inn i versjonskontroll.
Spørsmål knyttet til koden eller prosjektet kan stilles som issues her på GitHub
Interne henvendelser kan sendes via Slack i kanalen #sif-pleiepenger.