[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/proof-general 83507b4c0c 1/2: test various Coq and Emacs v
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/proof-general 83507b4c0c 1/2: test various Coq and Emacs versions using docker-coq-action |
Date: |
Mon, 20 Jun 2022 05:58:48 -0400 (EDT) |
branch: elpa/proof-general
commit 83507b4c0c84a6fcb441159bcd0aa7896b0cd6cb
Author: Hendrik Tews <hendrik@askra.de>
Commit: hendriktews <hendrik@askra.de>
test various Coq and Emacs versions using docker-coq-action
This change switches various CI jobs to proofgeneral/coq-emacs
docker containers, such that these tests run with about 30
different Coq and Emacs version pairs ranging from Coq 8.6 and
Emacs 25.2 to Coq 8.14 and Emacs 27.2. Tests that do not use Coq
continue to use the purcell/setup-emacs method to install Emacs.
---
.github/workflows/test.yml | 208 ++++++++++++++++++++++++++++-----------------
1 file changed, 131 insertions(+), 77 deletions(-)
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 39cf3696de..c7edb84746 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -11,6 +11,9 @@ on:
- '**'
jobs:
+ ###########################################################################
+ ####### compile and build manual
+ ###########################################################################
build:
runs-on: ubuntu-latest
@@ -45,6 +48,9 @@ jobs:
run: sudo apt-get update -y -q && sudo DEBIAN_FRONTEND=noninteractive
apt-get install -y -q --no-install-recommends texinfo
- run: make doc.info
+ ###########################################################################
+ ####### make magic
+ ###########################################################################
# Check that the texinfo sources of the manual can be updated
# with the documentation strings for variables and functions in
# the source code and that the manual is actually up-to-date.
@@ -63,6 +69,7 @@ jobs:
# only the latest one.
- 26.3
- 27.2
+ # don't cancel all in-progress jobs if one matrix job fails:
fail-fast: false
steps:
@@ -76,28 +83,46 @@ jobs:
- run: make -C doc magic
- run: git diff --exit-code -- doc
+ ###########################################################################
+ ####### first tests: ci/test.sh runs tests in ci/coq-tests.el
+ ###########################################################################
test:
runs-on: ubuntu-latest
-
strategy:
matrix:
- # emacs_version:
- # the emacs version in Ubuntu 18.04 LTS
- # - 25.2
- # the emacs version in Debian Buster
- # - 26.1
- # the emacs version in Debian Sid
- # - 26.3
- coq_version:
- - '8.9'
- - '8.10'
- - '8.11'
- - '8.12'
- - '8.13'
- - '8.14'
- - '8.15'
- ocaml_version:
- - minimal
+ coq_emacs_version:
+ - coq-8.6-emacs-25.2
+ - coq-8.6-emacs-27.2
+ - coq-8.7-emacs-25.3
+ - coq-8.7-emacs-27.2
+ - coq-8.8-emacs-26.1
+ - coq-8.8-emacs-27.2
+ - coq-8.9-emacs-26.2
+ - coq-8.9-emacs-27.2
+ - coq-8.10-emacs-27.2
+ - coq-8.11-emacs-25.2
+ - coq-8.11-emacs-26.2
+ - coq-8.11-emacs-26.3
+ - coq-8.11-emacs-27.2
+ - coq-8.12-emacs-25.2
+ - coq-8.12-emacs-26.2
+ - coq-8.12-emacs-26.3
+ - coq-8.12-emacs-27.1
+ - coq-8.12-emacs-27.2
+ - coq-8.13-emacs-25.2
+ - coq-8.13-emacs-26.2
+ - coq-8.13-emacs-26.3
+ - coq-8.13-emacs-27.1
+ - coq-8.13-emacs-27.2
+ - coq-8.14-emacs-25.1
+ - coq-8.14-emacs-25.2
+ - coq-8.14-emacs-25.3
+ - coq-8.14-emacs-26.1
+ - coq-8.14-emacs-26.2
+ - coq-8.14-emacs-26.3
+ - coq-8.14-emacs-27.1
+ - coq-8.14-emacs-27.2
+ # XXXX 8.15 is missing
# at most 20 concurrent jobs per free account
# cf.
https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#usage-limit
max-parallel: 6
@@ -114,45 +139,64 @@ jobs:
id: docker-coq-action
with:
opam_file: 'dummy.opam'
- coq_version: ${{ matrix.coq_version }}
- ocaml_version: ${{ matrix.ocaml_version }}
+ custom_image: proofgeneral/coq-emacs:${{matrix.coq_emacs_version}}
custom_script: |
startGroup Print opam config
opam config list; opam repo list; opam list
endGroup
- startGroup Install emacs
- sudo apt-get update -y -q
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -q
--no-install-recommends emacs
+ startGroup other relevant configuration
+ echo getconf _NPROCESSORS_ONLN: $(getconf _NPROCESSORS_ONLN)
+ emacs --version
+ coqc --version
+ ocamlc -v
endGroup
startGroup Run tests
sudo chown -R coq:coq ./ci
make tests
endGroup
- # - run: echo "::remove-matcher owner=ert-problem-matcher::"
-
- compile-test:
+ ###########################################################################
+ ####### compilation tests: all tests in subdirectories of ci/compile-tests
+ ###########################################################################
+ compile-tests:
runs-on: ubuntu-latest
-
strategy:
- # change to selected versions of coq-emacs docker containers
matrix:
- coq_version:
- - '8.9'
- - '8.10'
- - '8.11'
- - '8.12'
- - '8.13'
- - '8.14'
- - '8.15'
- ocaml_version:
- - minimal
- # at most 20 concurrent jobs per free account
- # cf.
https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#usage-limit
- max-parallel: 6
+ coq_emacs_version:
+ - coq-8.6-emacs-25.2
+ - coq-8.6-emacs-27.2
+ - coq-8.7-emacs-25.3
+ - coq-8.7-emacs-27.2
+ - coq-8.8-emacs-26.1
+ - coq-8.8-emacs-27.2
+ - coq-8.9-emacs-26.2
+ - coq-8.9-emacs-27.2
+ - coq-8.10-emacs-27.2
+ - coq-8.11-emacs-25.2
+ - coq-8.11-emacs-26.2
+ - coq-8.11-emacs-26.3
+ - coq-8.11-emacs-27.2
+ - coq-8.12-emacs-25.2
+ - coq-8.12-emacs-26.2
+ - coq-8.12-emacs-26.3
+ - coq-8.12-emacs-27.1
+ - coq-8.12-emacs-27.2
+ - coq-8.13-emacs-25.2
+ - coq-8.13-emacs-26.2
+ - coq-8.13-emacs-26.3
+ - coq-8.13-emacs-27.1
+ - coq-8.13-emacs-27.2
+ - coq-8.14-emacs-25.1
+ - coq-8.14-emacs-25.2
+ - coq-8.14-emacs-25.3
+ - coq-8.14-emacs-26.1
+ - coq-8.14-emacs-26.2
+ - coq-8.14-emacs-26.3
+ - coq-8.14-emacs-27.1
+ - coq-8.14-emacs-27.2
+ # XXXX 8.15 missing
# don't cancel all in-progress jobs if one matrix job fails:
fail-fast: false
-
steps:
- uses: actions/checkout@v2
@@ -163,44 +207,59 @@ jobs:
id: docker-coq-action
with:
opam_file: 'dummy.opam'
- coq_version: ${{ matrix.coq_version }}
- ocaml_version: ${{ matrix.ocaml_version }}
+ custom_image: proofgeneral/coq-emacs:${{matrix.coq_emacs_version}}
custom_script: |
- startGroup Print opam config
- opam config list; opam repo list; opam list
- endGroup
- startGroup Install emacs
- sudo apt-get update -y -q
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -q
--no-install-recommends emacs
- endGroup
startGroup other relevant configuration
- getconf _NPROCESSORS_ONLN
+ echo getconf _NPROCESSORS_ONLN: $(getconf _NPROCESSORS_ONLN)
emacs --version
coqc --version
- ocaml --version
+ ocamlc -v
endGroup
startGroup Run tests
sudo chown -R coq:coq ./ci
make -C ci/compile-tests test
endGroup
+ ###########################################################################
+ ####### Additional tests in ci/simple-tests
+ ###########################################################################
simple-tests:
runs-on: ubuntu-latest
-
strategy:
- # change to selected versions of coq-emacs docker containers
matrix:
- coq_version:
- - '8.9'
- - '8.10'
- - '8.11'
- - '8.12'
- - '8.13'
- - '8.14'
- - '8.15'
- ocaml_version:
- - minimal
- max-parallel: 6
+ coq_emacs_version:
+ - coq-8.6-emacs-25.2
+ - coq-8.6-emacs-27.2
+ - coq-8.7-emacs-25.3
+ - coq-8.7-emacs-27.2
+ - coq-8.8-emacs-26.1
+ - coq-8.8-emacs-27.2
+ - coq-8.9-emacs-26.2
+ - coq-8.9-emacs-27.2
+ - coq-8.10-emacs-27.2
+ - coq-8.11-emacs-25.2
+ - coq-8.11-emacs-26.2
+ - coq-8.11-emacs-26.3
+ - coq-8.11-emacs-27.2
+ - coq-8.12-emacs-25.2
+ - coq-8.12-emacs-26.2
+ - coq-8.12-emacs-26.3
+ - coq-8.12-emacs-27.1
+ - coq-8.12-emacs-27.2
+ - coq-8.13-emacs-25.2
+ - coq-8.13-emacs-26.2
+ - coq-8.13-emacs-26.3
+ - coq-8.13-emacs-27.1
+ - coq-8.13-emacs-27.2
+ - coq-8.14-emacs-25.1
+ - coq-8.14-emacs-25.2
+ - coq-8.14-emacs-25.3
+ - coq-8.14-emacs-26.1
+ - coq-8.14-emacs-26.2
+ - coq-8.14-emacs-26.3
+ - coq-8.14-emacs-27.1
+ - coq-8.14-emacs-27.2
+ # XXXX 8.15 is missing
# don't cancel all in-progress jobs if one matrix job fails:
fail-fast: false
@@ -214,27 +273,22 @@ jobs:
id: docker-coq-action
with:
opam_file: 'dummy.opam'
- coq_version: ${{ matrix.coq_version }}
- ocaml_version: ${{ matrix.ocaml_version }}
+ custom_image: proofgeneral/coq-emacs:${{matrix.coq_emacs_version}}
custom_script: |
- startGroup Print opam config
- opam config list; opam repo list; opam list
- endGroup
- startGroup Install emacs
- sudo apt-get update -y -q
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -q
--no-install-recommends emacs
- endGroup
startGroup other relevant configuration
- getconf _NPROCESSORS_ONLN
+ echo getconf _NPROCESSORS_ONLN: $(getconf _NPROCESSORS_ONLN)
emacs --version
coqc --version
- ocaml --version
+ ocamlc -v
endGroup
startGroup Run tests
sudo chown -R coq:coq ./ci
make -C ci/simple-tests all
endGroup
+ ###########################################################################
+ ####### indentation tests in ci/test-indent
+ ###########################################################################
# Run indentation tests in ci/test-indent on all supported emacs
# versions without coq installed.
test-indent: