Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.61 KiB
image: node:16.14.2-slim

include:
  - template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'

stages:
  - build
  - 🧪 test
  - 📝 publish
  - 🧽 clean

variables:
  SUB_GROUP:          "www"

.cache:
  tags:
    - cache
  cache:
    paths:
      - node_modules/

.cache-push:
  extends: .cache
  cache:
    policy: push

.cache-pull:
  extends: .cache
  cache:
    policy: pull

install_dependencies:
  extends: .cache-push
  stage: build
  script:
    - npm ci

lint:
  extends: .cache-pull
  stage: 🧪 test
  script:
    - npm run lint

pages:
  extends: .cache-pull
  stage: 📝 publish
  script:
    - npm run build
    - mv build public
  artifacts:
    paths:
      - public
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
  environment:
    name: production
    url: "${DOCUSAURUS_URL}"

pages:preview:
  extends: pages
  artifacts:
    expire_in: 2 week
  rules:
    - if: $CI_MERGE_REQUEST_IID
      variables:
          DOCUSAURUS_URL:     "https://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}"
          DOCUSAURUS_BASEURL: "/-/${SUB_GROUP}/${CI_PROJECT_NAME}/-/jobs/${CI_JOB_ID}/artifacts/public/"
  environment:
    name: preview/${CI_COMMIT_REF_NAME}
    url: "https://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}/-/${SUB_GROUP}/${CI_PROJECT_NAME}/-/jobs/${CI_JOB_ID}/artifacts/public/index.html"