Build infrastructure creates a CD pipeline for creating all artifacts. The artifacts include the source tarball, installers, documentation, etc, for each build.
Instances can be launched locally for testing. You will need at least one master and one build instance.
In general, I use VMWare Fusion on OS X, not VirtualBox, and move images into a vSphere environment.
Changes happen in a branch in the workshop
A tarball is generated for the source
Package builds are triggered, all consuming the tarball, and each creating 1 package.
Documentation is generated, based on the tarball
All dependencies and test results are submitted to a branch area in the workshop.
# Helix Web Services Build Infrastructure Build infrastructure creates a CD pipeline for creating all artifacts. The artifacts include the source tarball, installers, documentation, etc, for each build. Instances can be launched locally for testing. You will need at least one master and one build instance. ## Tools * [https://www.vagrantup.com/](Vagrant) is used for local testing * [http://saltstack.com/](SaltStack) is used for configuration management * [https://jenkins-ci.org/](Jenkins) is used for continuous delivery In general, I use VMWare Fusion on OS X, not VirtualBox, and move images into a vSphere environment. ## Build Workflow Overview 1. Changes happen in a branch in the workshop 2. A tarball is generated for the source 3. Package builds are triggered, all consuming the tarball, and each creating 1 package. - Run in parallel 4. Documentation is generated, based on the tarball 5. All dependencies and test results are submitted to a branch area in the workshop.
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 15688 | Doug Scheirer |
Populate -o //guest/perforce_software/helix-web-services/... //guest/doug_scheirer/helix-web-services/.... |
||
//guest/perforce_software/helix-web-services/main/infrastructure/README.md | |||||
#1 | 15623 | tjuricek |
Add infrastructure project. This project should allow any team to setup a CD environment locally using VMWare products. A 'build' workflow will run tests, generate installers, etc, on a Jenkins instance configured with necessary plugins. A later 'release' workflow will initially push successful runs into the 'build/' directory of the branch in the workshop. (A 'production release' will use that data and push it into internal infrastructure for package signing and hosting.) Documentation will be written. This is a large set of files, so I wanted to submit them where my connection to the workshop server is faster. |