Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.26 KiB
variables:
  GIT_SUBMODULE_STRATEGY: recursive

stages:
  - test
  - build
  - deploy

zola check:
  stage: test
  image: alpine:latest
  before_script:
  - apk add --update-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/ zola
  - apk add yarn
  - yarn install
  script:
  - zola check

docker build:
  stage: build
  interruptible: true
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  script:
    - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" >/kaniko/.docker/config.json
    - /kaniko/executor
       --context $CI_PROJECT_DIR
       --dockerfile $CI_PROJECT_DIR/Dockerfile
       --destination $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
       --digest-file DIGESTFILE
       --cache=true
       --cleanup
  artifacts:
    paths:
      - DIGESTFILE

deploy docker image:
  stage: deploy
  tags:
    - teckids-trusted
  image: line/kubectl-kustomize:latest
  script:
    - echo $KUBECONFIG | base64 -d > /tmp/kubeconfig
    - cd deploy/overlays/production
    - kustomize edit set image registry.edugit.org/teckids/team-pr/teckids.org:$(cat ../../../DIGESTFILE)
    - kustomize build -o output.yaml
    - kubectl --kubeconfig=/tmp/kubeconfig apply -f $output.yaml