Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
3ca2195
Compatibility with standalone kingmaker container and local sandboxin…
tvoigtlaender Feb 12, 2026
7e7643a
Add missing import
tvoigtlaender Feb 12, 2026
34c7661
Update init.sh function to use singularity container over cvmfs LCG s…
tvoigtlaender Feb 13, 2026
33cd891
Add dry run option to init script to only copy in configs
tvoigtlaender Feb 13, 2026
0b2e0c1
Update init script with updated argument parsing and fixed git status…
tvoigtlaender Feb 17, 2026
b5e354a
Update init.sh documentation
tvoigtlaender Feb 17, 2026
6f1427e
Update documentation
tvoigtlaender Feb 17, 2026
65bb2b9
Cleanup
tvoigtlaender Feb 17, 2026
e3c32ae
update documentation. source replaced by bash as env setup happens in…
tvoigtlaender Feb 18, 2026
2404732
improve consistency in documentation
tvoigtlaender Feb 18, 2026
68757ff
Replace autogen of dict library with cached libMyDicts.so. Add lib to…
tvoigtlaender Feb 21, 2026
61470cb
Split off Dict lib from CROWNlib to make python quantity calls more l…
tvoigtlaender Feb 22, 2026
6054aa3
Cleanup
tvoigtlaender Feb 22, 2026
e720830
Move default ccache dir to CROWN/.cache/ccache
tvoigtlaender Feb 23, 2026
35bea9e
black
tvoigtlaender Feb 23, 2026
fe227bf
update CI worflow
tvoigtlaender Feb 24, 2026
05368ce
Activate env at container startup for CI pipeline
tvoigtlaender Feb 24, 2026
a851f05
Add openssh to container
tvoigtlaender Feb 24, 2026
fa7750e
Update local container sartup and git checks
tvoigtlaender Feb 24, 2026
4f200f5
Update and apply cpp formatting. Remove unused setup_from_tarball.sh
tvoigtlaender Feb 24, 2026
4a8912a
Remove duplicates
tvoigtlaender Feb 24, 2026
619945d
Update and apply python formatting
tvoigtlaender Feb 24, 2026
7d89dc9
Add and apply cmake formatting. Add central script that runs (python/…
tvoigtlaender Feb 24, 2026
8e140d7
add c and h files to cpp formatting
tvoigtlaender Feb 24, 2026
e80ce6d
update image in github CI
tvoigtlaender Feb 24, 2026
2604c5f
add cmake format checking
tvoigtlaender Feb 24, 2026
85b1da2
Downgrade github CI checkout for checks
tvoigtlaender Feb 24, 2026
f00dbc1
update container initilization for github CI
tvoigtlaender Feb 24, 2026
2a9aac5
add ENV variable to dockerfile, even without proper init
tvoigtlaender Feb 24, 2026
0fbf929
Add openssh
tvoigtlaender Feb 24, 2026
2eb13f3
Use login shell for tests and reformat check file
tvoigtlaender Feb 24, 2026
e9a573e
Bugfixes after formatting
tvoigtlaender Feb 25, 2026
f780fe9
broaden git config --global --add safe.directory step to work with ro…
tvoigtlaender Feb 25, 2026
66bbb8a
Move up container version
tvoigtlaender Feb 25, 2026
e12ede5
cpp formatting. Formatting should not be applied to code_generation/s…
tvoigtlaender Feb 25, 2026
5a7bd70
Add exclusion list to formatting checks.
tvoigtlaender Feb 25, 2026
a1a1893
Make check output consistent across formatting checks.
tvoigtlaender Feb 25, 2026
c4fa4ed
Add container lib path to RPATH, even when building with local env to…
tvoigtlaender Feb 28, 2026
f282571
Add '-c none' option for init.sh script to use local env instead. Cle…
tvoigtlaender Mar 1, 2026
dde46e8
update container name for checks
tvoigtlaender Mar 1, 2026
0c9967d
Typo and formatting
tvoigtlaender Mar 1, 2026
f2e5c0e
Update to new container image from unpacked
tvoigtlaender Mar 2, 2026
9d64116
Merge branch 'main' into Kingmaker_sandboxing
tvoigtlaender Mar 9, 2026
985cbc8
formatting
tvoigtlaender Mar 9, 2026
6097cd8
Resolve conflicts
tvoigtlaender Mar 14, 2026
403eb1d
formatting
tvoigtlaender Mar 14, 2026
e84dfac
Merge branch 'main' into Kingmaker_sandboxing
nshadskiy Apr 28, 2026
b510b86
clang formatting
nshadskiy Apr 28, 2026
b47d1b8
Consistently use 'source' to call init script across all mentions
tvoigtlaender Apr 29, 2026
a720e36
update documentation for setup.sh
nshadskiy May 2, 2026
e562f9a
add option for LCG stack environment + update to new general kingmake…
nshadskiy May 2, 2026
12cdfef
formatting
nshadskiy May 4, 2026
e4852f0
update documentation
nshadskiy May 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 0 additions & 45 deletions .github/workflows/build_unittest_container.yml

This file was deleted.

181 changes: 82 additions & 99 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
name: Checks

on:
workflow_run:
workflows: ["build_unittest_container"]
push:
branches:
- main
Expand All @@ -12,6 +10,7 @@ on:

# Settings go here!
env:
ENV_NAME: env
BUILD_TYPE: Release
ANALYSIS: unittest
CONFIG: unittest_config
Expand All @@ -25,188 +24,172 @@ env:
TWO_FRIENDS_CONFIG: unittest_friends_2
FRIEND_SHIFTS: "nominal,jesUncTotalUp,jesUncTotalDown,tauMuFakeEsDown"

# This ensures every step runs in a login shell, automatically activating conda
defaults:
run:
shell: bash -el {0}

jobs:
build_project:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
image: kingmakerimages/kingmaker_standalone:V1
options: --user 0 # run as root

steps:
- name: Clone project
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.CERN_GITLAB_PRIVATE_KEY }}
submodules: "recursive"
ssh-strict: "false"
ssh-known-hosts: "[gitlab.cern.ch]:7999 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubVS0czgKaPkC5cfB75CI3XjgWBv7pj2ILiZezVf8okkCAYr+bf4w6VrH2pyv3NRUW5Mm8U/3zoSNcrYIqhFFpz6R62/3xt8hMrPKJKstbt1lSIr8QhEyD24SJEKugMi560BWRPkTzXrrFgxz0X4vuKKytpvihRsccZ7F1JaX76UCWEJ3Xr2BFCEnnN6gj9nvFr4gvSMneunWVLGw2KcHwS1OJfnWBlp3fB0rYWSxZAoVjcjZjvv3hioEftaTapff2PkdQIX//N9Cc555FzdmMzixTvU5j/i+QvjxWVbEBNSKI6te6udC4fYUZMePs2QQnqw9mXUQtaQtw+HV7utuw=="

