Files
slsDetectorPackage/.github/workflows/cmake.yaml
T
maliakal_d 2a5672a138
Build and Deploy on local RHEL9 / build (push) Successful in 2m2s
Build on RHEL9 docker image / build (push) Successful in 4m27s
Build and Deploy on local RHEL8 / build (push) Successful in 5m8s
Build on RHEL8 docker image / build (push) Successful in 5m13s
Run Simulator Tests on local RHEL9 / build (push) Successful in 20m6s
Run Simulator Tests on local RHEL8 / build (push) Successful in 23m32s
Dev/pr automation part 2 (#1542)
* workflow for detector whole word matching from changes in detectorServer folders, matching in pr title description, linked or references issues and prs, change in code with matching labels, add detector labels

* comment

* do not look at linked issues or prs

* removed warning of deprecated node 20 github maybe?

* ignore for infrastructure prs

* ignore infrastrucutr prs

* makign detector labels a reusable workflow and pr synchronize trigger trigger at synchronize and wait for validation worfklow to be done first

* synchronize triger just checks if pr validation is complete and successfull, if not it fails, else it will run detector labesl workflow. it will not wait for pr validation

* pr validation should also call detector labels workflow

* picked up pr_validation from developer and modified

* test sync

* removed commit

* trigger is just for code sync

* look at head branch PRs to find it

* ignoring some other workflows for now

* no need of if as anything failing before the consequent jobs are skipped anyway

* ignore tests fo rnow

* make detector labels run all

* without pr validate

* fix error pr

* renaming to make sense

* naming

* all the triggers are in a different workflow and all the big jobs in separate resuable workflows

* validate pr type also separated

* validation doesnt have any output anymore because its either setfailed or not, the unrelated labesl output have been moved to edit trigger workflow anyway

* minor

* combine for loop of changed files
2026-09-02 10:37:04 +02:00

66 lines
2.1 KiB
YAML

name: Native CMake Build
on:
push:
branches-ignore:
- 'dev/pr_automation*'
- 'dev/test_pr_automation*'
pull_request:
branches-ignore:
- 'dev/pr_automation*'
- 'dev/test_pr_automation*'
workflow_dispatch:
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Debug
jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest
name: Configure and build using cmake
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: 3.12
cache: 'pip'
- run: pip install pytest numpy colorama
# using a stable action version instead of latest to create/restore cache for now
- uses: awalsh128/cache-apt-pkgs-action@v1.6.1
with:
packages: libhdf5-dev qtbase5-dev qt5-qmake libqt5svg5-dev libpng-dev libtiff-dev libfmt-dev
version: 1.0
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: |
cmake -B ${{github.workspace}}/build \
-DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \
-DSLS_USE_TESTS=ON \
-DSLS_USE_SIMULATOR=ON \
-DSLS_USE_PYTHON=ON \
-DSLS_USE_HDF5=ON \
-DSLS_USE_GUI=ON \
-DSLS_USE_MOENCH=ON \
-DSLS_TREAT_WARNINGS_AS_ERRORS=ON \
-DSLS_USE_MATTERHORN=ON
- name: Build
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build -j4 --config ${{env.BUILD_TYPE}}