h1. Sample Code Repository
Each participating center shall maintain a user-accessible Sample Code Repository of frequently-used procedures, routines, scripts, and codes on each project affiliated system. Users of all skill levels can use the samples in the Repository to find best practices for various situations. The samples will be especially helpful to users who are new to LinkSCEEM-2 or to a particular system within the project.
BC Policy: LS2_06–15
Date of Policy: 1st September 2011
First Update: 15th July 2011
An environment variable named $SAMPLES_HOME will point to the Repository base directory. Each sample will be located in its own subdirectory under the base directory. The exact architecture of the sample directories and the formatting style of the contents will be left to the discretion of the centers. However, each sample, including all scripts, codes, Makefiles, etc., shall be well-documented and shall be as self-contained as possible.
The top-level $SAMPLES_HOME directory shall contain an index file named INDEX.txt. This file includes the name and a brief explanation of each sample. The entries in the index file shall be organized by category. A description of the Code Repository and the INDEX.txt listing from each system shall be placed on the center's website.
Samples in the Repository will be created primarily by each center's staff. However, a center may choose to allow users to submit prospective samples for consideration as new entries in the Repository, subject to approval by the center staff. The submitting user shall provide all necessary files and documentation as well as future updates. Center staff shall be responsible for placing new samples and updates into the Repository.
In addition to the above-mentioned samples, each center may also have a collection of simple, stand-alone tools and scripts for the convenience of users of the systems. The tools and scripts, if present, shall be available in the user's default search path.
The $SAMPLES_HOME directory shall contain a text file named AVAILABLE_TOOLS.txt. This file will contain a list of the tools that are available on the machine on which the file is stored. In addition to listing the tools, a short description of each will be provided. If there is no man page available for a particular tool, then a description on how to use that tool will be included in the listing file.
If a center has no such tools for a particular resource, the AVAILABLE_TOOLS.txt file must still exist, and it must specify that no such tools are available for that resource.