- name: Mark git directory as safe
run: git config --global --add safe.directory ${{github.workspace}}
- name: Mark all git directories as safe
run: git config --global --add safe.directory '*'

- name: Create Build Environment
shell: bash
run: cmake -E make_directory ${{github.workspace}}/build
run: cmake -E make_directory build

- name: adding a system path
run: echo "$HOME/.local/bin" >> $GITHUB_PATH

- name: Configure CMake
shell: bash
run: cd ${{github.workspace}}/build && cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DANALYSIS=$ANALYSIS -DCONFIG=$CONFIG -DSAMPLES=$SAMPLES -DERAS=$ERAS -DSCOPES=$SCOPES -DSHIFTS=$SHIFTS -DOPTIMIZED=false -DONNXRUNTIME_INCLUDE_DIR=/opt/onnxruntime
run: |
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
-DANALYSIS=$ANALYSIS \
-DCONFIG=$CONFIG \
-DSAMPLES=$SAMPLES \
-DERAS=$ERAS \
-DSCOPES=$SCOPES \
-DSHIFTS=$SHIFTS \
-DOPTIMIZED=false

- name: Build
shell: bash
run: cd ${{github.workspace}}/build && make install -j 2
run: make -C build install -j$(nproc)

- name: Test
shell: bash
run: cd ${{github.workspace}}/build && ctest -V --label-regex "ntuple.*."
run: ctest --test-dir build -V --label-regex "ntuple.*."

build_single_friend:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
image: kingmakerimages/kingmaker_standalone:V1
options: --user 0 # run as root

steps:

