- Build a binary that works stand alone on a SL3 computer: I used a WHIZARD binary, which I created and used before. I copied all the files needed by WHIZARD into one separate directory. By executing ldd whizard I could see, that my binary was depending on two "non standard" shared objects which I copied into the new directory and made them usable by whizard by setting the LD_LIBRARY_PATH environment variable to the current directory.
- Create a tar-file of the directory containing the binary.
Write a bash script that unpacks the tar file, changes into the WHIZARD directory and executes WHIZARD. ( I needed three trails to get this right )
- Turn my computer into a Grid-UI (I choose the GLITE middleware) and get a proxy certificate.
Copy the tar file to a grid storage element: To get access to the file catalog, I had to set the environment variable LFC_HOST to a value which I obtained by executing lcg-infosites --vo ilc lfc. I already had created a directory in the lfc named /grid/ilc/flc/samson to where I copied the tar file with the command lcg-cr --vo ilc -l lfn:/grid/ilc/flc/samson/whizard_eeuuss_grid.tgz -d grid-se2.desy.de file:/scratch/samson/whizard_eeuuss_grid.tgz (note the file: and the full path for the local file)
I tried successfully to get the tar file from the Grid-SE with the command: lcg-cp --vo ilc lfn:/grid/ilc/flc/samson/whizard_eeuuss_grid.tgz file:$(pwd)/whizard_eeuuss_grid.tgz and added this line to my execute script
- The last two lines i added to my "run script" were the following:
tar czvf whizardresult.$jobNumber.tgz whizard.eeuuss_nzh.dat whizard.evt lcg-cr --vo ilc -l lfn:/grid/ilc/flc/samson/whizardresult.$jobNumber.tgz -d grid-se2.desy.de file:$(pwd)/whizardresult.$jobNumber.tgz
- This packs the (large) output files into a tar file and copies the results to a storage element
lcg-del --vo ilc --verbose -a lfn:/grid/ilc/flc/samson/whizard_eeuuss_grid.tgz