Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
38 changes: 38 additions & 0 deletions run-caffluxsyst/install_caffluxsyst.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/usr/bin/env bash

export ND_PRODUCTION_RUNTIME=${ND_PRODUCTION_RUNTIME:-SHIFTER}

export ND_PRODUCTION_CONTAINER=${ND_PRODUCTION_CONTAINER:-$ND_PRODUCTION_CONTAINER_CAF}
export ND_PRODUCTION_CONTAINER=${ND_PRODUCTION_CONTAINER:-fermilab/fnal-wn-sl7:latest}

source ../util/reload_in_container.inc.sh

set +o errexit

if [[ -d install ]]; then
echo "caffluxsyst appears to be installed already."
echo "To force a reinstall, please delete the directory run-caffluxsyst/install"
exit
fi

mkdir install
cd install

. /cvmfs/dune.opensciencegrid.org/products/dune/setup_dune.sh
setup cmake v3_27_4

# Should maybe checkout a tag here the first time we run real production.
git clone https://github.com/DUNE/duneanafluxtools.git

# The duneanaobj version is defined by duneanafluxtools itself (its
# DUNE_ANAOBJ_BRANCH CMake default), not by ND_Production. Read it out so we
# don't have to duplicate/hardcode the version here.
duneanaobj_version=$(sed -n 's/^\s*set(DUNE_ANAOBJ_BRANCH \(.*\))/\1/p' duneanafluxtools/CMakeLists.txt)
setup duneanaobj "$duneanaobj_version" -q "e20:prof"

mkdir duneanafluxtools/build
cd duneanafluxtools/build

cmake ../
make install
ldd bin/caffluxweighter
32 changes: 32 additions & 0 deletions run-caffluxsyst/run_caffluxsyst.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/usr/bin/env bash

export ND_PRODUCTION_CONTAINER=${ND_PRODUCTION_CONTAINER:-fermilab/fnal-wn-sl7:latest}

source ../util/reload_in_container.inc.sh

# Setup environment.
setup() {
. /cvmfs/dune.opensciencegrid.org/products/dune/setup_dune.sh

source "${PWD}"/install/duneanafluxtools/build/bin/setup.duneanafluxtools.sh
}

set +o errexit
setup
set -o errexit

# Must go after setup.
source ../util/init.inc.sh

inDir=${ND_PRODUCTION_OUTDIR_BASE}/run-cafmaker/$ND_PRODUCTION_IN_NAME
inName=$ND_PRODUCTION_IN_NAME.$globalIdx
inFile=$(realpath "$inDir"/CAF/$subDir/${inName}.CAF.root)

outFile=$tmpOutDir/${outName}.CAF.root
rm -f "$outFile"

run caffluxweighter "$inFile" "$outFile"

cafOutDir=$outDir/CAF/$subDir
mkdir -p "$cafOutDir"
mv "$outFile" "$cafOutDir"