Skip to content

Extend CI to more platforms #18

Extend CI to more platforms

Extend CI to more platforms #18

Workflow file for this run

name: CI
on:
push:
branches:
- main
paths-ignore:
- 'AUTHORS.md'
- 'LICENSE.md'
- 'README.md'
pull_request:
paths-ignore:
- 'AUTHORS.md'
- 'LICENSE.md'
- 'README.md'
workflow_dispatch:
inputs:
debug_enabled:
description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)'
required: false
default: false
jobs:
test:
if: "!contains(github.event.head_commit.message, 'skip ci')"
name: ${{ matrix.os }} - ${{ matrix.compiler }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
compiler:
- gfortran-11
- gfortran-13
shell:
- bash
include:
- os: windows-latest
compiler: gfortran
shell: 'msys2 {0}'
defaults:
run:
shell: ${{ matrix.shell }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- uses: msys2/setup-msys2@v2
if: ${{ matrix.os == 'windows-latest' }}
with:
update: true
install: git base-devel mingw-w64-x86_64-toolchain w64-x86_64-cmake
- name: Show compiler version information
run: |
${{ matrix.compiler }} --version
- name: Configure
run: |
mkdir build && cd build
FC=${{ matrix.compiler }} cmake .. -DCMAKE_INSTALL_PREFIX=../install
- name: Build
run: |
cd build
make -j 2
- name: Install
run: |
cd build
make install
- name: Run test
run: |
install/bin/test_smesh
# Enable tmate debugging of manually-triggered workflows if the input option was provided
- name: Setup tmate session for debugging
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled && always() }}
uses: mxschmitt/action-tmate@v3
timeout-minutes: 15