- name: Clone project
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.CERN_GITLAB_PRIVATE_KEY }}
submodules: "recursive"
ssh-strict: "false"
ssh-known-hosts: "[gitlab.cern.ch]:7999 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubVS0czgKaPkC5cfB75CI3XjgWBv7pj2ILiZezVf8okkCAYr+bf4w6VrH2pyv3NRUW5Mm8U/3zoSNcrYIqhFFpz6R62/3xt8hMrPKJKstbt1lSIr8QhEyD24SJEKugMi560BWRPkTzXrrFgxz0X4vuKKytpvihRsccZ7F1JaX76UCWEJ3Xr2BFCEnnN6gj9nvFr4gvSMneunWVLGw2KcHwS1OJfnWBlp3fB0rYWSxZAoVjcjZjvv3hioEftaTapff2PkdQIX//N9Cc555FzdmMzixTvU5j/i+QvjxWVbEBNSKI6te6udC4fYUZMePs2QQnqw9mXUQtaQtw+HV7utuw=="

- name: Mark git directory as safe
run: git config --global --add safe.directory ${{github.workspace}}
- name: Mark all git directories as safe
run: git config --global --add safe.directory '*'

- name: Create Build Environment
shell: bash
run: cmake -E make_directory ${{github.workspace}}/build
run: cmake -E make_directory build

- name: adding a system path
run: echo "$HOME/.local/bin" >> $GITHUB_PATH

- name: Configure CMake
shell: bash
run: cd ${{github.workspace}}/build && cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DANALYSIS=$ANALYSIS -DCONFIG=$SINGLE_FRIEND_CONFIG -DSAMPLES=$SAMPLES -DERAS=$ERAS -DSCOPES=$SINGLE_FRIEND_SCOPES -DSHIFTS=$FRIEND_SHIFTS -DOPTIMIZED=false -DQUANTITIESMAP="dummy" -DONNXRUNTIME_INCLUDE_DIR=/opt/onnxruntime
run: |
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
-DANALYSIS=$ANALYSIS \
-DCONFIG=$SINGLE_FRIEND_CONFIG \
-DSAMPLES=$SAMPLES \
-DERAS=$ERAS \
-DSCOPES=$SINGLE_FRIEND_SCOPES \
-DSHIFTS=$FRIEND_SHIFTS \
-DOPTIMIZED=false \
-DQUANTITIESMAP="dummy"

- name: Build
shell: bash
run: cd ${{github.workspace}}/build && make install -j 2
run: make -C build install -j$(nproc)

- name: Test
shell: bash
run: cd ${{github.workspace}}/build && ctest -V --label-regex "single_friend.*."
run: ctest --test-dir build -V --label-regex "single_friend.*."

build_two_friends:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
image: kingmakerimages/kingmaker_standalone:V1
options: --user 0 # run as root

steps:
- name: Clone project
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.CERN_GITLAB_PRIVATE_KEY }}
submodules: "recursive"
ssh-strict: "false"
ssh-known-hosts: "[gitlab.cern.ch]:7999 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubVS0czgKaPkC5cfB75CI3XjgWBv7pj2ILiZezVf8okkCAYr+bf4w6VrH2pyv3NRUW5Mm8U/3zoSNcrYIqhFFpz6R62/3xt8hMrPKJKstbt1lSIr8QhEyD24SJEKugMi560BWRPkTzXrrFgxz0X4vuKKytpvihRsccZ7F1JaX76UCWEJ3Xr2BFCEnnN6gj9nvFr4gvSMneunWVLGw2KcHwS1OJfnWBlp3fB0rYWSxZAoVjcjZjvv3hioEftaTapff2PkdQIX//N9Cc555FzdmMzixTvU5j/i+QvjxWVbEBNSKI6te6udC4fYUZMePs2QQnqw9mXUQtaQtw+HV7utuw=="

- name: Mark git directory as safe
run: git config --global --add safe.directory ${{github.workspace}}

- name: Create Build Environment
shell: bash
run: cmake -E make_directory ${{github.workspace}}/build

- name: adding a system path
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Mark all directories as safe
run: git config --global --add safe.directory '*'

- name: Configure CMake
shell: bash
run: cd ${{github.workspace}}/build && cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DANALYSIS=$ANALYSIS -DCONFIG=$TWO_FRIENDS_CONFIG -DSAMPLES=$SAMPLES -DERAS=$ERAS -DSCOPES=$TWO_FRIENDS_SCOPES -DSHIFTS=$FRIEND_SHIFTS -DOPTIMIZED=false -DQUANTITIESMAP="dummy" -DONNXRUNTIME_INCLUDE_DIR=/opt/onnxruntime
run: |
mkdir -p build
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
-DANALYSIS=$ANALYSIS \
-DCONFIG=$TWO_FRIENDS_CONFIG \
-DSAMPLES=$SAMPLES \
-DERAS=$ERAS \
-DSCOPES=$TWO_FRIENDS_SCOPES \
-DSHIFTS=$FRIEND_SHIFTS \
-DOPTIMIZED=false \
-DQUANTITIESMAP="dummy"

