fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
+ container_directory: [none, fedora-latest, centos-7, alpine-edge]
+ exclude:
+ - os: macos-latest
+ container_directory: fedora-latest
+ - os: macos-latest
+ container_directory: centos-7
+ - os: macos-latest
+ container_directory: alpine-edge
+ - os: windows-latest
+ container_directory: fedora-latest
+ - os: windows-latest
+ container_directory: centos-7
+ - os: windows-latest
+ container_directory: alpine-edge
+ - os: ubuntu-latest
+ container_directory: none
name: Compile and Run Tests
steps:
- uses: actions/checkout@v2
+
- uses: actions/checkout@v2
+ if: runner.os == 'Windows'
with:
repository: wolfv/argp-standalone
path: argp-standalone
- name: install mamba
uses: mamba-org/provision-with-micromamba@main
+ if: runner.os == 'Windows' || runner.os == 'macOS'
with:
environment-file: .github/environment.yml
- - name: Compile zchunk
+
+ - name: Compile zchunk in container
+ if: runner.os == 'Linux'
+ run: ./autotest/${{ matrix.container_directory }}/build.sh
+
+ - name: Run zchunk tests in container
+ if: runner.os == 'Linux'
+ run: ./autotest/${{ matrix.container_directory }}/test.sh
+
+ - name: Compile zchunk on macOS
shell: bash -l {0}
- if: runner.os != 'Windows'
+ if: runner.os == 'macOS'
run: |
meson builddir --prefix=$CONDA_PREFIX
cd builddir
ninja
- - name: Run zchunk tests
+
+ - name: Run zchunk tests on macOS
shell: bash -l {0}
- if: runner.os != 'Windows'
+ if: runner.os == 'macOS'
run: |
cd builddir
ninja test
- - name: Compile argp-standalone
+
+ - name: Compile argp-standalone for Windows
shell: cmd /C CALL {0}
if: runner.os == 'Windows'
run: |
meson setup builddir
meson compile -C builddir --prefix=%CONDA_PREFIX%\Library
meson install -C builddir
- - name: Compile zchunk
+
+ - name: Compile zchunk on Windows
shell: cmd /C CALL {0}
if: runner.os == 'Windows'
run: |
CALL micromamba activate zchunk_test_env
meson setup builddir
meson compile -C builddir
- - name: Run zchunk tests
+
+ - name: Run zchunk tests on Windows
shell: cmd /C CALL {0}
if: runner.os == 'Windows'
run: |