Skip to content
Snippets Groups Projects
.gitlab-ci.yml 2.14 KiB
Newer Older
image: ralfjung/opam-ci:opam2
Ralf Jung's avatar
Ralf Jung committed
variables:
Ralf Jung's avatar
Ralf Jung committed
  CPU_CORES: "10"
Ralf Jung's avatar
Ralf Jung committed

Ralf Jung's avatar
Ralf Jung committed
.only_branches: &only_branches
  only:
  - /^master/@iris/iris
  - /^ci/@iris/iris

.only_mr: &only_mr
  only:
  - merge_requests

.branches_and_mr: &branches_and_mr
  only:
  - /^master/@iris/iris
  - /^ci/@iris/iris
  - merge_requests

.template: &template
Ralf Jung's avatar
Ralf Jung committed
  <<: *only_branches
  interruptible: true
Ralf Jung's avatar
Ralf Jung committed
  tags:
Ralf Jung's avatar
Ralf Jung committed
  - fp
Ralf Jung's avatar
Ralf Jung committed
  script:
Ralf Jung's avatar
Ralf Jung committed
  - git clone https://gitlab.mpi-sws.org/iris/ci.git ci -b opam2
Ralf Jung's avatar
Ralf Jung committed
  cache:
Ralf Jung's avatar
Ralf Jung committed
    key: "$CI_JOB_NAME"
Ralf Jung's avatar
Ralf Jung committed
    paths:
Ralf Jung's avatar
Ralf Jung committed
    - _opam/
Ralf Jung's avatar
Ralf Jung committed
  except:
  - triggers
Ralf Jung's avatar
Ralf Jung committed
## Build jobs

Ralf Jung's avatar
Ralf Jung committed
build-coq.dev:
  <<: *template
Ralf Jung's avatar
Ralf Jung committed
  <<: *branches_and_mr
Ralf Jung's avatar
Ralf Jung committed
  variables:
Ralf Jung's avatar
Ralf Jung committed
    # Pinning a commit to avoid constant re-builds in MR pipelines
    COQ_REV: "f16b7c75bcc8651e43ec1f0c8ae6744748665213"
    OPAM_PINS: "coq-core.dev git git+https://github.com/coq/coq#$COQ_REV   coq-stdlib.dev git git+https://github.com/coq/coq#$COQ_REV   coq.dev git git+https://github.com/coq/coq#$COQ_REV"
Ralf Jung's avatar
Ralf Jung committed
    MANGLE_NAMES: "1"
Ralf Jung's avatar
Ralf Jung committed

build-coq.8.14.dev:
  <<: *template
  variables:
    OPAM_PINS: "coq version 8.14.dev"
    MANGLE_NAMES: "1"
    DENY_WARNINGS: "1"

build-coq.8.13.2:
Ralf Jung's avatar
Ralf Jung committed
  <<: *template
  interruptible: false
Ralf Jung's avatar
Ralf Jung committed
  variables:
    OPAM_PINS: "coq version 8.13.2"
Ralf Jung's avatar
Ralf Jung committed
    DENY_WARNINGS: "1"
    OPAM_PKG: "1"
    DOC_DIR: "coqdoc@center.mpi-sws.org:iris"
    DOC_OPTS: "--external https://plv.mpi-sws.org/coqdoc/stdpp/ stdpp"
  tags:
  - fp-timing
Ralf Jung's avatar
Ralf Jung committed
build-coq.8.12.2:
Ralf Jung's avatar
Ralf Jung committed
  <<: *template
Ralf Jung's avatar
Ralf Jung committed
  <<: *branches_and_mr
Ralf Jung's avatar
Ralf Jung committed
  variables:
Ralf Jung's avatar
Ralf Jung committed
    OPAM_PINS: "coq version 8.12.2"
Ralf Jung's avatar
Ralf Jung committed
    DENY_WARNINGS: "1"
# Nightly job with a known-to-work Coq version
Ralf Jung's avatar
Ralf Jung committed
# (so failures must be caused by std++)
trigger-stdpp.dev-coq.8.13.1:
  <<: *template
  variables:
    STDPP_REPO: "iris/stdpp"
    OPAM_PINS: "coq version 8.13.1   git+https://gitlab.mpi-sws.org/$STDPP_REPO#$STDPP_REV"
  except:
  only:
  - triggers
  - schedules
  - api

Ralf Jung's avatar
Ralf Jung committed
# Nightly job with latest Coq beta branch
trigger-stdpp.dev-coq.8.14.dev:
  <<: *template
  variables:
    STDPP_REPO: "iris/stdpp"
    OPAM_PINS: "coq version 8.14.dev   git+https://gitlab.mpi-sws.org/$STDPP_REPO#$STDPP_REV"
    CI_COQCHK: "1"
  except:
  only:
  - triggers
  - schedules
  - api