ci: add GitHub Actions
Change-Id: Idc715edf136550b088f89c19b581f5478b296653
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..e7188d2
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,57 @@
+name: CI
+on:
+ push:
+ pull_request:
+ workflow_dispatch:
+
+jobs:
+ linux:
+ name: ${{ matrix.compiler }} on ${{ matrix.os }}
+ strategy:
+ fail-fast: false
+ matrix:
+ compiler: [g++-8, g++-9, g++-10, g++-11,
+ clang++-7, clang++-8, clang++-9, clang++-10, clang++-11, clang++-12]
+ os: [ubuntu-20.04]
+ include:
+ - compiler: g++-7
+ os: ubuntu-18.04
+ - compiler: clang++-5.0
+ os: ubuntu-18.04
+ - compiler: clang++-6.0
+ os: ubuntu-18.04
+ runs-on: ${{ matrix.os }}
+ env:
+ CXX: ${{ matrix.compiler }}
+ NODE_LABELS: Linux Ubuntu
+ WAF_JOBS: 2
+ steps:
+ - name: Install C++ compiler
+ run: |
+ sudo apt-get -qy install ${CXX/clang++/clang}
+ ${CXX} --version
+ - name: Checkout
+ uses: actions/checkout@v2
+ - name: Build and test
+ run: ./.jenkins
+
+ macos:
+ name: Xcode ${{ matrix.xcode }} on ${{ matrix.os }}
+ strategy:
+ fail-fast: false
+ matrix:
+ xcode: ['11.3', '11.7', '12.4']
+ os: [macos-10.15]
+ runs-on: ${{ matrix.os }}
+ env:
+ NODE_LABELS: OSX OSX-10.15
+ WAF_JOBS: 3
+ steps:
+ - name: Set up Xcode
+ uses: maxim-lobanov/setup-xcode@v1
+ with:
+ xcode-version: ${{ matrix.xcode }}
+ - name: Checkout
+ uses: actions/checkout@v2
+ - name: Build and test
+ run: ./.jenkins