image: node:20.5-alpine3.18

cache:
  key:
    files:
      - yarn.lock
  paths:
    - .yarn-cache/

before_script:
  - echo 'yarn-offline-mirror ".yarn-cache/"' >> .yarnrc
  - echo 'yarn-offline-mirror-pruning true' >> .yarnrc
  - yarn install --frozen-lockfile --no-progress
  - apk update && apk add make graphviz zip

pages:
  script:
    - make build-poincare
  artifacts:
    paths:
      - public
    expire_in: 1 week
  rules:
    - if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH