Skip to content

Commit

Permalink
remove doc on publishing quarto books
Browse files Browse the repository at this point in the history
  • Loading branch information
erikvatt committed Feb 8, 2024
1 parent df5e9bd commit e571e98
Showing 1 changed file with 0 additions and 88 deletions.
88 changes: 0 additions & 88 deletions docs/analyse/datafortellinger.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,91 +186,3 @@ I eksempelet hentes team-tokenet fra en [kubernetes secret](https://kubernetes.i

#### Andre eksempler med Naisjob
- [fia](https://github.com/navikt/fia-datafortelling): Mer avansert eksempel med produksjonssatt datafortelling

## Quarto book
Vi har en enkel rigg for å publisere [Quarto fortelling](https://quarto.org/docs/books/) internt i NAV på `data.intern.nav.no` og eksternt på `data.nav.no`.
Dette oppsettet forutsetter at man oppretter et Github repo med en Github Action som laster opp Quarto booken din til en GCP-bucket eid av deg.
Under følger en oppskrift på hvordan dette kan settes opp:

!!! info "Oppskriften forutsetter at du har tilgang til [navikt organisasjonen](https://github.com/navikt) på Github og tilgang til et GCP prosjekt hvor [storage bucketen](https://cloud.google.com/storage/docs/creating-buckets) skal opprettes. I tillegg kreves kunnskap om hvordan å dytte kode til et Github repo. GCP bruker og tilgang til `navikt` organisasjonen på Github får du gjennom [myapps](https://myapps.microsoft.com). GCP prosjekt blir opprettet dersom du lager et nais-team [her](https://teams.nav.cloud.nais.io/)."


1. Opprett et repo under [navikt-organisasjonen](https://github.com/organizations/navikt/repositories/new) på Github.
2. Opprett en [storage bucket](https://cloud.google.com/storage/docs/creating-buckets) i et GCP prosjekt du er medlem av.
3. Lag Quarto fortellingen din:
- Anbefaler å bruke Quarto sin egen [dokumentasjon](https://quarto.org/docs/books/) for dette.
- Eksempler på datafortellinger laget med Quarto i NAV:
- [Omverdensanalysen](https://github.com/navikt/oma_2023)
- [Overgangsindikator](https://github.com/navikt/ovind_docs)
- [tada](https://github.com/navikt/tada-playbook)
4. Opprett en service account i GCP prosjektet:
- For å opprette service account, se dokumentasjon i [cloud.google.com](https://cloud.google.com/iam/docs/service-accounts-create).
- Gi service accounten rollen `Storage Admin` på bucketen opprettet i (2).
Se dokumentasjon i [cloud.google.com](https://cloud.google.com/storage/docs/access-control/using-iam-permissions).
5. Lag en [JSON nøkkel](https://cloud.google.com/iam/docs/keys-create-delete) for service accounten.
Denne lagrer du midlertidig lokalt på maskinen din.
6. Opprett en en [Github Action secret](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions) i repoet ditt du kaller `GCP_CREDENTIALS`.
Innholdet i secreten er JSON nøkkelen fra (5). Etter at secreten er lagt til i repoet bør JSON-nøkkelen fjernes fra maskinen din.
7. Når du har laget datafortellingen din med Quarto og dyttet denne til repoet opprettet i (1) kan du sette opp en Github Action som laster fortellingen din til bucketen på GCP hver gang du pusher kode til repoet.
Opprett filen `.github/workflows/update-quarto.yaml` i repoet med følgende innhold:

!!! info "I eksempelet under må ${BUCKET} erstattes med navnet på bucketen du lagde i (2). ${NAME} må erstattes med et selvvalgt navn som representerer quarto storien."

```yaml
name: update-quarto
on:
push:
branches:
- 'main'

jobs:
update-quarto:
name: Update quarto story
runs-on: latest
steps:
- uses: actions/checkout@v4
- id: 'auth'
uses: 'google-github-actions/auth@v1'
with:
credentials_json: '${{ secrets.GCP_CREDENTIALS }}'
- name: 'Set up Cloud SDK'
uses: 'google-github-actions/setup-gcloud@v1'
- name: Upload files
working-directory: _site
run: gsutil cp -r * gs://${BUCKET}/${NAME}/
```
8. Lag en pull request til [navikt/nada-quarto-proxy](https://github.com/navikt/nada-quarto-proxy).
Pull requesten må inneholde følgende:
- Opprett filen `.nais/${NAME}.yaml` med innholdet nedenfor.
- Legg til `,.nais/${NAME}.yaml` på slutten av linjen på felles [workflow](https://github.com/navikt/nada-quarto-proxy/blob/main/.github/workflows/build-and-deploy.yaml#L34).

!!! info "Erstatt ${BUCKET} med navn på bucket fra (2) og ${NAME} med det du valgte i (7)"

```yaml
kind: "Application"
apiVersion: "nais.io/v1alpha1"
metadata:
name: quarto-${NAME}
namespace: nada
labels:
team: nada
spec:
image: {{ image }}
env:
- name: GCS_QUARTO_BUCKET
value: ${BUCKET}
- name: QUARTO_UUID
value: ${NAME}
- name: QUARTO_PATH
value: ${NAME}
ingresses:
- https://data.intern.nav.no/${NAME}
replicas:
min: 1
max: 2
```

9. Man må også gi Nais-appen som blir opprettet i navikt/nada-quarto-proxy lesetilgang til den samme bucketen.
Etter at appen har blitt deployet må noen manuelt inn i clustert for å finne ut hvilken service account som har blitt opprettet.
Denne service accounten må da få rollen `Storage Object Viewer` på bucketen opprettet i (2).

0 comments on commit e571e98

Please sign in to comment.