Skip to content

Add CTest DEPENDS property #45

Add CTest DEPENDS property

Add CTest DEPENDS property #45

name: simmetrx_enabled_pr_comment_trigger_self_hosted
# Controls when the workflow will run
on:
issue_comment:
types: [created]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build_and_test:
permissions:
contents: read
# The type of runner that the job will run on
runs-on: self-hosted
if: |
github.event.issue.pull_request &&
contains(github.event.comment.body, '/runtests') &&
(github.event.comment.user.login == 'cwsmith')
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
with:
ref: refs/pull/${{ github.event.issue.number }}/head
submodules: recursive
path: 'core_${{ github.event.issue.number }}'
- name: build
id: build
shell: bash
run: |
set +e #avoid exiting when lua modules return non-zero on 'warning' messages
module use /opt/scorec/spack/rhel9/v0201_4/lmod/linux-rhel9-x86_64/Core/
module load gcc/12.3.0-iil3lno
module load mpich/4.1.1-xpoyz4t
module load simmetrix-simmodsuite/2024.0-240119dev-7abimo4
module load zoltan/3.83-hap4ggo
module load cmake/3.26.3-2duxfcd
set -e
cmake -S core_${{ github.event.issue.number }} \
-B ${RUNNER_TEMP}/build \
-DCMAKE_CXX_COMPILER=mpicxx \
-DCMAKE_C_COMPILER=mpicc \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DENABLE_ZOLTAN=ON \
-DENABLE_SIMMETRIX=ON \
-DSIM_MPI=mpich4.1.1 \
-DSIM_PARASOLID=ON \
-DSIM_ACIS=ON \
-DSKIP_SIMMETRIX_VERSION_CHECK=ON \
-DMESHES=${{github.workspace}}/core_${{ github.event.issue.number }}/pumi-meshes \
-DIS_TESTING=ON \
-DSCOREC_CXX_WARNINGS=ON \
-DCMAKE_BUILD_TYPE=Release
cmake --build ${RUNNER_TEMP}/build -j 4
ctest --test-dir ${RUNNER_TEMP}/build --output-on-failure
- name: Save Result Link
if: ${{ !cancelled() }} #prepare report unless the job was cancelled
run: |
mkdir -p ./pr
echo "${{ github.event.issue.number }}" > ./pr/issueNumber
echo -n "Test Result: ${{ steps.build.outcome }} " > ./pr/message
echo "[(details)](https://github.com/${{github.repository}}/actions/runs/${{ github.run_id }})" >> ./pr/message
- name: Upload result
if: ${{ !cancelled() }} #upload unless the job was cancelled
uses: actions/upload-artifact@v4
with:
name: pr
path: pr/