.gitlab-ci.yml 1.13 KB
Newer Older
1 2 3 4 5 6 7
# Taken from https://gitlab.com/erikmd/docker-coq-gitlab-ci-demo-1/blob/master/.gitlab-ci.yml

stages:
  - build

.build:
  stage: build
8
  image: coqorg/${COQ_DOCKER_IMAGE}
9 10 11
  before_script:
    - if [ -n "${COMPILER_EDGE}" ]; then opam switch ${COMPILER_EDGE} && eval $(opam env); fi
    - opam update -y
12
    - opam install -y -j ${NJOBS} ${SSREFLECT_PACKAGE}
13 14 15 16 17 18 19 20 21
    - opam config list
    - opam repo list
    - opam list
  script:
    - sudo chown -R coq:coq "$CI_PROJECT_DIR"
    - ./create_makefile.sh
    - make -j ${NJOBS}
    - make validate

22 23 24 25 26 27 28
.ssreflect_latest:
  extends: .build
  variables:
    SSREFLECT_PACKAGE: "coq-mathcomp-ssreflect"
    COQ_DOCKER_IMAGE: ${CI_JOB_NAME}

coq:8.9+ssreflect:1.8.0:
29
  extends: .build
30 31 32 33 34 35 36 37 38
  variables:
    COQ_DOCKER_IMAGE: "coq:8.9"
    # NOTE: we currently fix the mathcomp version to 1.8.0 here because
    #       version 1.9.0 causes a build failure that still needs to be
    #       investigated.    
    SSREFLECT_PACKAGE: "coq-mathcomp-ssreflect.1.8.0"

coq:8.9:
  extends: .ssreflect_latest
39

40 41 42 43
coq:dev:
  extends: .ssreflect_latest
  # it's ok to fail with an unreleased version of Coq
  allow_failure: true