aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThéo Zimmermann2020-12-07 11:22:17 +0100
committerThéo Zimmermann2020-12-10 13:11:57 +0100
commitb481ae12fb55cc558d58b9902f1020e43f76fc4e (patch)
treefdda6fbb2a55e2891444d2b10484fa2fe6dae28d
parent358e923ea477fff4ffe9ebac9c1910a65afe9e90 (diff)
Move Azure jobs to GitHub Actions.
-rw-r--r--.github/workflows/ci.yml91
-rw-r--r--README.md8
-rw-r--r--azure-pipelines.yml117
-rwxr-xr-xdev/ci/azure-build.sh1
4 files changed, 96 insertions, 121 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000000..f5527192e0
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,91 @@
+name: GitHub CI
+
+on: [push, pull_request]
+
+jobs:
+ Windows:
+ runs-on: windows-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up Cygwin
+ uses: egor-tensin/setup-cygwin@v1
+ with:
+ packages: rsync patch diffutils make unzip m4 findutils time wget curl git mingw64-x86_64-binutils mingw64-x86_64-gcc-core mingw64-x86_64-gcc-g++ mingw64-x86_64-pkg-config mingw64-x86_64-windows_default_manifest mingw64-x86_64-headers mingw64-x86_64-runtime mingw64-x86_64-pthreads mingw64-x86_64-zlib mingw64-x86_64-gmp python3
+
+ - name: Create home dir
+ run: |
+ C:\tools\cygwin\bin\bash.exe --login -c 'env'
+
+ - name: Install opam
+ run: |
+ C:\tools\cygwin\bin\bash.exe dev\ci\azure-opam.sh
+
+ - name: Build Coq
+ run: |
+ C:\tools\cygwin\bin\bash.exe dev\ci\azure-build.sh
+
+ macOS:
+ runs-on: macOS-10.15
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Install system dependencies
+ run: |
+ brew install gnu-time opam gtksourceview3 adwaita-icon-theme
+ pip3 install macpack
+
+ - name: Install OCaml dependencies
+ run: |
+ export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig
+ opam init -a -j "$NJOBS" --compiler=ocaml-base-compiler.$COMPILER
+ opam switch set ocaml-base-compiler.$COMPILER
+ eval $(opam env)
+ opam update
+ opam install -j "$NJOBS" ocamlfind${FINDLIB_VER} ounit lablgtk3-sourceview3 zarith.1.10
+ opam list
+ env:
+ COMPILER: "4.11.1"
+ FINDLIB_VER: ".1.8.1"
+ OPAMYES: "true"
+ MACOSX_DEPLOYMENT_TARGET: "10.11"
+ NJOBS: "2"
+
+ - name: Build Coq
+ run: |
+ eval $(opam env)
+ ./configure -prefix "$(pwd)/_install_ci" -warn-error yes -native-compiler no -coqide opt
+ make -j "$NJOBS" byte
+ make -j "$NJOBS"
+ env:
+ MACOSX_DEPLOYMENT_TARGET: "10.11"
+ NJOBS: "2"
+
+ - name: Run Coq Test Suite
+ run: |
+ eval $(opam env)
+ export OCAMLPATH=$(pwd):"$OCAMLPATH"
+ make -j "$NJOBS" test-suite PRINT_LOGS=1
+ env:
+ NJOBS: "2"
+
+ - name: Install Coq
+ run: |
+ make install
+
+ - name: Create the dmg bundle
+ run: |
+ eval $(opam env)
+ export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig
+ export OUTDIR="$(pwd)/_install_ci"
+ ./dev/build/osx/make-macos-dmg.sh
+ env:
+ MACOSX_DEPLOYMENT_TARGET: "10.11"
+ NJOBS: "2"
+
+ - uses: actions/upload-artifact@v2
+ with:
+ name: coq-macOS-installer
+ path: _build/*.dmg
diff --git a/README.md b/README.md
index a5be6e22b8..743bcf128a 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
# Coq
-[![GitLab][gitlab-badge]][gitlab-link]
-[![Azure Pipelines][azure-badge]][azure-link]
+[![GitLab CI][gitlab-badge]][gitlab-link]
+[![GitHub CI][action-badge]][action-link]
[![Zulip][zulip-badge]][zulip-link]
[![Discourse][discourse-badge]][discourse-link]
[![DOI][doi-badge]][doi-link]
@@ -9,8 +9,8 @@
[gitlab-badge]: https://gitlab.com/coq/coq/badges/master/pipeline.svg
[gitlab-link]: https://gitlab.com/coq/coq/commits/master
-[azure-badge]: https://dev.azure.com/coq/coq/_apis/build/status/coq.coq?branchName=master
-[azure-link]: https://dev.azure.com/coq/coq/_build/latest?definitionId=1?branchName=master
+[action-badge]: https://github.com/coq/coq/workflows/GitHub%20CI/badge.svg?branch=master
+[action-link]: https://github.com/coq/coq/actions?query=workflow:"GitHub%20CI"
[discourse-badge]: https://img.shields.io/badge/Discourse-forum-informational.svg
[discourse-link]: https://coq.discourse.group/
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
deleted file mode 100644
index 761c22ec60..0000000000
--- a/azure-pipelines.yml
+++ /dev/null
@@ -1,117 +0,0 @@
-
-# NB: image names can be found at
-# https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted
-
-variables:
- NJOBS: "2"
-
-jobs:
-- job: Windows
- pool:
- vmImage: 'vs2017-win2016'
-
- # Equivalent to allow_failure: true
- # continueOnError: true
-
- steps:
- - checkout: self
- fetchDepth: 10
-
- # cygwin package list not checked for minimality
- - script: |
- powershell -Command "(New-Object Net.WebClient).DownloadFile('http://www.cygwin.com/setup-x86_64.exe', 'setup-x86_64.exe')"
- SET CYGROOT=C:\cygwin64
- SET CYGCACHE=%CYGROOT%\var\cache\setup
- setup-x86_64.exe -qnNdO -R %CYGROOT% -l %CYGCACHE% -s %CYGMIRROR% -P rsync -P patch -P diffutils -P make -P unzip -P m4 -P findutils -P time -P wget -P curl -P git -P mingw64-x86_64-binutils,mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++,mingw64-x86_64-pkg-config,mingw64-x86_64-windows_default_manifest -P mingw64-x86_64-headers,mingw64-x86_64-runtime,mingw64-x86_64-pthreads,mingw64-x86_64-zlib,mingw64-x86_64-gmp -P python3
-
- SET TARGET_ARCH=x86_64-w64-mingw32
- SET CD_MFMT=%cd:\=/%
- SET RESULT_INSTALLDIR_CFMT=%CD_MFMT:C:/=/cygdrive/c/%
- C:\cygwin64\bin\bash -l %cd%\dev\build\windows\configure_profile.sh
- displayName: 'Install cygwin'
- env:
- CYGMIRROR: "http://mirror.cs.vt.edu/pub/cygwin/cygwin"
-
- - script: C:\cygwin64\bin\bash -l %cd%\dev\ci\azure-opam.sh
- displayName: 'Install opam'
-
- - script: C:\cygwin64\bin\bash -l %cd%\dev\ci\azure-build.sh
- displayName: 'Build Coq'
-
- # We are hitting a bug where Dune is rebuilding Coq to run the
- # test-suite, also it seems to time out, so we just build for now
- #
- # - script: C:\cygwin64\bin\bash -l %cd%\dev\ci\azure-test.sh
- # displayName: 'Test Coq'
-
- - publish: _build/log
- artifact: Dune Build Log
- condition: always()
-
-- job: macOS
- pool:
- vmImage: 'macOS-10.14'
-
- variables:
- MACOSX_DEPLOYMENT_TARGET: '10.11'
-
- steps:
-
- - checkout: self
- fetchDepth: 10
-
- - script: |
- set -e
- export export HOMEBREW_NO_INSTALL_CLEANUP=1
- brew install gnu-time opam gtksourceview3 adwaita-icon-theme
- pip3 install macpack
- displayName: 'Install system dependencies'
-
- - script: |
- set -e
- export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig
- opam init -a -j "$NJOBS" --compiler=ocaml-base-compiler.$COMPILER
- opam switch set ocaml-base-compiler.$COMPILER
- eval $(opam env)
- opam update
- opam install -j "$NJOBS" ocamlfind${FINDLIB_VER} ounit lablgtk3-sourceview3 zarith.1.10
- opam list
- displayName: 'Install OCaml dependencies'
- env:
- COMPILER: "4.11.1"
- FINDLIB_VER: ".1.8.1"
- OPAMYES: "true"
-
- - script: |
- set -e
-
- eval $(opam env)
- ./configure -prefix '$(Build.BinariesDirectory)' -warn-error yes -native-compiler no -coqide opt
- make -j "$NJOBS" byte
- make -j "$NJOBS"
- displayName: 'Build Coq'
-
- - script: |
- eval $(opam env)
- export OCAMLPATH=$(pwd):"$OCAMLPATH"
- make -j "$NJOBS" test-suite PRINT_LOGS=1
- displayName: 'Run Coq Test Suite'
-
- - script: |
- make install
- displayName: 'Install Coq'
-
- - script: |
- set -e
- eval $(opam env)
- export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig
- ./dev/build/osx/make-macos-dmg.sh
- mv _build/*.dmg "$(Build.ArtifactStagingDirectory)/"
- displayName: 'Create the dmg bundle'
- env:
- OUTDIR: '$(Build.BinariesDirectory)'
-
- - task: PublishBuildArtifacts@1
- inputs:
- pathtoPublish: '$(Build.ArtifactStagingDirectory)'
- artifactName: coq-macOS-installer
diff --git a/dev/ci/azure-build.sh b/dev/ci/azure-build.sh
index 494651c5bf..1b02cd45ed 100755
--- a/dev/ci/azure-build.sh
+++ b/dev/ci/azure-build.sh
@@ -4,4 +4,5 @@ set -e -x
cd $(dirname $0)/../..
+eval $(opam env)
dune build coq.install coqide-server.install