Through the VLab Development Services we support Jenkins continuous integration. Jenkins allows projects to build their software and also run unit tests. The building of the project can be triggered manually, from a gerrit trigger, or scheduled. This blog will attempt to document what steps are necessary when configuring a new Jenkins "Job".
When a project first asks to use Jenkins you need to ask the following questions so that we know how they plan on using Jenkins and have a good understanding of what it is capable of doing.
-
First thing to understand with regard to continuous integration is when should builds be done?
-
Do you want a build kicked off anytime someone submits a change?
-
If so how long do the builds take?
-
Do we have to save any build artifacts? In other words, do you want to be able to pull the results of the build and test on your own machines?
-
Is the code all java?
-
How are you building your software (e.g., mvn, ant)?
-
How many builds do we need to keep around?
-
Do you want to require that users when submitting a change include a valid issue number within their commit message? Where valid issue number means that the issue is assigned to the developer and is in the "correct" state.
Once you have these answers the Jenkins administrator will need to go into Jenkins and configure one or more "Jobs" to meet the project's needs.
-
Log into https://collaborate3.nws.noaa.gov/jenkins/
-
Click on "New Job" in the upper left of the site
To be continued...