From 5bc74849b79add79c2b18448c21f394feccb2497 Mon Sep 17 00:00:00 2001 From: Markus Duft Date: Thu, 4 Feb 2021 13:33:09 +0100 Subject: [PATCH] Add release process to development documentation. Request: MO Change-Id: Id2880f330d58fdbca5c986b8790801682ddd2dea --- doc/dev/images/staging-repo.png | Bin 0 -> 92743 bytes doc/dev/index.adoc | 2 + doc/dev/release.adoc | 113 ++++++++++++++++++++++++++++++++ 3 files changed, 115 insertions(+) create mode 100644 doc/dev/images/staging-repo.png create mode 100644 doc/dev/release.adoc diff --git a/doc/dev/images/staging-repo.png b/doc/dev/images/staging-repo.png new file mode 100644 index 0000000000000000000000000000000000000000..18fd8db528aff6d1a5cda8ada642ffd2d15884c4 GIT binary patch literal 92743 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 literal 0 HcmV?d00001 diff --git a/doc/dev/index.adoc b/doc/dev/index.adoc index 4a66f4377..dbc698283 100644 --- a/doc/dev/index.adoc +++ b/doc/dev/index.adoc @@ -41,3 +41,5 @@ include::ui.adoc[] include::devenv.adoc[] include::plugins.adoc[] + +include::release.adoc[] diff --git a/doc/dev/release.adoc b/doc/dev/release.adoc new file mode 100644 index 000000000..69c5466a5 --- /dev/null +++ b/doc/dev/release.adoc @@ -0,0 +1,113 @@ +== Release Procedure + +=== Branches, Tags & GitHub Release + +[NOTE] +The steps outlined in this chapter are usually encapsuled in a single automated release job (Jenkins, ...). + +Prerequisites: + + * Know the version you want to release (i.e. `RELEASE_VERSION`) + * Know the "next" version, which will be the one set as active version *after* the release (i.e. `NEXT_VERSION`). + * A GitHub account (i.e. `GH_USER`) and a token (i.e. `GH_TOKEN`) with the permission to create and update a release on the *BDeploy* GitHub repository. + * A SonaType account (i.e. `SONATYPE_USER`) and a token (i.e. `SONATYPE_TOKEN`) with the permission to upload and release artifacts to `oss.sonatype.org` targeting maven central. + * A GPG Key which is registered with sonatype which can be used to sign the application JAR files for upload to maven. You need the key file (i.e. `GPG_FILE`), the ID of the key (i.e. `GPG_ID`) and the password to the key file (i.e. `GPG_PASS`). + * A clone of the repository - since right now a internal repository is used as well as the GitHub repository, you need a clone of the internal repository + * An empty directory where JDKs can be downloaded to. Set the path in the environment variable `JDK_DL_ROOT` + +Steps: + + * Set the environment variable with the according data prepared in the prerequisites: `GH_USER`, `GH_TOKEN`, `SONATYPE_USER`, `SONATYPE_TOKEN`, `GPG_FILE`, `GPG_ID` and `GPG_PASS`. Also set `RELEASE_VERSION` and `NEXT_VERSION`, or pass the values directly to the command. + * Execute `./release.sh ${RELEASE_VERSION} ${NEXT_VERSION}` in the repository. Make sure that the repository has the current master branch checked out and that it is ready to be released. + +This will: + + * Download the most current version of the JDK to be used. + * Set the release version in the source repository. + * Run the build with all tests but not the binary release tests. + * Updates documentation screenshots from the UI tests. + * Publish artifacts to the `oss.sonatyp.org` server. + * Note: A separate release step has to be performed manually later, see below. + * Commit changed files (version, screenshots, test-data) locally (i.e. 'Release ${RELEASE_VERSION}'). + * Push the commit to the GitHub repositories master branch. + * Publish the built artifacts to a newly created GitHub release. + * Set the next version in the source repository. + * Add the just-published version to the versions to be tested in binary release tests. + * Run the build using the new version without any tests but the binary release test - which will now verify that updating to the "next" version is possible from the just-released release. + * Commit changed file (version, test-data) locally (i.e. 'Update to ${NEXT_VERSION}'). + +[WARNING] +`release.sh` will push the release commit to GitHub, but will *not* push any commit to the origin of the repository. If the internal repository is used, you need to push there manually. Also the update to `NEXT_VERSION` is not pushed at all, and needs to be pushed separately. + +[WARNING] +Before pushing to the internal repository, make sure to execute a `git fetch --all --tags`, since GitHub will create the release tag for us in the GitHub repository automatically. + +=== Release notes + +While `release.sh` is running, you can gather release notes by looking at the individual commits that happened since the last release. This is most easily done by looking at the output of: + + git log --no-merges v3.5.0.. + +assuming that `3.5.0` was the last release. Scroll to the bottom of the output and work your way upwards commit after commit. Not *every* commit needs mentioning in the release notes, but quite often nearly every commit ends up in some or another way in the release notes. + +=== MavenCentral release + +After running `release.sh` and pushing all the commits to their respective targets, `oss.sonatype.org` will contain a new staging repositories for the maven artifacts published by the build. + +image::images/staging-repo.png[Staging Repository,align=center,width=480,link="images/staging-repo.png"] + +You need to: + + * Log in to see anything useful. + * Navigate to *Staging Repositories*. + * Select the `iobdeploy-XXXX` repository where XXXX is any number. + * In the lower part of the screen, go to *Content* and check whether the content of the repository looks complete and OK. + * Select the repository in the upper part of the screen and click *Close*. + * Wait a few minutes and refresh the view using the *Refresh* button. + * Once enabled, click the *Release* button which having the repository selected. You can leave the "Drop automatically" checked, this way nothing has to be done after clicking OK anymore. + +This will release the new version to maven central. This can take a few minutes, up to half an hour. Also the maven central index can take up to 24 hours to refresh - this is what is used to display data on the maven central homepage. Thus it may be that you cannot find the new version on the homepage, but can already download it using Maven/Gradle. + +=== Documentation Update + +After the release has been made, we need to update the documentation on the official homepage. + +Prerequisites: + + * The *BDeploy* main repository, having the `Release X.X.X` release commit/tag checked out (!). + * A clone of the official *BDeploy* homepage repository. + +In the *BDeploy* source repository, change into the `doc` directory and run + + ../gradlew build + +This will create the documentation artifacts in the `build/docs/` subdirectory, `dev` and `user` for the developer and user documentation respectively. + +Change in each directory, open `index.html` and verify that the correct release version number can be seen on the documentation index. + +Change to the *BDeploy* homepage repository and delete the `dev` and `user` directories completely. + +Copy the `dev` and `user` directories from the *BDeploy* source repositories `doc/build/docs/` directory to the homepage repository. Commit the change and push it to the origin repository. The rest is done automatically by GitHub. + +=== Build Tool Integration Plugin Update + +The *BDeploy* source repository also hosts various build tool integrations as well as test projects for some features (plugins, build tools). After the release they need to be updated as well. + +Since they need to maven artifacts published earlier, you need to make sure that those are already available from maven central. + + * `plugins/build-tool-gradle` - the Gradle integration. + * `plugins/gradle-plugin-test-project` - a test project for the Gradle integration. + * `plugins/bdeploy-demo-plugin` a simple demo *BDeploy* plugin using the public API. + +Last but not least, there is also `plugins/build-tool-tea` - the Eclipse TEA integration. This needs to be updated separately in an Eclipse TEA enabled workspace. + +For all the others, updating is done using `gradle-upgrade-interactive`. You need to have that installed globally using npm: + + npm install -g gradle-upgrade-interactive + +Once this is available, `cd` into each of the directories and run `gradle-upgrade-interactive`. You will be presented a list of things to update in the given plugin. Select all of them and confirm. + +[NOTE] +In `gradle-plugin-test-project` you will not see a *BDeploy* API jar update, as this project uses *BDeploy* only indirectly through the `build-tool-gradle` project - this is OK. + +Now build each of the projects, and confirm that everything is OK with the new *BDeploy* release. Finally commit the changes, and you're done.