From 3cbe8aa1a6f853aabc7645018b2ab7c1e73a9e20 Mon Sep 17 00:00:00 2001 From: Ray Speth Date: Sun, 19 Mar 2023 12:38:15 -0400 Subject: [PATCH] [CI] Add CI tests that run only after a PR is merged to main Currently used for testing pre-release versions of Cython --- .github/workflows/post-merge-tests.yml | 48 ++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/post-merge-tests.yml diff --git a/.github/workflows/post-merge-tests.yml b/.github/workflows/post-merge-tests.yml new file mode 100644 index 0000000000..a4eea6d265 --- /dev/null +++ b/.github/workflows/post-merge-tests.yml @@ -0,0 +1,48 @@ +name: Post-merge Tests +on: + workflow_dispatch: # allow manual triggering of this workflow + inputs: + outgoing_ref: + description: "The ref to be built. Can be a tag, commit hash, or branch name" + required: true + default: "main" + push: + # Run when the main branch is pushed to + branches: + - main + +jobs: + prerelease-cython: + name: Pre-release Cython + runs-on: ubuntu-22.04 + timeout-minutes: 60 + env: + HDF5_LIBDIR: /usr/lib/x86_64-linux-gnu/hdf5/serial + HDF5_INCLUDEDIR: /usr/include/hdf5/serial + steps: + - uses: actions/checkout@v3 + name: Checkout the repository + with: + submodules: recursive + - name: Setup Python + uses: actions/setup-python@v4 + with: + python-version: 3.11 + architecture: x64 + - name: Install Apt dependencies + run: | + sudo apt update + sudo apt install libboost-dev libopenblas-dev libhdf5-dev + - name: Upgrade pip + run: python3 -m pip install -U pip setuptools wheel + - name: Install Python dependencies + run: | + python3 -m pip install ruamel.yaml scons numpy pandas h5py pytest pytest-github-actions-annotate-failures + python3 -m pip install --pre cython + - name: Build Cantera + run: python3 `which scons` build env_vars=all + CXX=clang++-12 CC=clang-12 f90_interface=n extra_lib_dirs=/usr/lib/llvm/lib + -j2 debug=n --debug=time hdf_libdir=$HDF5_LIBDIR hdf_include=$HDF5_INCLUDEDIR + - name: Test Cantera + run: + python3 `which scons` test show_long_tests=yes verbose_tests=yes --debug=time