Skip to content
Snippets Groups Projects
Commit d0709163 authored by Björn Brandenburg's avatar Björn Brandenburg
Browse files

CI: compile classic and new Prosa separately

For improved parallelism and nicer documentation.
parent 61b3b10e
No related branches found
No related tags found
No related merge requests found
...@@ -6,16 +6,21 @@ stages: ...@@ -6,16 +6,21 @@ stages:
stage: build stage: build
image: mathcomp/mathcomp:${CI_JOB_NAME} image: mathcomp/mathcomp:${CI_JOB_NAME}
script: script:
- ./create_makefile.sh - ./create_makefile.sh --without-classic
- make -j ${NJOBS} - make -j ${NJOBS}
1.9.0-coq-8.10: .build-classic:
extends: .build stage: build
image: mathcomp/mathcomp:1.9.0-coq-8.10
script:
- ./create_makefile.sh --only-classic
- make -j ${NJOBS}
.collect-vo-files:
# Keep track of all compiled output and the build infrastructure # Keep track of all compiled output and the build infrastructure
artifacts: artifacts:
name: prosa-build-files name: prosa-build-files
paths: paths:
- _CoqProject
- Makefile - Makefile
- Makefile.conf - Makefile.conf
# Ugly hack around https://gitlab.com/gitlab-org/gitlab-runner/issues/2620 # Ugly hack around https://gitlab.com/gitlab-org/gitlab-runner/issues/2620
...@@ -39,6 +44,16 @@ stages: ...@@ -39,6 +44,16 @@ stages:
- "*/*/*/*/*/*/*/*/*/*.glob" - "*/*/*/*/*/*/*/*/*/*.glob"
expire_in: 1 week expire_in: 1 week
1.9.0-coq-8.10:
extends:
- .build
- .collect-vo-files
1.9.0-coq-8.10-classic:
extends:
- .build-classic
- .collect-vo-files
proof-length: proof-length:
stage: build stage: build
image: python:3-alpine image: python:3-alpine
...@@ -55,12 +70,14 @@ spell-check: ...@@ -55,12 +70,14 @@ spell-check:
extends: .build extends: .build
1.9.0-coq-dev: 1.9.0-coq-dev:
extends: .build extends:
- .build
# it's ok to fail with an unreleased version of Coq # it's ok to fail with an unreleased version of Coq
allow_failure: true allow_failure: true
latest-coq-8.10: latest-coq-8.10:
extends: .build extends:
- .build
# it's ok to fail with an unreleased version of ssreflect # it's ok to fail with an unreleased version of ssreflect
allow_failure: true allow_failure: true
...@@ -72,12 +89,17 @@ validate: ...@@ -72,12 +89,17 @@ validate:
- 1.9.0-coq-8.10 - 1.9.0-coq-8.10
script: make validate script: make validate
doc: validate-classic:
stage: process stage: process
image: mathcomp/mathcomp:1.9.0-coq-8.10 image: mathcomp/mathcomp:1.9.0-coq-8.10
needs: ["1.9.0-coq-8.10"] needs: ["1.9.0-coq-8.10-classic"]
dependencies: dependencies:
- 1.9.0-coq-8.10 - 1.9.0-coq-8.10-classic
script: make validate
.doc:
stage: process
image: mathcomp/mathcomp:1.9.0-coq-8.10
script: script:
- make html -j ${NJOBS} - make html -j ${NJOBS}
- mv html with-proofs - mv html with-proofs
...@@ -85,6 +107,13 @@ doc: ...@@ -85,6 +107,13 @@ doc:
- mv html without-proofs - mv html without-proofs
- make htmlpretty -j ${NJOBS} - make htmlpretty -j ${NJOBS}
- mv html pretty - mv html pretty
doc:
extends:
- .doc
needs: ["1.9.0-coq-8.10"]
dependencies:
- 1.9.0-coq-8.10
artifacts: artifacts:
name: "prosa-spec-$CI_COMMIT_REF_NAME" name: "prosa-spec-$CI_COMMIT_REF_NAME"
paths: paths:
...@@ -93,6 +122,20 @@ doc: ...@@ -93,6 +122,20 @@ doc:
- "pretty/" - "pretty/"
expire_in: 1 week expire_in: 1 week
doc-classic:
extends:
- .doc
needs: ["1.9.0-coq-8.10-classic"]
dependencies:
- 1.9.0-coq-8.10-classic
artifacts:
name: "prosa-classic-spec-$CI_COMMIT_REF_NAME"
paths:
- "with-proofs/"
- "without-proofs/"
- "pretty/"
expire_in: 1 week
proof-state: proof-state:
stage: process stage: process
image: mathcomp/mathcomp:1.9.0-coq-8.10 image: mathcomp/mathcomp:1.9.0-coq-8.10
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment