Skip to content

Update electron/positron bremss #5553

Update electron/positron bremss

Update electron/positron bremss #5553

Workflow file for this run

name: Builds
on:
push:
pull_request:
branches:
- main
# Cancel existing jobs on new pushes.
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
# All the different build/test jobs.
jobs:
# Native build jobs.
native:
# The different build modes to test.
strategy:
matrix:
BUILD_TYPE: ["Debug"]
PLATFORM:
- OS: "ubuntu-latest"
GENERATOR: "Unix Makefiles"
- OS: "macos-latest"
GENERATOR: "Xcode"
# The system to run on.
runs-on: ${{ matrix.PLATFORM.OS }}
name: "native (${{ matrix.PLATFORM.OS }})"
# The build/test steps to execute.
steps:
# Use a standard checkout of the code.
- uses: actions/checkout@v2
# Run the CMake configuration.
- name: Configure
run: cmake --preset default-fp64
-DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }}
-DDETRAY_BUILD_UNITTESTS=ON
-DDETRAY_BUILD_INTEGRATIONTESTS=ON
-DDETRAY_BUILD_BENCHMARKS=ON
-DDETRAY_BUILD_TUTORIALS=ON
-DDETRAY_FAIL_ON_WARNINGS=ON
-S ${{ github.workspace }} -B build
-G "${{ matrix.PLATFORM.GENERATOR }}"
# Perform the build.
- name: Build
run: cmake --build build --config ${{ matrix.BUILD_TYPE }}
# Containerised build jobs.
host-container:
# The different build modes to test.
strategy:
matrix:
BUILD_TYPE: ["Release", "Debug"]
SCALAR_TYPE: ["float", "double"]
PLATFORM:
- NAME: "HOST"
CXX_STANDARD: "20"
CONTAINER: "ghcr.io/acts-project/ubuntu2404:56"
OPTIONS: -DDETRAY_EIGEN_PLUGIN=ON -DDETRAY_SMATRIX_PLUGIN=ON -DDETRAY_VC_PLUGIN=ON
# The system to run on.
runs-on: ubuntu-latest
container: ${{ matrix.PLATFORM.CONTAINER }}
name: "host-container (${{ matrix.PLATFORM.NAME }}, C++${{ matrix.PLATFORM.CXX_STANDARD }})"
# Use BASH as the shell from the image.
defaults:
run:
shell: bash
# Set the path to the test data files
env:
DETRAY_DATA_DIRECTORY: ${{ github.workspace }}/data/
DETRAY_BFIELD_FILE: ${{ github.workspace }}/data/odd-bfield_v0_9_0.cvf
# The build/test steps to execute.
steps:
# Use a standard checkout of the code.
- uses: actions/checkout@v2
# Get the data files for the tests
- name: Download data files
run: data/detray_data_get_files.sh
# Run the CMake configuration.
- name: Configure
run: |
source ${GITHUB_WORKSPACE}/.github/ci_setup.sh ${{ matrix.PLATFORM.NAME }}
cmake \
-DCMAKE_CXX_STANDARD=${{ matrix.PLATFORM.CXX_STANDARD }} \
-DDETRAY_BUILD_UNITTESTS=ON \
-DDETRAY_BUILD_INTEGRATIONTESTS=ON \
-DDETRAY_BUILD_BENCHMARKS=ON \
-DDETRAY_BUILD_TUTORIALS=ON \
-DDETRAY_FAIL_ON_WARNINGS=ON \
-DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }} \
-DDETRAY_CUSTOM_SCALARTYPE=${{ matrix.SCALAR_TYPE }} \
${{ matrix.PLATFORM.OPTIONS }} \
-S ${GITHUB_WORKSPACE} \
-B build
# Perform the build.
- name: Build
run: |
source ${GITHUB_WORKSPACE}/.github/ci_setup.sh ${{ matrix.PLATFORM.NAME }}
cmake --build build
# Run the unit test(s).
- name: Test
if: "matrix.BUILD_TYPE == 'Release'"
run: |
cd build
source ${GITHUB_WORKSPACE}/.github/ci_setup.sh ${{ matrix.PLATFORM.NAME }}
ctest --output-on-failure
# Containerised build jobs.
device-container:
# The different build modes to test.
strategy:
matrix:
BUILD_TYPE: ["Debug"]
SCALAR_TYPE: ["float", "double"]
PLATFORM:
- NAME: "CUDA"
CXX_STANDARD: "20"
CONTAINER: "ghcr.io/acts-project/ubuntu2404_cuda:56"
OPTIONS: -DDETRAY_EIGEN_PLUGIN=ON -DDETRAY_SMATRIX_PLUGIN=OFF -DDETRAY_VC_PLUGIN=OFF
- NAME: "SYCL"
CXX_STANDARD: "20"
CONTAINER: "ghcr.io/acts-project/ubuntu2404_oneapi:56"
OPTIONS: -DDETRAY_BUILD_CUDA=OFF -DDETRAY_BUILD_SYCL=ON -DDETRAY_EIGEN_PLUGIN=ON -DDETRAY_SMATRIX_PLUGIN=OFF -DDETRAY_VC_PLUGIN=OFF
# The system to run on.
runs-on: ubuntu-latest
container: ${{ matrix.PLATFORM.CONTAINER }}
name: "device-container (${{ matrix.PLATFORM.NAME }}, C++${{ matrix.PLATFORM.CXX_STANDARD }})"
# Use BASH as the shell from the image.
defaults:
run:
shell: bash
# The build/test steps to execute.
steps:
# Use a standard checkout of the code.
- uses: actions/checkout@v2
# Run the CMake configuration.
- name: Configure
run: |
source ${GITHUB_WORKSPACE}/.github/ci_setup.sh ${{ matrix.PLATFORM.NAME }}
cmake \
-DCMAKE_CXX_STANDARD=${{ matrix.PLATFORM.CXX_STANDARD }} \
-DCMAKE_CUDA_STANDARD=${{ matrix.PLATFORM.CXX_STANDARD }} \
-DCMAKE_SYCL_STANDARD=${{ matrix.PLATFORM.CXX_STANDARD }} \
-DDETRAY_BUILD_UNITTESTS=ON \
-DDETRAY_BUILD_INTEGRATIONTESTS=ON \
-DDETRAY_BUILD_BENCHMARKS=ON \
-DDETRAY_BUILD_TUTORIALS=ON \
-DDETRAY_BUILD_HOST=OFF \
-DDETRAY_FAIL_ON_WARNINGS=ON \
-DCMAKE_BUILD_TYPE=${{ matrix.BUILD_TYPE }} \
-DDETRAY_CUSTOM_SCALARTYPE=${{ matrix.SCALAR_TYPE }} \
${{ matrix.PLATFORM.OPTIONS }} \
-S ${GITHUB_WORKSPACE} \
-B build
# Perform the build.
- name: Build
run: |
source ${GITHUB_WORKSPACE}/.github/ci_setup.sh ${{ matrix.PLATFORM.NAME }}
cmake --build build