.gitlab-ci.yml 1.39 KB
Newer Older
Ralf Jung's avatar
Ralf Jung committed
1
image: ralfjung/opam-ci:latest
Ralf Jung's avatar
Ralf Jung committed
2

3 4 5 6
stages:
  - build
  - opam

Ralf Jung's avatar
Ralf Jung committed
7 8 9
variables:
  CPU_CORES: "9"

10
.template: &template
11
  stage: build
Ralf Jung's avatar
Ralf Jung committed
12
  tags:
Ralf Jung's avatar
Ralf Jung committed
13
  - fp-timing
Ralf Jung's avatar
Ralf Jung committed
14 15
  script:
  # prepare
Ralf Jung's avatar
Ralf Jung committed
16
  - . build/opam-ci.sh coq "$COQ_VERSION" coq-mathcomp-ssreflect "$SSR_VERSION"
Ralf Jung's avatar
Ralf Jung committed
17
  - env | egrep '^(CI_BUILD_REF|CI_RUNNER)' > build-env.txt
Ralf Jung's avatar
Ralf Jung committed
18
  # build
19
  - 'time make -k -j$CPU_CORES TIMED=y 2>&1 | tee build-log.txt'
Ralf Jung's avatar
Ralf Jung committed
20
  - 'if fgrep Axiom build-log.txt >/dev/null; then exit 1; fi'
Ralf Jung's avatar
Ralf Jung committed
21
  - 'cat build-log.txt | egrep "[a-zA-Z0-9_/-]+ \((real|user): [0-9]" | tee build-time.txt'
Ralf Jung's avatar
Ralf Jung committed
22
  - 'if test -n "$VALIDATE" && (( RANDOM % 10 == 0 )); then make validate; fi'
Ralf Jung's avatar
Ralf Jung committed
23
  cache:
Ralf Jung's avatar
Ralf Jung committed
24
    key: "coq.$COQ_VERSION-ssr.$SSR_VERSION"
Ralf Jung's avatar
Ralf Jung committed
25 26 27 28
    paths:
    - opamroot/
  only:
  - master
29
  - /^ci/
Ralf Jung's avatar
Ralf Jung committed
30

31 32 33 34
opam:
  stage: opam
  script:
  # Send a trigger to the repository doing the work
Ralf Jung's avatar
Ralf Jung committed
35 36 37
  - curl --fail -X POST -F "token=$OPAM_UPDATE_SECRET" -F "ref=master" -F "variables[REPO]=${CI_PROJECT_URL}.git" -F "variables[REF]=$CI_COMMIT_REF_NAME" -F "variables[SHA]=$CI_COMMIT_SHA" -F "variables[NAME]=$OPAM_PKG" https://gitlab.mpi-sws.org/api/v3/projects/581/trigger/builds
  variables:
  - OPAM_PKG=coq-iris
38 39 40
  only:
  - master

Ralf Jung's avatar
Ralf Jung committed
41
build-coq8.7:
Ralf Jung's avatar
Ralf Jung committed
42 43 44 45 46
  <<: *template
  variables:
    COQ_VERSION: "8.7.dev"
    SSR_VERSION: "dev"

Ralf Jung's avatar
Ralf Jung committed
47
build-coq8.6.1:
48
  <<: *template
Ralf Jung's avatar
Ralf Jung committed
49 50 51
  variables:
    COQ_VERSION: "8.6.1"
    SSR_VERSION: "1.6.1"
52
    VALIDATE: "1"
53 54 55
  artifacts:
    paths:
    - build-time.txt
Ralf Jung's avatar
Ralf Jung committed
56
    - build-env.txt