Multi-Facility Development, Build and Deployment System
This package contains the scripts and config information for the multi facility build and deploy process.
- There main script is
cram; a simple controller that calls other scripts.
- To run the unit tests, check this out in your workspace on
lcls-dev2 and then run ./runTests.py
The unit tests use a special facilities.cfg called facilities_test.cfg that creates installs in /tmp.
If you Ctrl-C the unit tests, you'll need to clean up folders in /tmp.
You can run individual unit tests using ./runTests.py --tests testProcessHelperIOCVersions.
cram consists of a small server part multi_facility_process_helper.py that supports well defined functionality.
Communication between the client portions and the server is JSON over SSH.
-
If you see
ValueError: No JSON object could be decoded exceptions, this typically means that the server part threw an exception.
Run the same command with a -v argument and you should see the detailed client-server communication.
-
Deploy
cram using cram. cram is stored in git under /afs/slac/g/cd/swe/git/repos/tools/multi_facility_deploy.git.
Remember when you do a git clone, you are getting the entire repo.
You'll need to switch to a tag using git checkout <tag>.
Name Last modified Size Description
Parent Directory -
Dev_cram_facility 2025-05-16 10:27 452
FACET_cram_facility 2025-05-16 10:27 454
LCLS_cram_facility 2025-05-16 10:27 453
README.html 2025-05-16 10:27 1.7K
RELEASE_NOTES 2025-05-16 10:27 2.8K
SPEAR_cram_facility 2025-05-16 10:27 454
TestFac_cram_facility 2025-05-16 10:27 456
__init__.py 2025-05-16 10:27 0
__pycache__/ 2025-05-16 10:34 -
cacheConfig.py 2025-05-16 10:27 3.5K
cacheConfig.pyc 2025-05-22 11:53 4.1K
cdCommandsParser.py 2025-05-16 10:27 3.1K
cpuEnvPathsParser.py 2025-05-16 10:27 3.3K
cram 2025-05-16 10:27 4.0K
createLinuxRTCpu.py 2025-05-16 10:27 9.8K
deleteRelease.py 2025-05-16 10:27 2.5K
describeRelease.py 2025-05-16 10:27 2.5K
describeRelease.pyc 2025-05-22 11:53 3.1K
docs/ 2025-05-16 10:27 -
email.cfg 2025-05-16 10:27 274
envPathsParser.py 2025-05-16 10:27 2.7K
epicsCommandParsers/ 2025-05-16 10:34 -
facilities.cfg 2025-05-16 10:27 4.5K
facilities_test.cfg 2025-05-16 10:27 2.0K
getIOCAtPort.py 2025-05-16 10:27 1.0K
globals.py 2025-05-16 10:27 778
globals.pyc 2025-05-22 11:53 1.4K
iocIsBorn.py 2025-05-16 10:27 82K
lintRelease.py 2025-05-16 10:27 9.2K
listCurrentReleases.py 2025-05-16 10:27 14K
listCurrentReleases.pyc 2025-05-22 11:53 11K
multi_facility_process_helper 2025-05-16 10:27 39K
multi_facility_process_helper.py 2025-05-16 10:27 39K
multi_facility_process_helper_client.py 2025-05-16 10:27 4.7K
multi_facility_process_helper_client.pyc 2025-05-22 11:53 4.4K
multiplePVGet.py 2025-05-16 10:27 1.2K
operator_revert_release.py 2025-05-16 10:27 9.4K
prePostDeployTemplate.py 2025-05-16 10:27 511
pushRelease.py 2025-05-16 10:27 5.9K
revertRelease.py 2025-05-16 10:27 6.3K
runReleaseScript.py 2025-05-16 10:27 8.1K
runTests.py 2025-05-16 10:27 1.7K
sampleCDCommands.txt 2025-05-16 10:27 2.8K
sampleCPUEnvPaths.txt 2025-05-16 10:27 7.4K
sampleEnvPaths.txt 2025-05-16 10:27 1.3K
sample_st.cmd 2025-05-16 10:27 1.2K
screeniocs.html 2025-05-16 10:27 8.7K
showHistory.py 2025-05-16 10:27 3.8K
sortScreenIOCS.py 2025-05-16 10:27 4.5K
staticcontent/ 2025-05-16 10:27 -
tables.py 2025-05-16 10:27 2.3K
templates/ 2025-05-16 10:27 -
testDelete.py 2025-05-16 10:27 4.6K
testFacilitiesConfig.py 2025-05-16 10:27 736
testLint.py 2025-05-16 10:27 5.9K
testMissingIOCTop.py 2025-05-16 10:27 21K
testParsing.py 2025-05-16 10:27 2.8K
testProcessHelperIOCVersions.py 2025-05-16 10:27 9.9K
testPush.py 2025-05-16 10:27 22K
testRevert.py 2025-05-16 10:27 29K
testRun.py 2025-05-16 10:27 13K
testUpgrade.py 2025-05-16 10:27 45K
testUtils.py 2025-05-16 10:27 8.5K
toolconfig.py 2025-05-16 10:27 7.8K
toolconfig.pyc 2025-05-22 11:53 8.3K
upgradeRelease.py 2025-05-16 10:27 19K
validateLinks.py 2025-05-16 10:27 8.3K
wizardPy/ 2025-05-16 10:27 -