diff --git a/README.adoc b/README.adoc index 2f39ae0d..80c217a6 100644 --- a/README.adoc +++ b/README.adoc @@ -4,6 +4,7 @@ Manual changes to this file will be lost when it is generated again. Edit the files in the src/main/asciidoc/ directory instead. //// + :jdkversion: 1.8 :org: spring-cloud :repo: spring-cloud-release-tools @@ -542,21 +543,21 @@ Below you can find a table with all the releaser options. |=== |Name | Default | Description -|releaser.bash.build-command | echo "{{systemProps}}" | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.deploy-command | echo "{{systemProps}}" | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.deploy-guides-command | echo "{{systemProps}}" | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.generate-release-train-docs-command | echo "{{version}}" | Command to be executed to generate release train documentation. -|releaser.bash.publish-docs-command | mkdir -p target && echo "{{version}}" | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.build-command | `echo "{{systemProps}}"` | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.deploy-command | `echo "{{systemProps}}"` | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.deploy-guides-command | `echo "{{systemProps}}"` | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.generate-release-train-docs-command | `echo "{{version}}"` | Command to be executed to generate release train documentation. +|releaser.bash.publish-docs-command | `mkdir -p target && echo "{{version}}"` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. |releaser.bash.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.bash.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. +|releaser.bash.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. |releaser.fixed-versions | | Project name to its version - overrides all versions retrieved from a release train repository like Spring Cloud Release. -|releaser.flow.default-enabled | true | Should the default flow of jobs be preserved. If set to {@code false} will not register any jobs as beans, and it will be up to you to set the whole configuration of jobs. +|releaser.flow.default-enabled | `true` | Should the default flow of jobs be preserved. If set to {@code false} will not register any jobs as beans, and it will be up to you to set the whole configuration of jobs. |releaser.git.all-test-sample-urls | | Project to urls mapping. For each project will clone the test project and will update its versions. |releaser.git.clone-destination-dir | | Where should the release train repo get cloned to. If {@code null} defaults to a temporary directory. |releaser.git.documentation-branch | | Branch to check out for the documentation project. |releaser.git.documentation-url | | URL to the documentation Git repository. -|releaser.git.fetch-versions-from-git | true | If {@code true} then should fill the map of versions from Git. If {@code false} then picks fixed versions. -|releaser.git.number-of-checked-milestones | 50 | In order not to iterate endlessly over milestones we introduce a threshold of milestones that we will go through to find the matching milestone. +|releaser.git.fetch-versions-from-git | `true` | If {@code true} then should fill the map of versions from Git. If {@code false} then picks fixed versions. +|releaser.git.number-of-checked-milestones | `50` | In order not to iterate endlessly over milestones we introduce a threshold of milestones that we will go through to find the matching milestone. |releaser.git.oauth-token | | GitHub OAuth token to be used to interact with GitHub repo. |releaser.git.org-name | | The organization name on Github. |releaser.git.password | | Optional Git password. If not passed keys will be used for authentication. @@ -566,59 +567,59 @@ Below you can find a table with all the releaser options. |releaser.git.release-train-docs-url | | URL to the release train documentation. |releaser.git.release-train-wiki-page-prefix | | Page prefix for the release train wiki. E.g. for [Spring-Cloud-Finchley-Release-Notes] it would be [Spring-Cloud]. |releaser.git.release-train-wiki-url | | URL to the release train wiki. -|releaser.git.run-updated-samples | false | If set to {@code false}, will not update the test samples. +|releaser.git.run-updated-samples | `false` | If set to {@code false}, will not update the test samples. |releaser.git.spring-project-branch | | Branch to check out for the release train project. |releaser.git.spring-project-url | | URL to the release train project page repository. |releaser.git.test-samples-branch | | Branch to check out for the test samples. |releaser.git.test-samples-project-url | | URL to test samples. -|releaser.git.update-all-test-samples | false | If set to {@code false}, will not clone and update the samples for all projects. -|releaser.git.update-documentation-repo | false | If {@code false}, will not update the documentation repository. -|releaser.git.update-github-milestones | false | If set to {@code false}, will not update Github milestones. -|releaser.git.update-release-train-docs | false | If set to {@code false}, will not update the release train docs. -|releaser.git.update-release-train-wiki | false | If set to {@code false}, will not clone and update the release train wiki. -|releaser.git.update-spring-guides | false | If set to {@code false}, will not update Spring Guides for a release train. -|releaser.git.update-spring-project | false | If set to {@code false}, will not update the Spring Project for a release train. E.g. for Spring Cloud will not update https://cloud.spring.io . -|releaser.git.update-start-spring-io | false | If set to {@code false}, will not update start.spring.io for a release train. +|releaser.git.update-all-test-samples | `false` | If set to {@code false}, will not clone and update the samples for all projects. +|releaser.git.update-documentation-repo | `false` | If {@code false}, will not update the documentation repository. +|releaser.git.update-github-milestones | `false` | If set to {@code false}, will not update Github milestones. +|releaser.git.update-release-train-docs | `false` | If set to {@code false}, will not update the release train docs. +|releaser.git.update-release-train-wiki | `false` | If set to {@code false}, will not clone and update the release train wiki. +|releaser.git.update-spring-guides | `false` | If set to {@code false}, will not update Spring Guides for a release train. +|releaser.git.update-spring-project | `false` | If set to {@code false}, will not update the Spring Project for a release train. E.g. for Spring Cloud will not update https://cloud.spring.io . +|releaser.git.update-start-spring-io | `false` | If set to {@code false}, will not update start.spring.io for a release train. |releaser.git.username | | Optional Git username. If not passed keys will be used for authentication. -|releaser.gradle.build-command | ./gradlew clean build publishToMavenLocal --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to build the project If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.gradle.deploy-command | ./gradlew publish --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to deploy a built project. -|releaser.gradle.deploy-guides-command | ./gradlew clean build deployGuides --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to build and deploy guides project only. -|releaser.gradle.generate-release-train-docs-command | ./gradlew generateReleaseTrainDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to generate release train documentation. +|releaser.gradle.build-command | `./gradlew clean build publishToMavenLocal --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to build the project If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.gradle.deploy-command | `./gradlew publish --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to deploy a built project. +|releaser.gradle.deploy-guides-command | `./gradlew clean build deployGuides --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to build and deploy guides project only. +|releaser.gradle.generate-release-train-docs-command | `./gradlew generateReleaseTrainDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to generate release train documentation. |releaser.gradle.gradle-props-substitution | | A mapping that should be applied to {@code gradle.properties} in order to perform a substitution of properties. The mapping is from a property inside {@code gradle.properties} to the projects name. Example. In {@code gradle.properties} you have {@code verifierVersion=1.0.0} . You want this property to get updated with the value of {@code spring-cloud-contract} version. Then it's enough to do the mapping like this for this Releaser's property: {@code verifierVersion=spring-cloud-contract}. |releaser.gradle.ignored-gradle-regex | | List of regular expressions of ignored gradle props. Defaults to test projects and samples. -|releaser.gradle.publish-docs-command | ./gradlew publishDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. +|releaser.gradle.publish-docs-command | `./gradlew publishDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. |releaser.gradle.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.gradle.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. -|releaser.maven.build-command | ./mvnw clean install -B -Pdocs {{systemProps}} | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.deploy-command | ./mvnw deploy -DskipTests -B -Pfast,deploy {{systemProps}} | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.deploy-guides-command | ./mvnw clean verify deploy -B -Pguides,integration -pl guides {{systemProps}} | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.generate-release-train-docs-command | bash release_train.sh --retrieveversions --version {{version}} --ghpages --auto | Command to be executed to generate release train documentation. -|releaser.maven.publish-docs-command | ./mvnw deploy -DskipTests -B -Pfast,deploy,docs -pl docs {{systemProps}} | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. +|releaser.gradle.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. +|releaser.maven.build-command | `./mvnw clean install -B -Pdocs {{systemProps}}` | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.deploy-command | `./mvnw deploy -DskipTests -B -Pfast,deploy {{systemProps}}` | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.deploy-guides-command | `./mvnw clean verify deploy -B -Pguides,integration -pl guides {{systemProps}}` | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.generate-release-train-docs-command | `bash release_train.sh --retrieveversions --version {{version}} --ghpages --auto` | Command to be executed to generate release train documentation. +|releaser.maven.publish-docs-command | `./mvnw deploy -DskipTests -B -Pfast,deploy,docs -pl docs {{systemProps}}` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. |releaser.maven.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.maven.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. -|releaser.meta-release.enabled | false | Are we releasing the whole suite of apps or only one? +|releaser.maven.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. +|releaser.meta-release.enabled | `false` | Are we releasing the whole suite of apps or only one? |releaser.meta-release.git-org-url | | The URL of the Git organization. We'll append each project's name to it. |releaser.meta-release.projects-to-skip | | Names of projects to skip deployment for meta-release. -|releaser.meta-release.release-group-thread-count | 4 | Number of threads per release group. E.g. for thread count of 4 if there are 6 projects in a release group, 4 of them will be executed in parallel and 2 will wait for their turn. -|releaser.meta-release.release-group-timeout-in-minutes | 180 | Timeout in minutes during which we're waiting for a single composite task per a project to be executed. That means that if set to e.g. 180 then a release process for a single project should take at most 180 minutes. +|releaser.meta-release.release-group-thread-count | `4` | Number of threads per release group. E.g. for thread count of 4 if there are 6 projects in a release group, 4 of them will be executed in parallel and 2 will wait for their turn. +|releaser.meta-release.release-group-timeout-in-minutes | `180` | Timeout in minutes during which we're waiting for a single composite task per a project to be executed. That means that if set to e.g. 180 then a release process for a single project should take at most 180 minutes. |releaser.meta-release.release-groups | | If provided, allows to provide groups of projects that can be ran in parallel. E.g. {@code --releaser.meta-release.release-groups[0]=projectA,projectB,projectC} {@code --releaser.meta-release.release-groups[1]=projectD,projectE} {@code --releaser.meta-release.release-groups[2]=projectF,projectG} The order is still provided by the list of versions passed to the releaser. Basing on that order, and this value we are able to build a flow with projects. |releaser.meta-release.release-train-dependency-names | | All the names of dependencies that should be updated with the release train project version. |releaser.meta-release.release-train-project-name | | Name of the release train project. |releaser.pom.bom-version-pattern | | The pattern to match a version property in a BOM. Remember to catch the dependency name in a group. E.g. "^(spring-cloud-.*)\\.version$". -|releaser.pom.branch | main | Which branch of release train BOM should be checked out. Defaults to {@code main}. -|releaser.pom.ignored-pom-regex | ^.*\.git/.*$ | List of regular expressions of ignored poms. Defaults to test projects and samples. +|releaser.pom.branch | `main` | Which branch of release train BOM should be checked out. Defaults to {@code main}. +|releaser.pom.ignored-pom-regex | `^.*\.git/.*$` | List of regular expressions of ignored poms. Defaults to test projects and samples. |releaser.pom.pom-with-boot-starter-parent | | Subfolder of the pom that contains the {@code spring-boot-starer-parent} dependency. |releaser.pom.this-train-bom | | Subfolder of the pom that contains the versions for the release train. -|releaser.post-release-tasks-only | false | If set to {@code true} will run only post release tasks. -|releaser.sagan.base-url | https://spring.io | URL to the Sagan API. -|releaser.sagan.boot-section-file-name | sagan-boot.adoc | Name of the ascii doc file with boot part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. -|releaser.sagan.docs-adocs-file | docs/src/main/asciidoc | Folder with asciidoctor files for docs. -|releaser.sagan.index-section-file-name | sagan-index.adoc | Name of the ascii doc file with core part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. -|releaser.sagan.update-sagan | false | If set to {@code false} will not update Sagan. -|releaser.skip-post-release-tasks | false | If set to {@code true} will not run post release tasks. -|releaser.template.enabled | false | Should template generation be enabled. +|releaser.post-release-tasks-only | `false` | If set to {@code true} will run only post release tasks. +|releaser.sagan.base-url | `https://spring.io` | URL to the Sagan API. +|releaser.sagan.boot-section-file-name | `sagan-boot.adoc` | Name of the ascii doc file with boot part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. +|releaser.sagan.docs-adocs-file | `docs/src/main/asciidoc` | Folder with asciidoctor files for docs. +|releaser.sagan.index-section-file-name | `sagan-index.adoc` | Name of the ascii doc file with core part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. +|releaser.sagan.update-sagan | `false` | If set to {@code false} will not update Sagan. +|releaser.skip-post-release-tasks | `false` | If set to {@code true} will not run post release tasks. +|releaser.template.enabled | `false` | Should template generation be enabled. |releaser.template.template-folder | | Folder in which blog, email etc. templates are stored. -|releaser.versions.all-versions-file-url | https://raw.githubusercontent.com/spring-io/start.spring.io/master/start-site/src/main/resources/application.yml | Url to a file containing all the versions. Defaults to YAML from start.spring.io. +|releaser.versions.all-versions-file-url | `https://raw.githubusercontent.com/spring-io/start.spring.io/master/start-site/src/main/resources/application.yml` | Url to a file containing all the versions. Defaults to YAML from start.spring.io. |releaser.versions.bom-name | | Name in the YAML from initilizr for BOM mappings. |releaser.working-dir | | By default Releaser assumes running the program from the current working directory. If you want to change this behaviour - just change this value. @@ -684,18 +685,18 @@ You may get an exception similar to the following: [source] ---- Caused by: org.eclipse.jgit.errors.TransportException: git@github.com:spring-cloud/spring-cloud-sleuth.git: Auth fail - at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:160) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:137) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.transport.TransportGitSsh$SshPushConnection.(TransportGitSsh.java:322) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.transport.TransportGitSsh.openPush(TransportGitSsh.java:167) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.transport.PushProcess.execute(PushProcess.java:160) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.transport.Transport.push(Transport.java:1275) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:161) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - ... 25 common frames omitted + at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:160) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:137) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.transport.TransportGitSsh$SshPushConnection.(TransportGitSsh.java:322) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.transport.TransportGitSsh.openPush(TransportGitSsh.java:167) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.transport.PushProcess.execute(PushProcess.java:160) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.transport.Transport.push(Transport.java:1275) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:161) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + ... 25 common frames omitted Caused by: com.jcraft.jsch.JSchException: Auth fail - at com.jcraft.jsch.Session.connect(Session.java:512) ~[jsch-0.1.53.jar!/:na] - at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:117) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] - ... 31 common frames omitted + at com.jcraft.jsch.Session.connect(Session.java:512) ~[jsch-0.1.53.jar!/:na] + at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:117) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r] + ... 31 common frames omitted ---- To fix that just call, run the following commands before running the app: @@ -714,10 +715,10 @@ If you know what you're doing and want to skip snapshot / milestone version chec [source,xml] ---- - - 1.19.2-M2 - 0.6.12 - + + 1.19.2-M2 + 0.6.12 + ---- == Building @@ -836,7 +837,7 @@ git pull origin jenkins-releaser-config . Create a copy of that file and set the name of the copy to .properties (for example: 2020_0_2.properties) . Edit this file and update all project versions to their latest release. .. The latest release for each project can be determined by navigating to the individual Github project and checking for commits since the last release, where the last release is marked by a commit from spring-cloud-issues. If there are commits since the last release, change the value in the properties file. If there are no commits since the last release (i.e. the last commit is from spring-cloud-issues) then do not increment the value. -. Make a note of the projects that did not increment their version number, as those projects will need to be specified later in the “RELEASER_PROJECTS_TO_SKIP” field in the Jenkins project spring-cloud-meta-releaser +. Make a note of the projects that did not increment their version number, as those projects will need to be specified later in the “RELEASER_PROJECTS_TO_SKIP” field in the Jenkins project spring-cloud--meta-releaser NOTE: Sometimes the release value for a project will need to be incremented by more than one, for example if there was a release for an individual project due to a CVE and there were commits made after that release. To determine the new version number, look for the latest version in the commit history from spring-cloud-issues. @@ -849,34 +850,34 @@ git push origin jenkins-releaser-config ``` [start=8] . Request that project owners verify versions in the Spring Cloud Slack room by sharing a github link to the 2020_0_x.properties you just pushed. -. Now go to the `spring-cloud-build-releaser` job on Jenkins +. Now go to the `spring-cloud-build--version-releaser` job on Jenkins. For example: `spring-cloud-build-Kilburn-main-releaser`. NOTE: The builder project is required to run first because it is required for spring-cloud-function and spring-cloud-stream. All other spring-cloud builds will run after spring-cloud-function and spring-cloud-stream have performed a successful release [start=10] . Click `Build With Parameters` on the left side of page -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-buildwithparams.png[Build With Params] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-buildwithparams.png[Build With Params] [start=11] . In the RELEASE_VERSION column enter the name of the file you created without the properties extension -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-setreleaseversion.png[Set The Version] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-setreleaseversion.png[Set The Version] [start=12] . Click the “DRY_RUN” option and then click `Build` button as shown below: -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] [start=13] . Once the dry run is successfully complete we need to remove all of the artifacts from the dry run. To do this select the `spring-cloud-purge-worker-artifacts-releaser` job from the list of jobs. . Once the purge work has completed successfully, . Select Rebuild Last option on the left side of the page. -. Now go to the `spring-cloud-build-releaser` job on Jenkins +. Now go to the `spring-cloud-build--version-releaser` job on Jenkins , Select the last build . When build page appears click the `Rebuild` option. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectlastrun.png[Select Last Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectlastrun.png[Select Last Run] [start=18] . Deselect “DRY_RUN” then click the `Build` button. @@ -884,15 +885,15 @@ image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools === Full Spring Cloud Release . Once Spring Cloud Stream and Function projects are released verify that all other builds are succeeding -. Now go to the `Spring-cloud-meta-releaser` job on Jenkins +. Now go to the `Spring-cloud--meta-releaser` job on Jenkins. For example: `spring-cloud-Kilburn-meta-releaser` . Click `Build With Parameters` on the left side of page -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-buildwithparameters.png[Build With Params] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-buildwithparameters.png[Build With Params] [start=4] . Update RELEASE_VERSION with the current release and corresponds to the release file. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-setreleaseversion.png[Set The Version] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-setreleaseversion.png[Set The Version] [start=5] . Add spring-cloud-build to RELEASER_PROJECTS_TO_SKIP, so it won’t be rebuilt. @@ -900,7 +901,7 @@ Also any other projects that did not change in the properties files, add it to t . Select Dry Run option . Click Build -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] TIP: If there is a failure you can launch the build from the failed project. To do this: @@ -914,7 +915,7 @@ NOTE: Spring Cloud K8’s Integration tests may time out. Restart the build. . Upon a successful "DRY_RUN". . Click "Rebuild Last" option on the left side of the page. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-rebuildlast.png[Rebuild Last] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-rebuildlast.png[Rebuild Last] [start=10] . When the build page is rendered. @@ -1140,9 +1141,9 @@ If you need to add `ignoredClassPatterns` or `ignoredResourcePatterns` to your s duplicate-finder-maven-plugin - org.joda.time.base.BaseDateTime - .*module-info - + org.joda.time.base.BaseDateTime + .*module-info + changelog.txt @@ -1153,3 +1154,4 @@ If you need to add `ignoredClassPatterns` or `ignoredResourcePatterns` to your s ---- + diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index 67c4105d..303a1ead 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -1,21 +1,21 @@ |=== |Name | Default | Description -|releaser.bash.build-command | echo "{{systemProps}}" | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.deploy-command | echo "{{systemProps}}" | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.deploy-guides-command | echo "{{systemProps}}" | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.bash.generate-release-train-docs-command | echo "{{version}}" | Command to be executed to generate release train documentation. -|releaser.bash.publish-docs-command | mkdir -p target && echo "{{version}}" | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.build-command | `echo "{{systemProps}}"` | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.deploy-command | `echo "{{systemProps}}"` | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.deploy-guides-command | `echo "{{systemProps}}"` | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.bash.generate-release-train-docs-command | `echo "{{version}}"` | Command to be executed to generate release train documentation. +|releaser.bash.publish-docs-command | `mkdir -p target && echo "{{version}}"` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. |releaser.bash.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.bash.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. +|releaser.bash.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. |releaser.fixed-versions | | Project name to its version - overrides all versions retrieved from a release train repository like Spring Cloud Release. -|releaser.flow.default-enabled | true | Should the default flow of jobs be preserved. If set to {@code false} will not register any jobs as beans, and it will be up to you to set the whole configuration of jobs. +|releaser.flow.default-enabled | `true` | Should the default flow of jobs be preserved. If set to {@code false} will not register any jobs as beans, and it will be up to you to set the whole configuration of jobs. |releaser.git.all-test-sample-urls | | Project to urls mapping. For each project will clone the test project and will update its versions. |releaser.git.clone-destination-dir | | Where should the release train repo get cloned to. If {@code null} defaults to a temporary directory. |releaser.git.documentation-branch | | Branch to check out for the documentation project. |releaser.git.documentation-url | | URL to the documentation Git repository. -|releaser.git.fetch-versions-from-git | true | If {@code true} then should fill the map of versions from Git. If {@code false} then picks fixed versions. -|releaser.git.number-of-checked-milestones | 50 | In order not to iterate endlessly over milestones we introduce a threshold of milestones that we will go through to find the matching milestone. +|releaser.git.fetch-versions-from-git | `true` | If {@code true} then should fill the map of versions from Git. If {@code false} then picks fixed versions. +|releaser.git.number-of-checked-milestones | `50` | In order not to iterate endlessly over milestones we introduce a threshold of milestones that we will go through to find the matching milestone. |releaser.git.oauth-token | | GitHub OAuth token to be used to interact with GitHub repo. |releaser.git.org-name | | The organization name on Github. |releaser.git.password | | Optional Git password. If not passed keys will be used for authentication. @@ -25,60 +25,60 @@ |releaser.git.release-train-docs-url | | URL to the release train documentation. |releaser.git.release-train-wiki-page-prefix | | Page prefix for the release train wiki. E.g. for [Spring-Cloud-Finchley-Release-Notes] it would be [Spring-Cloud]. |releaser.git.release-train-wiki-url | | URL to the release train wiki. -|releaser.git.run-updated-samples | false | If set to {@code false}, will not update the test samples. +|releaser.git.run-updated-samples | `false` | If set to {@code false}, will not update the test samples. |releaser.git.spring-project-branch | | Branch to check out for the release train project. |releaser.git.spring-project-url | | URL to the release train project page repository. |releaser.git.test-samples-branch | | Branch to check out for the test samples. |releaser.git.test-samples-project-url | | URL to test samples. -|releaser.git.update-all-test-samples | false | If set to {@code false}, will not clone and update the samples for all projects. -|releaser.git.update-documentation-repo | false | If {@code false}, will not update the documentation repository. -|releaser.git.update-github-milestones | false | If set to {@code false}, will not update Github milestones. -|releaser.git.update-release-train-docs | false | If set to {@code false}, will not update the release train docs. -|releaser.git.update-release-train-wiki | false | If set to {@code false}, will not clone and update the release train wiki. -|releaser.git.update-spring-guides | false | If set to {@code false}, will not update Spring Guides for a release train. -|releaser.git.update-spring-project | false | If set to {@code false}, will not update the Spring Project for a release train. E.g. for Spring Cloud will not update https://cloud.spring.io . -|releaser.git.update-start-spring-io | false | If set to {@code false}, will not update start.spring.io for a release train. +|releaser.git.update-all-test-samples | `false` | If set to {@code false}, will not clone and update the samples for all projects. +|releaser.git.update-documentation-repo | `false` | If {@code false}, will not update the documentation repository. +|releaser.git.update-github-milestones | `false` | If set to {@code false}, will not update Github milestones. +|releaser.git.update-release-train-docs | `false` | If set to {@code false}, will not update the release train docs. +|releaser.git.update-release-train-wiki | `false` | If set to {@code false}, will not clone and update the release train wiki. +|releaser.git.update-spring-guides | `false` | If set to {@code false}, will not update Spring Guides for a release train. +|releaser.git.update-spring-project | `false` | If set to {@code false}, will not update the Spring Project for a release train. E.g. for Spring Cloud will not update https://cloud.spring.io . +|releaser.git.update-start-spring-io | `false` | If set to {@code false}, will not update start.spring.io for a release train. |releaser.git.username | | Optional Git username. If not passed keys will be used for authentication. -|releaser.gradle.build-command | ./gradlew clean build publishToMavenLocal --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to build the project If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.gradle.deploy-command | ./gradlew publish --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to deploy a built project. -|releaser.gradle.deploy-guides-command | ./gradlew clean build deployGuides --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to build and deploy guides project only. -|releaser.gradle.generate-release-train-docs-command | ./gradlew generateReleaseTrainDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to generate release train documentation. +|releaser.gradle.build-command | `./gradlew clean build publishToMavenLocal --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to build the project If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.gradle.deploy-command | `./gradlew publish --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to deploy a built project. +|releaser.gradle.deploy-guides-command | `./gradlew clean build deployGuides --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to build and deploy guides project only. +|releaser.gradle.generate-release-train-docs-command | `./gradlew generateReleaseTrainDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to generate release train documentation. |releaser.gradle.gradle-props-substitution | | A mapping that should be applied to {@code gradle.properties} in order to perform a substitution of properties. The mapping is from a property inside {@code gradle.properties} to the projects name. Example. In {@code gradle.properties} you have {@code verifierVersion=1.0.0} . You want this property to get updated with the value of {@code spring-cloud-contract} version. Then it's enough to do the mapping like this for this Releaser's property: {@code verifierVersion=spring-cloud-contract}. |releaser.gradle.ignored-gradle-regex | | List of regular expressions of ignored gradle props. Defaults to test projects and samples. -|releaser.gradle.publish-docs-command | ./gradlew publishDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}} | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. +|releaser.gradle.publish-docs-command | `./gradlew publishDocs --console=plain -PnextVersion={{nextVersion}} -PoldVersion={{oldVersion}} -PcurrentVersion={{version}} {{systemProps}}` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. |releaser.gradle.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.gradle.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. -|releaser.maven.build-command | ./mvnw clean install -B -Pdocs {{systemProps}} | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.deploy-command | ./mvnw deploy -DskipTests -B -Pfast,deploy {{systemProps}} | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.deploy-guides-command | ./mvnw clean verify deploy -B -Pguides,integration -pl guides {{systemProps}} | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. -|releaser.maven.generate-release-train-docs-command | bash release_train.sh --retrieveversions --version {{version}} --ghpages --auto | Command to be executed to generate release train documentation. -|releaser.maven.publish-docs-command | ./mvnw deploy -DskipTests -B -Pfast,deploy,docs -pl docs {{systemProps}} | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. +|releaser.gradle.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. +|releaser.maven.build-command | `./mvnw clean install -B -Pdocs {{systemProps}}` | Command to be executed to build the project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.deploy-command | `./mvnw deploy -DskipTests -B -Pfast,deploy {{systemProps}}` | Command to be executed to deploy a built project. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.deploy-guides-command | `./mvnw clean verify deploy -B -Pguides,integration -pl guides {{systemProps}}` | Command to be executed to build and deploy guides project only. If present "{{version}}" will be replaced by the provided version. "{{nextVersion}}" with the bumped snapshot version and "{{oldVersion}}" with the version before version updating. +|releaser.maven.generate-release-train-docs-command | `bash release_train.sh --retrieveversions --version {{version}} --ghpages --auto` | Command to be executed to generate release train documentation. +|releaser.maven.publish-docs-command | `./mvnw deploy -DskipTests -B -Pfast,deploy,docs -pl docs {{systemProps}}` | Command to be executed to publish documentation. If present "{{version}}" will be replaced by the provided version. |releaser.maven.system-properties | | Additional system properties that should be passed to the build / deploy commands. If present in other commands "{{systemProps}}" will be substituted with this property. -|releaser.maven.wait-time-in-minutes | 20 | Max wait time in minutes for the process to finish. -|releaser.meta-release.enabled | false | Are we releasing the whole suite of apps or only one? +|releaser.maven.wait-time-in-minutes | `20` | Max wait time in minutes for the process to finish. +|releaser.meta-release.enabled | `false` | Are we releasing the whole suite of apps or only one? |releaser.meta-release.git-org-url | | The URL of the Git organization. We'll append each project's name to it. |releaser.meta-release.projects-to-skip | | Names of projects to skip deployment for meta-release. -|releaser.meta-release.release-group-thread-count | 4 | Number of threads per release group. E.g. for thread count of 4 if there are 6 projects in a release group, 4 of them will be executed in parallel and 2 will wait for their turn. -|releaser.meta-release.release-group-timeout-in-minutes | 180 | Timeout in minutes during which we're waiting for a single composite task per a project to be executed. That means that if set to e.g. 180 then a release process for a single project should take at most 180 minutes. +|releaser.meta-release.release-group-thread-count | `4` | Number of threads per release group. E.g. for thread count of 4 if there are 6 projects in a release group, 4 of them will be executed in parallel and 2 will wait for their turn. +|releaser.meta-release.release-group-timeout-in-minutes | `180` | Timeout in minutes during which we're waiting for a single composite task per a project to be executed. That means that if set to e.g. 180 then a release process for a single project should take at most 180 minutes. |releaser.meta-release.release-groups | | If provided, allows to provide groups of projects that can be ran in parallel. E.g. {@code --releaser.meta-release.release-groups[0]=projectA,projectB,projectC} {@code --releaser.meta-release.release-groups[1]=projectD,projectE} {@code --releaser.meta-release.release-groups[2]=projectF,projectG} The order is still provided by the list of versions passed to the releaser. Basing on that order, and this value we are able to build a flow with projects. |releaser.meta-release.release-train-dependency-names | | All the names of dependencies that should be updated with the release train project version. |releaser.meta-release.release-train-project-name | | Name of the release train project. |releaser.pom.bom-version-pattern | | The pattern to match a version property in a BOM. Remember to catch the dependency name in a group. E.g. "^(spring-cloud-.*)\\.version$". -|releaser.pom.branch | main | Which branch of release train BOM should be checked out. Defaults to {@code main}. -|releaser.pom.ignored-pom-regex | ^.*\.git/.*$ | List of regular expressions of ignored poms. Defaults to test projects and samples. +|releaser.pom.branch | `main` | Which branch of release train BOM should be checked out. Defaults to {@code main}. +|releaser.pom.ignored-pom-regex | `^.*\.git/.*$` | List of regular expressions of ignored poms. Defaults to test projects and samples. |releaser.pom.pom-with-boot-starter-parent | | Subfolder of the pom that contains the {@code spring-boot-starer-parent} dependency. |releaser.pom.this-train-bom | | Subfolder of the pom that contains the versions for the release train. -|releaser.post-release-tasks-only | false | If set to {@code true} will run only post release tasks. -|releaser.sagan.base-url | https://spring.io | URL to the Sagan API. -|releaser.sagan.boot-section-file-name | sagan-boot.adoc | Name of the ascii doc file with boot part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. -|releaser.sagan.docs-adocs-file | docs/src/main/asciidoc | Folder with asciidoctor files for docs. -|releaser.sagan.index-section-file-name | sagan-index.adoc | Name of the ascii doc file with core part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. -|releaser.sagan.update-sagan | false | If set to {@code false} will not update Sagan. -|releaser.skip-post-release-tasks | false | If set to {@code true} will not run post release tasks. -|releaser.template.enabled | false | Should template generation be enabled. +|releaser.post-release-tasks-only | `false` | If set to {@code true} will run only post release tasks. +|releaser.sagan.base-url | `https://spring.io` | URL to the Sagan API. +|releaser.sagan.boot-section-file-name | `sagan-boot.adoc` | Name of the ascii doc file with boot part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. +|releaser.sagan.docs-adocs-file | `docs/src/main/asciidoc` | Folder with asciidoctor files for docs. +|releaser.sagan.index-section-file-name | `sagan-index.adoc` | Name of the ascii doc file with core part of this project's Sagan project page. Linked with {@link this#docsAdocsFile}. +|releaser.sagan.update-sagan | `false` | If set to {@code false} will not update Sagan. +|releaser.skip-post-release-tasks | `false` | If set to {@code true} will not run post release tasks. +|releaser.template.enabled | `false` | Should template generation be enabled. |releaser.template.template-folder | | Folder in which blog, email etc. templates are stored. -|releaser.versions.all-versions-file-url | https://raw.githubusercontent.com/spring-io/start.spring.io/master/start-site/src/main/resources/application.yml | Url to a file containing all the versions. Defaults to YAML from start.spring.io. +|releaser.versions.all-versions-file-url | `https://raw.githubusercontent.com/spring-io/start.spring.io/master/start-site/src/main/resources/application.yml` | Url to a file containing all the versions. Defaults to YAML from start.spring.io. |releaser.versions.bom-name | | Name in the YAML from initilizr for BOM mappings. |releaser.working-dir | | By default Releaser assumes running the program from the current working directory. If you want to change this behaviour - just change this value. -|=== +|=== \ No newline at end of file diff --git a/docs/src/main/asciidoc/spring-cloud-release-process.adoc b/docs/src/main/asciidoc/spring-cloud-release-process.adoc index 37758cf3..d8c3e4d0 100644 --- a/docs/src/main/asciidoc/spring-cloud-release-process.adoc +++ b/docs/src/main/asciidoc/spring-cloud-release-process.adoc @@ -25,7 +25,7 @@ git pull origin jenkins-releaser-config . Create a copy of that file and set the name of the copy to .properties (for example: 2020_0_2.properties) . Edit this file and update all project versions to their latest release. .. The latest release for each project can be determined by navigating to the individual Github project and checking for commits since the last release, where the last release is marked by a commit from spring-cloud-issues. If there are commits since the last release, change the value in the properties file. If there are no commits since the last release (i.e. the last commit is from spring-cloud-issues) then do not increment the value. -. Make a note of the projects that did not increment their version number, as those projects will need to be specified later in the “RELEASER_PROJECTS_TO_SKIP” field in the Jenkins project spring-cloud-meta-releaser +. Make a note of the projects that did not increment their version number, as those projects will need to be specified later in the “RELEASER_PROJECTS_TO_SKIP” field in the Jenkins project spring-cloud--meta-releaser NOTE: Sometimes the release value for a project will need to be incremented by more than one, for example if there was a release for an individual project due to a CVE and there were commits made after that release. To determine the new version number, look for the latest version in the commit history from spring-cloud-issues. @@ -38,34 +38,34 @@ git push origin jenkins-releaser-config ``` [start=8] . Request that project owners verify versions in the Spring Cloud Slack room by sharing a github link to the 2020_0_x.properties you just pushed. -. Now go to the `spring-cloud-build-releaser` job on Jenkins +. Now go to the `spring-cloud-build--version-releaser` job on Jenkins. For example: `spring-cloud-build-Kilburn-main-releaser`. NOTE: The builder project is required to run first because it is required for spring-cloud-function and spring-cloud-stream. All other spring-cloud builds will run after spring-cloud-function and spring-cloud-stream have performed a successful release [start=10] . Click `Build With Parameters` on the left side of page -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-buildwithparams.png[Build With Params] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-buildwithparams.png[Build With Params] [start=11] . In the RELEASE_VERSION column enter the name of the file you created without the properties extension -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-setreleaseversion.png[Set The Version] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-setreleaseversion.png[Set The Version] [start=12] . Click the “DRY_RUN” option and then click `Build` button as shown below: -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] [start=13] . Once the dry run is successfully complete we need to remove all of the artifacts from the dry run. To do this select the `spring-cloud-purge-worker-artifacts-releaser` job from the list of jobs. . Once the purge work has completed successfully, . Select Rebuild Last option on the left side of the page. -. Now go to the `spring-cloud-build-releaser` job on Jenkins +. Now go to the `spring-cloud-build--version-releaser` job on Jenkins , Select the last build . When build page appears click the `Rebuild` option. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectlastrun.png[Select Last Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectlastrun.png[Select Last Run] [start=18] . Deselect “DRY_RUN” then click the `Build` button. @@ -73,15 +73,15 @@ image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools === Full Spring Cloud Release . Once Spring Cloud Stream and Function projects are released verify that all other builds are succeeding -. Now go to the `Spring-cloud-meta-releaser` job on Jenkins +. Now go to the `Spring-cloud--meta-releaser` job on Jenkins. For example: `spring-cloud-Kilburn-meta-releaser` . Click `Build With Parameters` on the left side of page -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-buildwithparameters.png[Build With Params] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-buildwithparameters.png[Build With Params] [start=4] . Update RELEASE_VERSION with the current release and corresponds to the release file. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-setreleaseversion.png[Set The Version] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-setreleaseversion.png[Set The Version] [start=5] . Add spring-cloud-build to RELEASER_PROJECTS_TO_SKIP, so it won’t be rebuilt. @@ -89,7 +89,7 @@ Also any other projects that did not change in the properties files, add it to t . Select Dry Run option . Click Build -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/build-releaser-selectdryrun.png[Set Dry Run] TIP: If there is a failure you can launch the build from the failed project. To do this: @@ -103,7 +103,7 @@ NOTE: Spring Cloud K8’s Integration tests may time out. Restart the build. . Upon a successful "DRY_RUN". . Click "Rebuild Last" option on the left side of the page. -image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/RELEASE-DOC-UPDATE/docs/src/main/asciidoc/images/meta-releaser-rebuildlast.png[Rebuild Last] +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-release-tools/main/docs/src/main/asciidoc/images/meta-releaser-rebuildlast.png[Rebuild Last] [start=10] . When the build page is rendered.