-
Notifications
You must be signed in to change notification settings - Fork 180
Release Process
Andrew Fiedler edited this page Apr 8, 2020
·
11 revisions
DDF has gone to monthly releases with no formal voting from the DDF PMC.
Required tools
- Use Maven >= 3.1.0
- Use git client >= 1.8
Sample Versioning
SNAPSHOT | RELEASE |
---|---|
1.0.0-SNAPSHOT | 1.0.0 |
1.1.0-SNAPSHOT | 1.1.0 |
- Create new DDF Branch "We release off the branch so that there are no concerns about another PR being merged to master. This is also ensures that the new branch is more controlled and saves the step of having to announcing pausing merging into master."
- Minor and Major Releases (for patch releases such as 2.22.1, skip to the next section)
- Create the new branch
git co -b 2.22.x
- Set a new development version on the branch
mvn versions:set
Enter the new version to set 2.22.0:
- Push the new branch
git push origin 2.22.x
- Release from the DDF Pipeline job
- After selecting the DDFReleasePipeline click the Build with Parameters option in the left menu bar.
- Enter the parameters for your release and click build.
- Branch - This is the branch that should be released. For DDF this should always be a ..x branch. Ex. 2.21.x
- nextDevVersion - Under normal release circumstances this field should not need to be populated as the build will just increment the version bug number by 1. Ex 2.11.0-SNAPSHOT will become 2.11.1-SNAPSHOT
- releaseType - There are three different types of release, Build, RC, and Release. See the Release Types section for the differences.
- notesUrl - URL to the Release Notes
- skipTests - This option if checked will skip all the unit tests, itests, and static analysis when performing the release. Depending on how finicky the CI environment is at the time it might be necessary to check this option.
- testRun - If this option is selected all the normal release processing will occur but nothing will be push to the repo and no artifacts will be deployed. Select this option if you just want to verify the release process is working.
- Insert image here!
- Monitor the DDF Release job
- The job progress can be monitored (view the log) on Jenkins at: http://jenkins.phx.connexta.com/service/jenkins/job/release/job/DDFReleasePipeline/
- Click on the stage to view
- Then click on the
Logs
button.
- After the release job completes (at least the Push Commits/Tags stage when the release tag is created), the new branch can be created and pushed. This represents the new branch that will be used to patch this release.
- Set a new version on DDF Master
- Check out the tag
cd /DDF-Fork
git co master
- Set new development version on master
git co -b ddf-update-version
mvn versions:set
Enter the new version to set 2.22.0: 2.23.0-SNAPSHOT
- Push the new branch
git push origin ddf-update-version
- Create a Pull request for this change and comment build now just to verify the build is successful. For example: https://github.com/codice/ddf/pull/5606
6 Update the DDF Documentation
-
Confluence Release Notes (can be done while the pipeline runs) - Create or update the existing release notes page for the released version under https://codice.atlassian.net/wiki/spaces/DDF/pages/71275152/Release+Notes. In the past, creating a new Release Notes pages has been accomplished by copying the previous Release Notes page and updating the version numbers.
-
http://github.io/ Page (Normally handled by Rick, after the release)