---
when:
  - event: [pull_request, tag]
  - event: [push, manual]
    branch:
      - ${CI_REPO_DEFAULT_BRANCH}

steps:
  - name: eslint
    image: docker.io/library/node:lts
    commands:
      - npm install --quiet --no-progress
      - npm run lint:js
    environment:
      FORCE_COLOR: "true"

  - name: assets
    image: docker.io/library/node:lts
    commands:
      - npm install --quiet --no-progress
      - npm run build
    environment:
      FORCE_COLOR: "true"

  - name: testbuild
    image: quay.io/thegeeklab/hugo:0.125.7
    commands:
      - mkdir -p exampleSite/themes/ && ln -s $(pwd)/ exampleSite/themes/${CI_REPO_NAME}
      - hugo --panicOnWarning -s exampleSite/ -b http://localhost:8000/

  - name: html-validation
    image: docker.io/library/node:lts
    group: test
    commands:
      - npm install --quiet --no-progress
      - npm run lint:html
    environment:
      FORCE_COLOR: "true"

  - name: link-validation
    image: docker.io/lycheeverse/lychee
    group: test
    commands:
      - lychee --no-progress --format detailed exampleSite/content/ README.md

  - name: page-validation
    image: quay.io/thegeeklab/lhci:0.13
    group: test
    commands:
      - lhci autorun
    environment:
      LHCI_SERVER_URL: https://ci-artifact.rknet.org/${CI_REPO_NAME}/