From f8c74f3694ab4a25c2ce29694309324a3d6676a0 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Fri, 4 Nov 2022 15:14:49 +0100 Subject: [PATCH] Improve verification. --- ci/build-spring-data-release-cli.bash | 2 +- ci/prepare-and-build.template | 1 + .../data/release/cli/VerifyCommands.java | 68 ++++++++++++------- 3 files changed, 45 insertions(+), 26 deletions(-) diff --git a/ci/build-spring-data-release-cli.bash b/ci/build-spring-data-release-cli.bash index c70aff5..43cf257 100755 --- a/ci/build-spring-data-release-cli.bash +++ b/ci/build-spring-data-release-cli.bash @@ -8,4 +8,4 @@ export PATH="$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH" export JENKINS_HOME=/tmp/jenkins-home -mvn clean package -DskipTests +mvn clean package -B -DskipTests diff --git a/ci/prepare-and-build.template b/ci/prepare-and-build.template index 8cf63d4..dd79063 100644 --- a/ci/prepare-and-build.template +++ b/ci/prepare-and-build.template @@ -1,3 +1,4 @@ +verify deployment workspace cleanup release prepare ${VERSION} release build ${VERSION} diff --git a/src/main/java/org/springframework/data/release/cli/VerifyCommands.java b/src/main/java/org/springframework/data/release/cli/VerifyCommands.java index 7d0b0c4..d55e7c1 100644 --- a/src/main/java/org/springframework/data/release/cli/VerifyCommands.java +++ b/src/main/java/org/springframework/data/release/cli/VerifyCommands.java @@ -15,11 +15,6 @@ */ package org.springframework.data.release.cli; -import lombok.AccessLevel; -import lombok.NonNull; -import lombok.RequiredArgsConstructor; -import lombok.experimental.FieldDefaults; - import org.springframework.data.release.CliComponent; import org.springframework.data.release.TimedCommand; import org.springframework.data.release.build.BuildOperations; @@ -29,6 +24,13 @@ import org.springframework.data.release.issues.github.GitHub; import org.springframework.data.release.sagan.SaganClient; import org.springframework.data.release.utils.Logger; import org.springframework.shell.core.annotation.CliCommand; +import org.springframework.shell.core.annotation.CliOption; +import org.springframework.util.ObjectUtils; + +import lombok.AccessLevel; +import lombok.NonNull; +import lombok.RequiredArgsConstructor; +import lombok.experimental.FieldDefaults; /** * Commands to verify a correct Release Tools Setup. @@ -40,32 +42,48 @@ import org.springframework.shell.core.annotation.CliCommand; @FieldDefaults(level = AccessLevel.PRIVATE, makeFinal = true) class VerifyCommands extends TimedCommand { - @NonNull GitOperations git; - @NonNull GitHub github; - @NonNull DeploymentOperations deployment; - @NonNull BuildOperations build; - @NonNull SaganClient saganClient; - @NonNull Logger logger; + @NonNull + GitOperations git; + @NonNull + GitHub github; + @NonNull + DeploymentOperations deployment; + @NonNull + BuildOperations build; + @NonNull + SaganClient saganClient; + @NonNull + Logger logger; - @CliCommand("verify") - public void verifyReleaseTools() { + @CliCommand("verify") + public void verifyReleaseTools(@CliOption(key = "", mandatory = false) String module) { - // Git checkout build - git.verify(); + if (ObjectUtils.isEmpty(module) || "git".equals(module)) { + // Git checkout build + git.verify(); + } - // Maven interaction - build.verify(); + if (ObjectUtils.isEmpty(module) || "build".equals(module)) { + // Maven interaction + build.verify(); + } - // Artifactory verification - deployment.verifyAuthentication(); + if (ObjectUtils.isEmpty(module) || "deployment".equals(module)) { + // Artifactory verification + deployment.verifyAuthentication(); + } - // GitHub verification - github.verifyAuthentication(); + if (ObjectUtils.isEmpty(module) || "github".equals(module)) { + // GitHub verification + github.verifyAuthentication(); + } - // Sagan Verification - saganClient.verifyAuthentication(); + if (ObjectUtils.isEmpty(module) || "sagan".equals(module)) { + // Sagan Verification + saganClient.verifyAuthentication(); + } - logger.log("Verify", "All settings are verified. You can ship a release now."); - } + logger.log("Verify", "All settings are verified. You can ship a release now."); + } }