Updating sbnd data
- sbnd_data is not version controlled by git so everything is much more difficult.
- There are two ways to treat sbnd_data to make life a little easier
Current version can be updated
-
If new files or directories need to be added the current version can be updated as it will still contain all previous files and be backwards compatible.
-
Log in to sbnd@sbndgpvm01.fnal.gov
-
You can write directly to /grid/fermiapp/products/sbnd/sbnd_data/< version >
-
This directory isn't version controlled so be careful!
-
Make note of any added file or directories in the relevant
CHANGES
files. -
Log out of sbnd@sbndgpvm01.fnal.gov and into cvmfssbnd@oasiscfs.fnal.gov
-
Start a transaction
-
rsync the directories\
rsync -r < user >@sbndgpvm01.fnal.gov:/grid/fermiapp/products/sbnd/sbnd_data/< version >* /cvmfs/sbnd.opensciencegrid.org/products/sbnd/sbnd_data/
-
Publish the transaction.
New version required
- If a file that already exists needs to be updated then the version of sbnd_data must be updated to ensure backwards compatability.
- This used to be a big issue because the photon library (O(500MB)) is in sbnd_data.
- We don't need this anymore so it can be dropped when sbnd_data v01.03 is needed.
- There are some instructions of how to do a manual deployment here but it has been a while since they were used and may not be valid any more.
- A worked example of what I did last time sbnd_data was uploaded to SciSoft follows.
- Once the tarball is on SciSoft it can be distributed on /grid/fermiapp like sbndcode and sbndutil and then rsync'd to cvmfs (I think).
Step-by-step example
- Have author copy latest
sbnd_data
into their area to modify code. - Once their modifications are complete, copy into your area and make the following changes to
sbnd_data/vXX_YY_ZZ.version/NULL_
FILE = version PRODUCT = sbnd_data VERSION = vXX_YY_ZZ #Bump the version #************************************************* # FLAVOR = NULL QUALIFIERS = "" DECLARER = <your-username> DECLARED = 2025-03-25 19.52.40 GMT #Modify date MODIFIER = <your-username> MODIFIED = 2025-03-25 19.52.40 GMT #Modify the date PROD_DIR = sbnd_data/vXX_YY_ZZ #Bump the version UPS_DIR = ups TABLE_FILE = sbnd_data.table
- Copy to fermigrid area
ssh sbnd@sbndgpvm01.fnal.gov cp sbnd_data/vXX_YY_ZZ* /grid/fermiapp/products/sbnd/
- Copy to cvmfs
ssh cvmfssbnd@oasiscfs.fnal.gov cvmfs_server transaction sbnd.opensciencegrid.org rsync -r <your-username>@sbndgpvm01.fnal.gov:/grid/fermiapp/products/sbnd/sbnd_data/vXX_YY_ZZ* /cvmfs/sbnd.opensciencegrid.org/products/sbnd/sbnd_data/ cvmfs_server tag -l sbnd.opensciencegrid.org #check which tag to use cvmfs_server publish -m "Published sbnd_data XX.YY.ZZ" -a <tag> sbnd.opensciencegrid.org logout
- Copy to scisoft, use copyToScisoft
ssh <your-username>@sbndgpvm01.fnal.gov #Navigate to scratch area tar -cjf sbnd_data-< dot version >-noarch.tar.bz2 -C /grid/fermiapp/products/sbnd sbnd_data/vXX_YY_ZZ sbnd_data/vXX_YY_ZZ.version tar -tf *.bz2 #check the contents ./copyToSciSoft.sh *.bz2
Worked example
ssh tbrooks@sbndgpvm01.fnal.gov
source /grid/fermiapp/products/sbnd/setup_sbnd.sh
app
mkdir data_v01_01_00
cd data_v01_01_00/
cp -av /grid/fermiapp/products/sbnd/setup /grid/fermiapp/products/sbnd/.up* .
mkdir -p sbnd_data
source "$(pwd)/setup"
declare LatestVersion="v01_00_00"
cp -av "/grid/fermiapp/products/sbnd/sbnd_data/${LatestVersion}" sbnd_data/
mkdir -p sbnd_data/v01_00_00/OpticalLibrary
cp /sbnd/data/users/gamez/OpLibraryFiles/NewOpLibrary/op_library_sbnd_v2.root sbnd_data/v01_00_00/OpticalLibrary/.
cp sbnd_data/v01_00_00/Response/CHANGES sbnd_data/v01_00_00/OpticalLibrary/.
vim sbnd_data/v01_00_00/OpticalLibrary/CHANGES
vim sbnd_data/v01_00_00/CHANGES
vim sbnd_data/v01_00_00/README
declare NewVersion="v01_01_00"
mv -v "sbnd_data/${LatestVersion}" "sbnd_data/${NewVersion}"
ups declare sbnd_data "$NewVersion" -f NULL -m sbnd_data.table -r "sbnd_data/${NewVersion}"
setup larutils v1_20_05
makeDataTar.sh "$(pwd)" sbnd_data "$NewVersion"
cp sbnd_data-01.01.00-noarch.tar.bz2 /sbnd/data/users/tbrooks/.
ssh sbnd@sbndgpvm01.fnal.gov
tar xvvf /sbnd/data/users/tbrooks/sbnd_data-01.01.00-noarch.tar.bz2 -C /grid/fermiapp/products/sbnd/
logout
ssh cvmfssbnd@oasiscfs.fnal.gov
cvmfs_server transaction sbnd.opensciencegrid.org
rsync -r tbrooks@sbndgpvm01.fnal.gov:/grid/fermiapp/products/sbnd/sbnd_data/v01_01_00* /cvmfs/sbnd.opensciencegrid.org/products/sbnd/sbnd_data/
cvmfs_server publish -m "Published sbnd_data 01.01.00" -a 2.0 sbnd.opensciencegrid.org
logout
~/scripts/copyToSciSoft.sh sbnd_data-01.01.00-noarch.tar.bz2