-
Notifications
You must be signed in to change notification settings - Fork 49
99 lines (87 loc) · 3.04 KB
/
ubuntu.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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# Main doc: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/introduction-to-github-actions
# Runners spec: https://docs.github.com/en/free-pro-team@latest/actions/reference/specifications-for-github-hosted-runners
# Glob expressions: https://github.com/actions/toolkit/tree/main/packages/glob
name: Ubuntu
###############################################################################
# Schedule:
# - push on any branch whose name matches v** or master
# - any pull request
###############################################################################
on:
push:
branches:
- 2021.02
- 2021.09
- main
pull_request:
branches:
- '**'
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
inputs:
platform:
description: 'Arguments for the platform script:'
required: true
default: '-extent=x -parallel=p -jobs=2 -large=i -compcert=y -unimath=n -set-switch=y'
###############################################################################
# Platform script options shared among all jobs
###############################################################################
env:
PLATFORM: -extent=x -parallel=p -jobs=2 -large=i -compcert=y -unimath=n -set-switch=y
COQREGTESTING: y
###############################################################################
# Ubuntu
#
# CAVEATS:
# - you need bubblewrap or the script fails
# - build-essential pulls in the C toolchain
###############################################################################
jobs:
Ubuntu_platform:
name: Ubuntu
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
variant:
# This should contain all picks introduced in the current release + all original picks of all Coq versions
- '8.19~2024.01+beta1'
- '8.18~2023.11'
- '8.18~mc2'
- '8.17~2023.08'
- '8.16~2022.09'
- '8.15~2022.09'
- '8.15~2022.04'
- '8.14~2022.01'
- '8.13~2021.02'
- '8.12'
steps:
- name: Git checkout
uses: actions/checkout@v4
- name: Set PLATFORM
if: ${{ github.event.inputs.platform != '' }}
run: echo "PLATFORM=${{ github.event.inputs.platform }}" >> $GITHUB_ENV
- name: Install bubblewrap and build-essential
run: |
sudo apt-get update
sudo apt-get install bubblewrap build-essential
- name: Run common platform script
shell: bash
run: ./coq_platform_make.sh -packages=${{matrix.variant}} $PLATFORM -dumplogs
- name: Create smoke test kit
shell: bash
run: |
eval $(opam env)
shell_scripts/create_smoke_test_kit.sh
- name: 'Run Linux smoke test kit'
shell: bash
run: |
eval $(opam env)
smoke-test-kit/run-smoke-test.sh
- name: 'Upload smoke test kit'
uses: actions/upload-artifact@v4
with:
name: 'Smoke Test Kit ${{matrix.variant}}'
path: smoke-test-kit
retention-days: 5