-
Notifications
You must be signed in to change notification settings - Fork 32
56 lines (50 loc) · 1.56 KB
/
coq.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: CI (Coq, docker)
on:
push:
branches: [ master ]
pull_request:
workflow_dispatch:
jobs:
build:
strategy:
fail-fast: false
matrix:
coq-version: [ "dev" , "8.19" , "8.18" , "8.17" , "8.16" ]
targets: [ "fiat-core parsers parsers-examples coq-ci" ]
name: ${{ matrix.coq-version }} (${{ matrix.targets }})
concurrency:
group: ${{ github.workflow }}-${{ matrix.coq-version }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: all
uses: coq-community/docker-coq-action@v1
with:
coq_version: ${{ matrix.coq-version }}
ocaml_version: default
custom_script: |
sudo chmod -R a+rw .
startGroup 'install general dependencies'
sudo apt-get update -y
sudo apt-get install -y python python3
eval $(opam env)
endGroup
export TARGETS="${{ matrix.targets }}"
export FLAGS="PROFILE=1"
export NJOBS="2"
git config --global --add safe.directory "*"
startGroup make
etc/coq-scripts/timing/make-pretty-timed.sh -j$NJOBS $TARGETS $FLAGS && make TIMED=1 -j$NJOBS $TARGETS
endGroup
check-all-docker:
runs-on: ubuntu-latest
needs: [build]
if: always()
steps:
- run: echo 'build passed'
if: ${{ needs.build.result == 'success' }}
- run: echo 'build failed' && false
if: ${{ needs.build.result != 'success' }}