Here are all the setting names used by the current incarnation (Sept 2013) of the Release Manager:

  • automaticTrigger - Flag for whether or not to automatically start the build when a new tag is detected.  If 'true' the build will be started.  This setting is present for every build combination but if absent is assumed to be 'false' (I believe).
  • buildDocumentation - Flag for whether or not to actually run doxygen to build the documentation for this build.  This is assumed to be false if not present and is only set to true for one OS and variant per package+versionType combination.  For example for Science Tools builds, the flag is set to true only for the rhel5-32bit debug builds (Release, Release Candidate, and Integration).
  • buildLocation - The path, in the local directory structure, where the build will be checked out and compiled.  This has to be set for every build.  On Windows (and Mac OS X Mountain Lion) it is set to a local disk location.  For the Linux builds (and Mac OS X Snow Leopard) it is set to a central directory space on u52 (for GlastRelease) or u35 (everything else).  The specified build location includes the VERSION variable that is substituted by the release manager with the value of the version column from the buildPackage table.
  • CheckoutBatchOverride - (Windows builds only) This parameter is used to override any existing default LSF parameters for the Checkout script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them is overridden or other values added, all must be supplied.  This parameter is no longer used now that windows builds are done through Jenkins.
  • checkTime - The amount of time the system should wait before looking to see if there are any new tags.  This is typically set to one hour.  However, because of the load a checkout of GlastRelease places on the system, the checkout times for the different version types (Integration, Release, etc) for GlastRelease are all slightly scattered around one hour to create a staggering effect when doing builds of this package.
  • CleanBatchOverride - (Windows builds only) This parameter is used to override any existing default LSF parameters for the Clean script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them is overridden or other values added, all must be supplied.  This parameter is no longer used now that windows builds are done through Jenkins.
  • CompileBatchOverride - This parameter is used to override any existing default LSF parameters for the Compile script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them is overridden or other values added, all must be supplied.
  • compileTime - The amount of time the system should wait for a package to compile, given in milliseconds.  After this time the RM should trigger a timeout and abort the compile attempt.  Currently set to 2 hours on the Linux OSes, 3 hours on OS X, and 8 hours on Windows for the Science Tools.  For GlastRelease and TMineExt, the time on Linux is set to 3 hours.  These values are purely emperical based on how long compiles were taking on our slowest build machines.  As hardware is updated, they could be updated as well.
  • cvsCommand - The command to use to check out code from the source code repository, currently just set to 'cvs'
  • cvsPackage - The name of the package to checkout of the code respository: 'ScienceTools-scons', 'GlastRelease-scons', etc.
  • cvsRoot - The root of the CVS tree.  On the linux machines connected to the SLAC nfs system, it is just the directory path, i.e. '/nfs/slac/g/glast/ground/cvs'.  On the Windows and Mac system, we use the external server format - :ext:centaurusa.slac.stanford.edu:/nfs/slac/g/glast/ground/cvs
  • cvsRsh - The value of the CVS_RSH environment variable to be uses, currently set to 'ssh'
  • develReleaseLocation - Path and filename of the developer distribution package (source code + executables).  This is constructed by appending the file name to the buildLocation setting for the package in question.  The full expanded path and filename is stored as the develReleaseLocation entry in the build table for use by the installer to download the package.
  • distributionLocation - (Windows and Mac) - The NFS path to the location were the download packages should be stored.  When this parameter is present for a build, it supersedes the value of buildLocation for the purposes of constructing the <type>releaseLocation values.  On Mac's, this is also the target of the scp command to that moves the download package from where it was created to its final distribution directory.
  • distributionPath - (Windows and Mac) - The local path where the distribution packages should be built.  On the Windows system this is mapped to the distributionLocation directories (which are mounted via samba) so that they are built in the correct, final location.  On the Mac, this is a local directory that the files are then scp from with the copy target being the associated distributionLocation
  • doxygenLocation - Location where the doxygen documentation should be built.
  • EraseBatchOverride - (Windows builds only) - This parameter is used to override any existing default LSF parameters for the Erase script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them are overridden or other values added, all must be supplied.  This parameter is no longer used now that windows builds are done through Jenkins.
  • excludeClean - List of directories not to remove when the eraseBuild program is run.
  • externalsLocation - Location of the external libraries (i.e. GLAST_EXT) for this build.
  • extInstallerLocation - Location on public disks where the download packages should be stored.  This is the path used by the installer to serve the package to users.  On the Linux builds, these packages are built in place as this directory is available in the file system.  On Windows builds they are also built in place but referenced through the extInstallerPath value as the directory is accessed through Samba.  On Mac builds this directory is the target of an scp command that moves the files to this location from the local directory (given by extInstallerPath) where they are initially built.
  • extInstallerPath - (Windows and Mac builds only) - If present, this overrides the extInstallerLocation variable to provide the location where the external library installation packages should be built.  On windows this is just a local path to the same directory given in extInstallerLocation but mounted via samba.  On the Mac it is a local directory that the files are then copied to extInstallerLocation from.
  • FinalizeBatchOverride - (Windows builds only) - This parameter is used to override any existing default LSF parameters for the Finalize script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them are overridden or other values added, all must be supplied.  This parameter is no longer used now that windows builds are done through Jenkins.
  • initialVersion - The first version of the package that should be automatically triggered by the Release Manager.  Any version before this should be ignored.
  • InstallerBatchOverride -(Windows builds only) - This parameter is used to override any existing default LSF parameters for the Install script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them are overridden or other values added, all must be supplied.  This parameter is no longer used now that windows builds are done through Jenkins.
  • keepNumTags -  Number of tags to keep in the CVS repository for the specific version type.  Only the keepNumTags most recent tags are kept in the repository.  All older tags are removed to prevent the cluttering of the repository with thousands of old tags.  This is only used for LATEST and HEAD tags.
  • maxHasSource - (Unsure) - I believe this may reference to how many packages to keep the source code for. Used by the BuildCleaner class and triggers the Clean script if there are more than maxHasSource packages marked as having source code in the database (hasSource field in build database table).  It is only set in fact for LATEST Science Tools builds.
  • maxKeep - Number of package version to keep on disk.  If there are more than maxKeep packages, the older ones are removed with the Erase script.
  • NotifyOwners - Flag for whether or not the Finish script should send e-mails to package owners about compile and test failures.  If not present or set to 'false' not messages are sent.
  • sconsLocation - Path to the SCons build system executable
  • sconsOptions - Options to be passed to the SCons system for this particular build.
  • sourceReleaseLocation - Path and filename of the source distribution package.  This is constructed by appending the file name to the buildLocation setting for the package in question.  The full expanded path and filename is stored as the sourceReleaseLocation entry in the build table for use by the installer to download the package.
  • submitterOs - Default OS for a build package if none is specified.  Exact use should probably be reviewed and value updated.
  • submitterVariant - Default variant for a build package if none is specified.  Exact use should probably be reviewed and value updated.
  • subPackageTagFormat - Regular expression describing the format for the tags of subpackages for the checkout package in question must have in order to be valid.
  • TestBatchOverride - This parameter is used to override any existing default LSF parameters for the Test script.  The default parameters, if they exist for a given script, are provided in the batchOpts (name and value columns) and workflowScripts (queue and user columns) tables of the rd_workflow database.  Any value here supersedes all the default values.  If any one of them is overridden or other values added, all must be supplied.
  • testTime - The amount of time the system should wait for any given test program to complete, given in milliseconds.  After this time the RM should trigger a timeout and abort the test, marking it as a failure.  This provides a guard against package tests that become hung and will never return.  Values range from 30 minutes to 2 hours depending on the package and OS.  
  • userReleaseLocation - Path and filename of the user distribution package (executables only).  This is constructed by appending the file name to the buildLocation setting for the package in question.  The full expanded path and filename is stored as the sourceReleaseLocation entry in the build table for use by the installer to download the package.
  • versionFormat - Regular expression providing the pattern that the version tag for this particular build should have.
  • versionPrepend - Prefix for the version tag that the version value (from the buildPackage table) is appended to in order to create the version tag.
  • workflowBatchOverriddenScripts - A comma separate list of all scripts for which the default parameters are overridden for this package.
  • workflowStart - The first script to execute in the workflow when starting a build of this package.
  • No labels