diff --git a/.github/actions/setup-thapi-deps/action.yml b/.github/actions/setup-thapi-deps/action.yml index 70fb17b..e9e4b54 100644 --- a/.github/actions/setup-thapi-deps/action.yml +++ b/.github/actions/setup-thapi-deps/action.yml @@ -31,7 +31,6 @@ runs: # they cause build failures in elfutils). . external/spack/share/spack/setup-env.sh spack compiler find - spack external find --all --exclude bzip2 --exclude xz - name: Setup spack mirror shell: bash run: | @@ -66,7 +65,7 @@ runs: # Let spack find newly installed llvm/clang. spack compiler find - spack external find --all --exclude bzip2 --exclude xz + spack external find llvm LLVM_FULL_VER=`llvm-config-${LLVM_VER} --version` echo "LLVM_FULL_VER=${LLVM_FULL_VER}" >> ${GITHUB_ENV} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b29930a..3a3d612 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,6 +17,7 @@ env: SPACK_OPT: "--concurrent-packages 2 --show-log-on-error --fail-fast" CACHE_DIR: "${{ github.workspace }}/thapi_cache_${{ github.run_id }}" CACHE_DIR_LEGACY: "${{ github.workspace }}/thapi_cache_legacy_${{ github.run_id }}" + EXCLUSIONS: '!todo' jobs: install_legacy_dependencies: runs-on: ubuntu-latest @@ -112,7 +113,8 @@ jobs: install: strategy: matrix: - version: ['thapi@0.0.13', 'thapi@master', 'thapi@develop', 'thapi@develop+archive', + version: ['thapi@0.0.13+sync-daemon-mpi', 'thapi@master+sync-daemon-mpi', + 'thapi@develop+sync-daemon-mpi', 'thapi@develop+sync-daemon-mpi+archive', 'thapi@develop ^lttng-tools@master ^lttng-ust@master ^babeltrace2@master'] needs: install_dependencies runs-on: ubuntu-latest @@ -146,6 +148,28 @@ jobs: # (Building thapi@develop with unstable lttng@master versions). . external/spack/share/spack/setup-env.sh spack install $SPACK_OPT ${{ matrix.version }} ^llvm@${LLVM_FULL_VER} || true + - name: Install dependencies for unit tests + if: ${{ matrix.version == 'thapi@develop+sync-daemon-mpi+archive' }} + run: | + # Use apt for some tools + sudo apt update + sudo apt install -y bats clinfo openmpi-bin libopenmpi-dev + + # and install ittapi and py-ittapi from spack + . external/spack/share/spack/setup-env.sh + spack install ittapi py-ittapi + - name: Run unit tests + if: ${{ matrix.version == 'thapi@develop+sync-daemon-mpi+archive' }} + run: | + . external/spack/share/spack/setup-env.sh + spack load ${{ matrix.version }} ittapi py-ittapi + + git clone --depth 1 https://github.com/argonne-lcf/THAPI.git -b devel + cd ./THAPI + + # Run tests twice to make sure we do proper cleanup: + bats --filter-tags ${EXCLUSIONS} ./integration_tests/ + bats --filter-tags ${EXCLUSIONS} ./integration_tests/ - name: Block to allow inspecting failures run: sleep 120m if: ${{ failure() && inputs.debug_enabled }} diff --git a/.github/workflows/cron.yml b/.github/workflows/cron.yml index 831e5ab..10899ee 100644 --- a/.github/workflows/cron.yml +++ b/.github/workflows/cron.yml @@ -1,4 +1,4 @@ -name: Install Thapi master and develop every week +name: THAPI@master and THAPI@develop weekly build on: schedule: # At 00:00 on Sunday.” diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 1e3b88a..16492fc 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -7,13 +7,6 @@ on: branches: - main workflow_dispatch: - inputs: - debug_enabled: - type: boolean - description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)' - required: false - default: false - jobs: ruff_format: runs-on: ubuntu-latest