Skip to content

Tweak names and such #1

Tweak names and such

Tweak names and such #1

Workflow file for this run

# Build directly on the GitHub runner with caching
name: build-fast
on:
workflow_dispatch:
workflow_call:
concurrency:
group: build-fast-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}-${{github.workflow}}
cancel-in-progress: true
jobs:
linux:
name: "${{matrix.runner}}-${{matrix.compiler}}-${{matrix.version}}"
strategy:
matrix:
include:
- runner: focal
compiler: gcc
version: 8
- runner: jammy
compiler: gcc
version: 12
- runner: noble
compiler: gcc
version: 14
- runner: focal
compiler: clang
version: 10
- runner: jammy
compiler: clang
version: 15
- runner: noble
compiler: clang
version: 18
env:
GHA_JOB_NAME: "${{matrix.runner}}-${{matrix.compiler}}-${{matrix.version}}"
CCACHE_DIR: "${{github.workspace}}/.ccache"
CCACHE_MAXSIZE: "100Mi"
CMAKE_PRESET: fast
CC: ${{matrix.compiler}}-${{matrix.version}}
CXX: ${{matrix.compiler == 'gcc' && 'g++' || 'clang++'}}-${{matrix.version}}
runs-on: >-
${{ matrix.runner == 'focal' && 'ubuntu-20.04'
|| matrix.runner == 'jammy' && 'ubuntu-22.04'
|| matrix.runner == 'noble' && 'ubuntu-24.04'
}}
steps:
- name: Install dependencies
run: |
sudo apt-get -q -y update
sudo apt-get -q -y install \
ccache cmake ninja-build python3 \
nlohmann-json3-dev libgtest-dev libhepmc3-dev libpng-dev \
${{matrix.compiler}}-${{matrix.version}} \
${{matrix.compiler == 'gcc' && format('g++-{0}', matrix.version) || ''}}
echo "Installed toolchain:"
ld --version | head -1
$CC --version | head -1
$CXX --version | head -1
- name: Check out Celeritas
uses: actions/checkout@v4
- name: Cache ccache
uses: actions/cache@v4
with:
path: ${{env.CCACHE_DIR}}
key: ccache-${{env.GHA_JOB_NAME}}-${{github.run_id}}
restore-keys: |
ccache-${{env.GHA_JOB_NAME}}
- name: Zero ccache stats
run: |
ccache -z
- name: Configure Celeritas
run: |
ln -fs scripts/cmake-presets/ci-ubuntu-github.json CMakeUserPresets.json
cmake --preset=${CMAKE_PRESET} \
-DCeleritas_GIT_DESCRIBE="${{github.event.pull_request
&& format(';-pr.{0};', github.event.pull_request.number)
|| format(';-{0};', github.ref_name)}}"
- name: Build
working-directory: build
run: |
ninja
- name: Run tests
id: test
working-directory: build
run: |
ctest --parallel $(nproc) --timeout 15 --output-on-failure \
--output-junit test-results.junit.xml
- name: Install
working-directory: build
run: |
ninja install
- name: Check installation
working-directory: install
run: |
./bin/celer-sim --version
- name: Show ccache stats
if: ${{!cancelled()}}
run: |
ccache -s
- name: Upload test results
uses: actions/upload-artifact@v4
if: ${{contains(['success', 'failure'], steps.test.outcome)}}
name: test-results-fast-${{matrix.compiler}}-${{matrix.version}}

Check failure on line 104 in .github/workflows/build-fast.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/build-fast.yml

Invalid workflow file

You have an error in your yaml syntax on line 104
path: "build/test-results.junit.xml"
if-no-files-found: error
retention-days: 1
windows:
defaults:
run:
shell: pwsh
env:
CCACHE_DIR: "${{github.workspace}}\\.ccache"
CCACHE_MAXSIZE: "100Mi"
CMAKE_PRESET: fast
runs-on: windows-latest
steps:
- name: Install dependencies
run: |
choco install ninja ccache
- name: Check out Celeritas
uses: actions/checkout@v4
- name: Set up MSVC
uses: ilammy/msvc-dev-cmd@v1
- name: Cache ccache
uses: actions/cache@v4
with:
path: ${{env.CCACHE_DIR}}
key: ccache-fast-windows-${{github.run_id}}
restore-keys: |
ccache-fast
- name: Zero ccache stats
run: |
ccache -z
- name: Configure Celeritas
run: |
Copy-Item scripts/cmake-presets/ci-windows-github.json -Destination CMakeUserPresets.json
cmake --preset=$Env:CMAKE_PRESET `
-DCeleritas_GIT_DESCRIBE="${{github.event.pull_request
&& format(';-pr.{0};', github.event.pull_request.number)
|| format(';-{0};', github.ref_name)}}"
- name: Build all
run: |
cmake --build --preset=$Env:CMAKE_PRESET
- name: Test all
id: test
continue-on-error: true
run: |
ctest --preset=$Env:CMAKE_PRESET \
--output-junit test-results.junit.xml
- name: Install
working-directory: build
run: |
cmake --install .
- name: Check installation
working-directory: install
run: |
./bin/celer-sim --version
- name: Show ccache stats
if: ${{!cancelled()}}
run: |
ccache -s
- name: Upload test results
uses: actions/upload-artifact@v4
if: ${{contains(['success', 'failure'], steps.test.outcome)}}
name: test-results-fast-windows
path: "build/test-results.junit.xml"
if-no-files-found: error
retention-days: 1
# vim: set nowrap tw=100: