Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use latest dependencies in pipeline image #239

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
202ec8e
Update .gitlab-ci.yml
lobis Jun 2, 2022
e9fce72
CMake fix for newer CMake versions
lobis Jun 3, 2022
e4648ff
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 6, 2022
67fe61a
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 6, 2022
7536b0d
merge `origin/master`
lobis Jun 7, 2022
e097558
TRestStringOutput.h - small formatting
lobis Jun 7, 2022
dcc49be
.gitlab-ci.yml - updated stage names
lobis Jun 7, 2022
e44b616
Using TRestTools to check input rml exists and give proper error message
lobis Jun 7, 2022
22cd946
.gitlab-ci.yml - fix typo
lobis Jun 7, 2022
08e5ec9
updated names on pipelines to follow repository naming convention
lobis Jun 7, 2022
a87cf78
.gitlab-ci.yml - updated pipeline names
lobis Jun 7, 2022
b36a1f6
updated pipeline image to `ghcr.io/lobis/root-geant4-garfield:rest-fo…
lobis Jun 7, 2022
e1cc31f
examples/01.alphaTrack - updated validation
lobis Jun 7, 2022
4a0af06
TRestBrowser - refactored variable names (no changes)
lobis Jun 7, 2022
30e6bc1
TRestRun - minor refactoring (no changes)
lobis Jun 7, 2022
5adf1cb
Merge branch '238-update-pipeline-image-to-use-latest-version-of-depe…
lobis Jun 7, 2022
6f79d72
pipeline/selection - updated validation
lobis Jun 7, 2022
4cad643
ValidateG4.C - update macro
lobis Jun 7, 2022
0759b4e
update pipeline validation files
lobis Jun 7, 2022
8c22a9c
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 7, 2022
a4a8f4d
pipeline/selection/Validate.C - fixed mistake
lobis Jun 7, 2022
8f4bbf9
/pipeline/ - updated validation file
lobis Jun 7, 2022
6009b80
using dev pipeline
lobis Jun 7, 2022
a313d11
pipeline - updated PandaX-III validation to use generated file instea…
lobis Jun 7, 2022
776bbca
updated pipeline/pandaxiii_MC
lobis Jun 7, 2022
0c48591
pipeline&pandaxiii_MC - naming updates
lobis Jun 7, 2022
ec93f61
pipeline/pandaxiii_MC - renamed validation files to be more clear, re…
lobis Jun 8, 2022
6c80258
thisREST - removed condition preventing to load `thisroot.sh`
lobis Jun 11, 2022
157283b
thisREST.sh - removed condition preventing from loading geant4.sh
lobis Jun 11, 2022
46d3888
Attempt to fix pipeline
lobis Jun 11, 2022
e418c06
thisREST.cmake - cosmetic change
lobis Jun 11, 2022
3d31a06
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 12, 2022
c955e8d
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 13, 2022
219863c
updated actions
lobis Jun 13, 2022
91f60d2
Merge remote-tracking branch 'origin/master' into 238-update-pipeline…
lobis Jun 13, 2022
f4668dd
merge origin/master and fix conflicts
lobis Jun 13, 2022
d13db82
Added badge to PR template
lobis Jun 13, 2022
29cb996
attempt to fix pipeline
lobis Jun 13, 2022
1d9d326
avoid using reference image temporarily
lobis Jun 13, 2022
41f8c46
actions - added back reference pandaX-iii check
lobis Jun 13, 2022
f8243a5
actions - added back reference examples
lobis Jun 13, 2022
cd78c87
actions - temporarily disabled saving artifact for 08 example due to …
lobis Jun 13, 2022
260467e
actions - fixed bad artifact path
lobis Jun 13, 2022
af93c91
action.yml - reduced j8 to j4 to see effects on speed
lobis Jun 13, 2022
d6b4553
actions - commented failing part
lobis Jun 13, 2022
92a5b81
update actions
lobis Jun 13, 2022
3ced381
actions - update selection pipeline to work with geant4 ref
lobis Jun 13, 2022
ab9f65e
actions - added validation file for ref g4
lobis Jun 13, 2022
f185112
updated validation
lobis Jun 13, 2022
e7168ba
pipeline added decay example on ref version
lobis Jun 13, 2022
b6d4838
action.yml - using j8 as before
lobis Jun 13, 2022
f988dac
Update Basic Readout example following https://github.com/rest-for-ph…
juanangp Jun 14, 2022
b51efb8
Reverting changes, note this changes should be done on https://github…
juanangp Jun 14, 2022
e80079f
Avoid upload artifacts in 01_alphaTrack because is very expensive
juanangp Jun 14, 2022
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
2 changes: 2 additions & 0 deletions .github/pr-badge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,5 @@
when: "$additions < 100"
- imageUrl: "https://gitlab.cern.ch/rest-for-physics/framework/badges/$branchName/pipeline.svg"
url: "https://gitlab.cern.ch/rest-for-physics/framework/-/commits/$branchName"
- imageUrl: "https://github.com/rest-for-physics/framework/actions/workflows/validation.yml/badge.svg?branch=$branchName"
url: "https://github.com/rest-for-physics/framework/commits/$branchName"
255 changes: 214 additions & 41 deletions .github/workflows/validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ defaults:
run:
shell: bash

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:

build-test:
Expand Down Expand Up @@ -75,32 +74,6 @@ jobs:
path: ${{ env.REST_PATH }}
retention-days: 1

framework-install-reference:
name: Build with reference version of dependencies
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-reference-jun2022
steps:
- uses: actions/checkout@v3
- name: Build and install
uses: ./.github/actions/build
with:
cmake-flags: "-DCMAKE_INSTALL_PREFIX=${{ env.REST_PATH }} -DCMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -DCMAKE_PREFIX_PATH=$GARFIELD_INSTALL -DREST_ALL_LIBS=ON -DREST_G4=ON -DREST_GARFIELD=ON"
branch: ${{ env.BRANCH_NAME }}
- name: Test REST
run: |
printenv
cat ${{ env.REST_PATH }}/thisREST.sh
source ${{ env.REST_PATH }}/thisREST.sh
restManager ListMacros
restRoot -b -q
- name: Cache framework installation
id: framework-install-cache-reference
uses: actions/cache@v3
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}

metadata:
name: "Metadata"
runs-on: ubuntu-latest
Expand Down Expand Up @@ -155,8 +128,8 @@ jobs:
name: "PandaX-III"
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-reference-jun2022
needs: [ framework-install-reference ]
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-dev
needs: [ framework-install ]
steps:
- uses: actions/checkout@v3
with:
Expand All @@ -168,29 +141,30 @@ jobs:
./scripts/checkoutRemoteBranch.sh ${{ env.BRANCH_NAME }}
- name: Restore cache
uses: actions/cache@v3
id: framework-install-cache-reference
id: framework-install-cache
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}
- name: 02_PandaXiiiMC
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
restG4 Xe136bb0n.rml
restRoot -b -q ValidateG4.C'("Xe136bb0n_n2E06.root")'
restG4 Xe136bb0n.rml -o Xe136bb0n.root
restRoot -b -q ValidateG4.C'("Xe136bb0n.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: Xe136bb
path: framework/pipeline/pandaxiii_MC/Xe136bb0n_n2E06.root
path: framework/pipeline/pandaxiii_MC/Xe136bb0n.root
retention-days: 1
- name: PandaXIII Topological
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
restManager --c AllProcesses.rml --i testInput.root --o testOutput.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("testOutput.root")'
restRoot -b -q ../ValidateTrees.C'("validation.root")'
restManager --c AllProcesses.rml --i Xe136bb0n_small_reference.root --o Xe136bb0n_small_reference_processed.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("Xe136bb0n_small_reference_processed.root")'
restRoot -b -q ../ValidateTrees.C'("Xe136bb0n_validation.root")'
# restManager --c plots.rml --i Xe136bb0n_small_reference_processed.root
# This command is failing in the docker, reproducible locally, not clear why...
# echo | sleep 5 | restManager --c plots.rml --i testOutput.root
# - name: Upload Artifacts
Expand All @@ -204,14 +178,14 @@ jobs:
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
echo "using just-generated g4 file"
restManager --c AllProcesses.rml --i Xe136bb0n_n2E06.root --o testOutput.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("testOutput.root")'
restRoot -b -q ../ValidateTrees.C'("validation.root")'
restManager --c AllProcesses.rml --i Xe136bb0n.root --o Xe136bb0n_processed.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("Xe136bb0n_processed.root")'
restRoot -b -q ../ValidateTrees.C'("Xe136bb0n_validation.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: PandaTestOutput
path: framework/pipeline/pandaxiii_MC/testOutput.root
path: framework/pipeline/pandaxiii_MC/Xe136bb0n_processed.root
retention-days: 1
- name: PandaXIII Data
run: |
Expand Down Expand Up @@ -282,6 +256,194 @@ jobs:
examples:
name: Run examples
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-dev
needs: [ framework-install ]
steps:
- uses: actions/checkout@v3
with:
repository: rest-for-physics/framework
path: framework
- name: Checkout framework branch
run: |
cd framework
./scripts/checkoutRemoteBranch.sh ${{ env.BRANCH_NAME }}
- name: Restore cache
uses: actions/cache@v3
id: framework-install-cache
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}
- name: Test Metadata
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd ${{ env.REST_PATH }}/examples
restManager --c saveMetadataFile.rml --o meta.root
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: Metadata
path: ${{ env.REST_PATH }}/examples/meta.root
retention-days: 1
- name: 01_NLDBD
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd ${{ env.REST_PATH }}/examples/restG4/01.NLDBD/
restG4 NLDBD.rml
restRoot -b -q Validate.C'("Run00001_NLDBD_Test.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: NLDBD
path: ${{ env.REST_PATH }}/examples/restG4/01.NLDBD/Run00001_NLDBD_Test.root
retention-days: 1
- name: Event Selection
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/selection
restManager --c g4Analysis.rml --f ${{ env.REST_PATH }}/examples/restG4/01.NLDBD/Run00001_NLDBD_Test.root
restManager --c g4OnSelection.rml --f Run00001_NLDBD_Test_g4Analysis.root
restRoot -b -q Validate.C'("Run00001_NLDBD_Test_EvSelection.root")'
restManager --c g4EvSelectionIDsFromFile.rml --f Run00001_NLDBD_Test_g4Analysis.root
restRoot -b -q ValidateIDsFromFile.C'("Run00001_NLDBD_Test_EvSelectionIDsFromFile.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: EventSelection
path: framework/pipeline/selection/IDs.txt
retention-days: 1
- name: 08_alphas
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd ${{ env.REST_PATH }}/examples/restG4/08.Alphas/
mkdir data
export REST_ENERGY=5
export REST_FOIL=1
restG4 alphas.rml
# - name: Upload Artifacts
# uses: actions/upload-artifact@v3
# with:
# name: Alphas
# path: ${{ env.REST_PATH }}/examples/restG4/08.Alphas/data/Run_5MeV_1um.root
# retention-days: 1
- name: 01_alphaTrack
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd ${{ env.REST_PATH }}/examples/01.alphaTrack/
mkdir data
export RAW_PROCESSING=ON
export HIT_PROCESSING=ON
export TRACK_PROCESSING=ON
restManager --c processing.rml --f ../restG4/08.Alphas/data/Run_5MeV_1um.root
restRoot -b -q Validate.C'("data/Response_5MeV_1um.root")'
# - name: Upload Artifacts
# uses: actions/upload-artifact@v3
# with:
# name: AlphaTrack
# path: ${{ env.REST_PATH }}/examples/restG4/08.Alphas/data/Run_5MeV_1um.root
# retention-days: 1

# Reference dependencies version

framework-install-reference:
name: Build with reference version of dependencies
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-reference-jun2022
steps:
- uses: actions/checkout@v3
- name: Build and install
uses: ./.github/actions/build
with:
cmake-flags: "-DCMAKE_INSTALL_PREFIX=${{ env.REST_PATH }} -DCMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} -DCMAKE_PREFIX_PATH=$GARFIELD_INSTALL -DREST_ALL_LIBS=ON -DREST_G4=ON -DREST_GARFIELD=ON"
branch: ${{ env.BRANCH_NAME }}
- name: Test REST
run: |
printenv
cat ${{ env.REST_PATH }}/thisREST.sh
source ${{ env.REST_PATH }}/thisREST.sh
restManager ListMacros
restRoot -b -q
- name: Cache framework installation
id: framework-install-cache-reference
uses: actions/cache@v3
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}


pandax-iii-reference:
name: "PandaX-III on reference version"
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-reference-jun2022
needs: [ framework-install-reference ]
steps:
- uses: actions/checkout@v3
with:
repository: rest-for-physics/framework
path: framework
- name: Checkout framework branch
run: |
cd framework
./scripts/checkoutRemoteBranch.sh ${{ env.BRANCH_NAME }}
- name: Restore cache
uses: actions/cache@v3
id: framework-install-cache-reference
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}
- name: 02_PandaXiiiMC
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
restG4 Xe136bb0n.rml -o Xe136bb0n.root
restRoot -b -q ValidateG4.C'("Xe136bb0n.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: Xe136bb
path: framework/pipeline/pandaxiii_MC/Xe136bb0n.root
retention-days: 1
- name: PandaXIII Topological
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
restManager --c AllProcesses.rml --i Xe136bb0n_small_reference.root --o Xe136bb0n_small_reference_processed.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("Xe136bb0n_small_reference_processed.root")'
restRoot -b -q ../ValidateTrees.C'("Xe136bb0n_validation.root")'
# restManager --c plots.rml --i Xe136bb0n_small_reference_processed.root
- name: PandaXIII Topological from Geant4
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_MC
echo "using just-generated g4 file"
restManager --c AllProcesses.rml --i Xe136bb0n.root --o Xe136bb0n_processed.root --j 1 --e 10
restRoot -b -q ../MakeBasicTree.C'("Xe136bb0n_processed.root")'
restRoot -b -q ../ValidateTrees.C'("Xe136bb0n_validation_G4_v10.4.3.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: PandaTestOutput
path: framework/pipeline/pandaxiii_MC/Xe136bb0n_processed.root
retention-days: 1
- name: PandaXIII Data
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/pandaxiii_data
restManager --c P3AutoChain.rml --i CoBo_AsAd0_2019-03-15.graw --o testOutput.root --j 1
restRoot -b -q ../MakeBasicTree.C'("testOutput.root")'
restRoot -b -q ../ValidateTrees.C'("validation.root")'
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: PandaTriggerRate
path: framework/pipeline/pandaxiii_data/TriggerRate.png
retention-days: 1

examples-reference:
name: Run examples on reference version
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics-reference-jun2022
needs: [ framework-install-reference ]
Expand Down Expand Up @@ -329,7 +491,7 @@ jobs:
cd framework/pipeline/selection
restManager --c g4Analysis.rml --f ${{ env.REST_PATH }}/examples/restG4/01.NLDBD/Run00001_NLDBD_Test.root
restManager --c g4OnSelection.rml --f Run00001_NLDBD_Test_g4Analysis.root
restRoot -b -q Validate.C'("Run00001_NLDBD_Test_EvSelection.root")'
restRoot -b -q Validate.C'("Run00001_NLDBD_Test_EvSelection.root", true)'
restManager --c g4EvSelectionIDsFromFile.rml --f Run00001_NLDBD_Test_g4Analysis.root
restRoot -b -q ValidateIDsFromFile.C'("Run00001_NLDBD_Test_EvSelectionIDsFromFile.root")'
- name: Upload Artifacts
Expand All @@ -338,6 +500,17 @@ jobs:
name: EventSelection
path: framework/pipeline/selection/IDs.txt
retention-days: 1
- name: 07_decay
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd ${{ env.REST_PATH }}/examples/restG4/07.FullChainDecay/
restG4 fullChain.rml -o Run00001_U238_FullChainDecay.root
restRoot -b -q Validate.C'("Run00001_U238_FullChainDecay.root", 15)'
restG4 singleDecay.rml -o Run00002_U238_SingleChainDecay.root
restRoot -b -q Validate.C'("Run00002_U238_SingleChainDecay.root", 1)'
export REST_ISOTOPE=Be7
restG4 singleDecay.rml
restRoot -b -q Validate.C'("Run00002_Be7_SingleChainDecay.root", 1)'
- name: 08_alphas
run: |
source ${{ env.REST_PATH }}/thisREST.sh
Expand Down
Loading