Page History
The Below is some more detailed information about the off-line LCLS software orgnaization.The LCLS software is organized into releases and packages. A Release is a collection of the particular versions of the software packages. Every release has a name which includes the release "version", for example "ana-0.2.3". There are different types of releases built for different purposes, most analysis users need analysis releases whose names start with "ana-".
...
Some software can be run directly from the central releases, examples of that are HDF5 utilities, XTC utilities, etc. However if user wants to develop new code such as analysis modules for pyana or the psana frameworks framework then the user needs to create user release (sometimes also called test release) in user's own area. User release is based on a particular central release and reuse parts of the base release. The packages that exist in the user release override the same packages in the base release, all other packages and products of those packages (libraries/binaries) come from the base release.
To create user release one needs to use newrel
command which takes two parameters: base release name and user release directory, e.g.:
Code Block |
---|
newrel ana-current my_ana_rel
|
...
In addition to these special files user release can contain regular packages. One can checkout package from the base release with the command:
Code Block |
---|
kinit # needed once to obtain Kerberos ticket which is valid for 1 day
addpkg PackageName # to use the same version as in base release
addpkg PackageName V00-00-01 # to use different version
|
or create completely new package with the command:
Code Block |
---|
newpkg PackageName
|
To see the list of packages in their versions in the current release (also called test release) compared to the base release one can use relinfo
command:
Code Block |
---|
% relinfo Pkg/Rel TEST BASE(ana-0.3.5) CodeGen V00-00-18(-) V00-00-19(+) MyAna - - psana V00-00-11 V00-00-11 |