diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2021-06-10 17:42:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-10 19:42:02 +0300 |
commit | 0accc3b72da75226deaea65ac0f4566d3f0ccc4a (patch) | |
tree | 8aa2661d54adef011e692d8541389d1382c73702 /.github | |
parent | 5a5ab790780d93c99a78a29b580f6c0e5f967d3f (diff) | |
download | meson-0accc3b72da75226deaea65ac0f4566d3f0ccc4a.zip meson-0accc3b72da75226deaea65ac0f4566d3f0ccc4a.tar.gz meson-0accc3b72da75226deaea65ac0f4566d3f0ccc4a.tar.bz2 |
Move Cygwin tests to a GitHub workflow (#8829)
* CI: Don't run cross-only test when other workflows are changed
* CI: Move Cygwin test run from Azure Pipelines to GitHub workflow
Also review installed package list, dropping detritus from 42792554, not
removed in f5ed85d7.
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/cygwin.yml | 89 | ||||
-rw-r--r-- | .github/workflows/nonative.yml | 10 |
2 files changed, 99 insertions, 0 deletions
diff --git a/.github/workflows/cygwin.yml b/.github/workflows/cygwin.yml new file mode 100644 index 0000000..32d33d8 --- /dev/null +++ b/.github/workflows/cygwin.yml @@ -0,0 +1,89 @@ +name: cygwin + +on: + push: + paths: + - "mesonbuild/**" + - "test cases/**" + - ".github/workflows/cygwin.yml" + - "run*tests.py" + pull_request: + paths: + - "mesonbuild/**" + - "test cases/**" + - ".github/workflows/cygwin.yml" + - "run*tests.py" + +jobs: + test: + runs-on: windows-latest + name: ${{ matrix.NAME }} + strategy: + fail-fast: false + matrix: + include: + - NAME: gccx64ninja + ARCH: x86_64 + + steps: + # cache should be saved on failure, but the action doesn't support that + # https://github.com/actions/cache/issues/92 + - uses: actions/cache@v1 + with: + # should use 'pip3 cache dir' to discover this path + path: C:\cygwin\home\runneradmin\.cache\pip + key: cygwin-pip-${{ github.run_number }} + restore-keys: cygwin-pip- + + - run: git config --global core.autocrlf input + + - uses: actions/checkout@v2 + + - uses: cygwin/cygwin-install-action@master + with: + platform: ${{ matrix.ARCH }} + packages: | + cmake + gcc-fortran + gcc-objc++ + gcc-objc + git + gobject-introspection + gtk-doc + libboost-devel + libglib2.0-devel + libgtk3-devel + libxml2-devel + libxslt-devel + ninja + python2-devel + python3-devel + python3-libxml2 + python3-libxslt + python38-pip + python38-wheel + vala + zlib-devel + + - name: Run pip + run: | + export PATH=/usr/bin:/usr/local/bin:$(cygpath ${SYSTEMROOT})/system32 + python3 -m pip --disable-pip-version-check install gcovr jsonschema pefile pytest pytest-xdist + shell: C:\cygwin\bin\bash.exe --noprofile --norc -o igncr -eo pipefail '{0}' + + - name: Run tests + run: | + export PATH=/usr/bin:/usr/local/bin:$(cygpath ${SYSTEMROOT})/system32 + python3 run_tests.py --backend=ninja + env: + # Cygwin's static boost installation is broken (some static library + # variants such as boost_thread are not present) + SKIP_STATIC_BOOST: 1 + shell: C:\cygwin\bin\bash.exe --noprofile --norc -o igncr -eo pipefail '{0}' + + - uses: actions/upload-artifact@v2 + with: + name: ${{ matrix.NAME }} + path: meson-test-run.* + # test log should be saved on failure + if: ${{ !cancelled() }} diff --git a/.github/workflows/nonative.yml b/.github/workflows/nonative.yml index fd6045f..1fc43b4 100644 --- a/.github/workflows/nonative.yml +++ b/.github/workflows/nonative.yml @@ -6,7 +6,17 @@ on: - master # Stable branches such as 0.56 or the eventual 1.0 - '[0-9]+.[0-9]+' + paths: + - "mesonbuild/**" + - "test cases/**" + - ".github/workflows/nonative.yml" + - "run*tests.py" pull_request: + paths: + - "mesonbuild/**" + - "test cases/**" + - ".github/workflows/nonative.yml" + - "run*tests.py" jobs: cross-only-armhf: |