CSEP Distribution
From SCECpedia
Jump to navigationJump to search
Here is the summary how we distribute CSEP software.
INFRASTRUCTURE AND ENVIRONMENT
- Virtual machines required to maintain environment consistency while
allowing flexibility on hardware specifications.
- We use KVM, but any preferred methods will work.
- Install a VM instance of preferred OS.
- Install necessary dependencies (compilers, libraries, etc).
- Testing codes isolated single directory (ie /usr/local/csep).
- Once codes are developed, clone the VM instance (minus /usr/local/csep)
- Cloned images can now be used for more DEVELopment, CERTification,Operation or other testing centers.
- Codes maintained by either SVN or YUM (rpm).
OUR TYPICAL PROCESS DISTRIBUTING CSEP RELEASE
- Tag release in SVN
- Check out code base from SVN to "development" VM image
- Build RPMs for 'generic' and testing regions specific ('csep-ca', 'csep-wpacific', 'csep-global', 'csep-oceanic', 'csep-eu', 'csep-nz', 'csep-japan') packages for easy installation on VMs.
- CSEP YUM repository is updated with RPMs for the release
- RPMs on "operational" SCEC VM are updated with new release.
- VM images for each testing center (EU, NZ, Japan) are updated with corresponding to the center RPMs
- Permissions of codes are controlled by separate RPM packages or
subdirectories in SVN.
- RPMs are an extra step but much appreciated by the system admins for
ease of installation.