- name: Build
shell: bash
run: cd ${{github.workspace}}/build && make install -j 2
run: make -C build install -j$(nproc)

- name: Test
shell: bash
run: cd ${{github.workspace}}/build && ctest -V --label-regex "two_friends.*."

run: ctest --test-dir build -V --label-regex "two_friends.*."

python_format:
code_formatting:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
options: --user 0 # run as root

image: kingmakerimages/kingmaker_standalone:V1
options: --user 0
steps:
- name: apt update
run: apt-get -y update

- name: Install missing software
run: apt-get install -y git python3-pip && pip install black==23.3.0 --break-system-packages

- uses: actions/checkout@v2

- name: Check Python formatting
shell: bash
run: cd $GITHUB_WORKSPACE && bash checks/python-formatting.sh

cpp_format:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
options: --user 0 # run as root

steps:
- name: apt update
run: apt-get -y update

- name: Install missing software
run: apt-get install -y git python3-pip && pip install clang-format --break-system-packages

- uses: actions/checkout@v2

- name: Check C++ formatting
shell: bash
run: cd $GITHUB_WORKSPACE && bash checks/cpp-formatting.sh
- name: Clone project
uses: actions/checkout@v4
- name: Run all formatting checks
run: |
git config --global --add safe.directory '*'
bash ./checks/run-all-checks.sh

docs:
runs-on: ubuntu-24.04
container:
image: ghcr.io/kit-cms/crown-crown-unittest:pr-334
options: --user 0 # run as root

image: kingmakerimages/kingmaker_standalone:V1
options: --user 0
steps:
- name: apt update
run: apt-get -y update

- name: Install missing software
run: apt-get install -y git cmake make doxygen python3-pip

- name: install docs related packages
run: pip install breathe==4.36 sphinx==8.1.3 sphinx_rtd_theme==3.0.2 --break-system-packages

- uses: actions/checkout@v2
- name: Clone project
uses: actions/checkout@v4

- name: Create Build Environment
shell: bash
run: cmake -E make_directory ${{github.workspace}}/build

- name: Configure CMake
shell: bash
run: cd ${{github.workspace}}/build && cmake $GITHUB_WORKSPACE/docs
run: |
cd ${{github.workspace}}/build
cmake $GITHUB_WORKSPACE/docs

- name: Build docs
shell: bash
run: cd ${{github.workspace}}/build && make
run: |
cd ${{github.workspace}}/build
make

- name: Publish
shell: bash
run: echo "TODO"
run: echo "TODO"
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ build*/
log/
logs/
generation_logs/
.cache/*
# ignore all analysis in the config folder apart from the unittest and the template
analysis_configurations/*
!analysis_configurations/quantities
Expand Down
22 changes: 12 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,15 +29,6 @@ message(
)
message(STATUS "")

message(STATUS "Finding Packages")
# add the different dependencies
include(AddBaseDependencies)
include(AddRoot)
include(AddLogging)
include(AddCorrectionlib)
include(AddOnnxruntime)
include(ConfigurePython)

# installdir
if(NOT DEFINED INSTALLDIR)
message(
Expand All @@ -48,15 +39,26 @@ if(NOT DEFINED INSTALLDIR)
endif()
set(GENERATE_CPP_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})

message(STATUS "Finding Packages")
# add the different dependencies
include(AddBaseDependencies)
include(AddRoot)
include(AddDicts)
include(AddLogging)
include(AddCorrectionlib)
include(AddOnnxruntime)
include(ConfigurePython)

# crownlib setup
include(ConfigureCrownlib)
if (BUILD_CROWNLIB_ONLY)
if(BUILD_CROWNLIB_ONLY)
# exit if only crownlib is being built
return()
endif()
# run the code generation
include(CodeGeneration)

message(STATUS "Next is Build")
# run the build
include(Build)

Expand Down
1 change: 0 additions & 1 deletion analysis_configurations/unittest/producers/embedding.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
from ..quantities import output as q
from ..quantities import nanoAOD as nanoAOD


EmbeddingGenWeight = Producer(
name="EmbeddingGenWeight",
call="event::quantity::Rename<Float_t>({df}, {output}, {input})",
Expand Down
Loading
Loading