You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kw...@apache.org on 2025/08/07 18:26:21 UTC
(maven-scm) branch feature/rework-git-sign-support created (now 1c3c984c6)
This is an automated email from the ASF dual-hosted git repository.
kwin pushed a change to branch feature/rework-git-sign-support
in repository https://gitbox.apache.org/repos/asf/maven-scm.git
at 1c3c984c6 Rework sign option for Git tag/commit
This branch includes the following new commits:
new 1c3c984c6 Rework sign option for Git tag/commit
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
(maven-scm) 01/01: Rework sign option for Git tag/commit
Posted by kw...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch feature/rework-git-sign-support
in repository https://gitbox.apache.org/repos/asf/maven-scm.git
commit 1c3c984c6d33b92cf258fe65e92bb6f01d891017
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Thu Aug 7 20:26:12 2025 +0200
Rework sign option for Git tag/commit
Use tri-state for signing/not-signing/default (from config)
Don't support signing with JGit yet (requires additional dependencies)
This closes #1292
---
.../org/apache/maven/scm/CommandParameter.java | 9 ++--
.../org/apache/maven/scm/CommandParameters.java | 51 ++++++++++++++++++++--
.../org/apache/maven/scm/ScmTagParameters.java | 45 +++++++++++++------
.../maven/scm/command/tag/AbstractTagCommand.java | 5 +++
.../org/apache/maven/scm/plugin/CheckinMojo.java | 27 +++++++++++-
.../java/org/apache/maven/scm/plugin/TagMojo.java | 37 ++++++----------
.../org/apache/maven/scm/plugin/UntagMojoTest.java | 2 -
.../gitexe/command/checkin/GitCheckInCommand.java | 22 ++++++++++
.../git/gitexe/command/tag/GitTagCommand.java | 26 +++++------
.../git/gitexe/command/tag/GitTagCommandTest.java | 18 +++-----
.../command/checkin/GitCheckInCommandTckTest.java | 2 -
.../jgit/command/checkin/JGitCheckInCommand.java | 3 +-
.../git/jgit/command/tag/JGitTagCommand.java | 1 -
.../JGitCheckInCommandCommitterAuthorTckTest.java | 1 -
.../tck/command/branch/BranchCommandTckTest.java | 1 -
.../command/changelog/ChangeLogCommandTckTest.java | 1 -
.../tck/command/checkin/CheckInCommandTckTest.java | 3 --
.../tck/command/remove/RemoveCommandTckTest.java | 1 -
.../tck/command/status/StatusCommandTckTest.java | 1 -
.../scm/tck/command/tag/TagCommandTckTest.java | 1 -
20 files changed, 171 insertions(+), 86 deletions(-)
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java b/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java
index e35afad9a..37c0d7669 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameter.java
@@ -94,11 +94,12 @@ public class CommandParameter implements Serializable {
public static final CommandParameter IGNORE_WHITESPACE = new CommandParameter("ignoreWhitespace");
/**
- * Parameter to indicate whether the commit should be signed or not.
- * if false (default true) this will be used by the Git provider to pass the --no-signoff option to the commit command.
- * @since 2.1.1
+ * Parameter to indicate whether the commit/tag should be signed or not.
+ * This is only applicable to Git for now.
+ * Possible values are outlined in {@link CommandParameters#SignOption}
+ * @since 2.2.1
*/
- public static final CommandParameter SCM_COMMIT_SIGN = new CommandParameter("gitCommitSign");
+ public static final CommandParameter SIGN_OPTION = new CommandParameter("sign");
/**
* Parameter name
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameters.java
index 8711ab257..ce7343cfc 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameters.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/CommandParameters.java
@@ -268,6 +268,48 @@ public ScmBranchParameters getScmBranchParameters(CommandParameter parameter) th
return (ScmBranchParameters) getObject(ScmBranchParameters.class, parameter, new ScmBranchParameters());
}
+ // ----------------------------------------------------------------------
+ // SigningOption (Git specific)
+ // ----------------------------------------------------------------------
+ /**
+ * The sign option for a commit or tag.
+ * <p>
+ * This is only relevant for SCM providers that support signing commits/tags, such as Git.
+ * </p>
+ * @see <a href="https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work">Git Tools - Signing Your Work</a>
+ */
+ public enum SignOption {
+ /**
+ * Signs the commit/tag irrespective of the Git configuration setting {@code commit.gpgSign} or {@code tag.gpgSign}.
+ * Only has an effect for supported SCM providers. Others may be silently ignoring this setting.
+ */
+ FORCE_SIGN,
+ /**
+ * Just uses the default value in the Git configuration for setting {@code commit.gpgSign} or {@code tag.gpgSign}.
+ * Only has an effect for supported SCM providers. Others may be silently ignoring this setting.
+ */
+ DEFAULT,
+ /**
+ * Does not sign the commit/tag irrespective of the Git configuration setting {@code commit.gpgSign} or {@code tag.gpgSign}.
+ */
+ FORCE_NO_SIGN
+ }
+
+ public void setSignOption(CommandParameter parameter, SignOption signOption) throws ScmException {
+ setObject(parameter, signOption);
+ }
+
+ /**
+ * Return the sign option.
+ *
+ * @param parameter The parameter
+ * @return The sign option or null if not set
+ * @throws ScmException if the parameter has the wrong type.
+ */
+ public SignOption getSignOption(CommandParameter parameter) throws ScmException {
+ return getObject(SignOption.class, parameter, null);
+ }
+
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------
@@ -280,8 +322,8 @@ public ScmBranchParameters getScmBranchParameters(CommandParameter parameter) th
* @return The parameter value
* @throws ScmException if the parameter doesn't exist
*/
- private Object getObject(Class<?> clazz, CommandParameter parameter) throws ScmException {
- Object object = getObject(clazz, parameter, null);
+ private <T> T getObject(Class<T> clazz, CommandParameter parameter) throws ScmException {
+ T object = getObject(clazz, parameter, null);
if (object == null) {
throw new ScmException("Missing parameter: '" + parameter.getName() + "'.");
@@ -299,7 +341,8 @@ private Object getObject(Class<?> clazz, CommandParameter parameter) throws ScmE
* @return The parameter value
* @throws ScmException if the defaultValue is in the wrong type
*/
- private Object getObject(Class<?> clazz, CommandParameter parameter, Object defaultValue) throws ScmException {
+ @SuppressWarnings("unchecked")
+ private <T> T getObject(Class<T> clazz, CommandParameter parameter, T defaultValue) throws ScmException {
Object object = parameters.get(parameter.getName());
if (object == null) {
@@ -311,7 +354,7 @@ private Object getObject(Class<?> clazz, CommandParameter parameter, Object defa
+ clazz.getName() + ", got: " + object.getClass().getName());
}
- return object;
+ return (T) object;
}
/**
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java
index fb07ba3a7..70765466c 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/ScmTagParameters.java
@@ -33,16 +33,14 @@ public class ScmTagParameters implements Serializable {
private boolean pinExternals = false;
- private boolean sign = false;
-
- private boolean forceNoSign = false;
+ private CommandParameters.SignOption signOption;
private String scmRevision;
public ScmTagParameters() {
this.remoteTagging = false;
this.pinExternals = false;
- this.sign = false;
+ this.signOption = CommandParameters.SignOption.DEFAULT;
}
public ScmTagParameters(String message) {
@@ -73,12 +71,24 @@ public void setPinExternals(boolean pinExternals) {
this.pinExternals = pinExternals;
}
+ /**
+ *
+ * @return true if the tag operation should be signed, false otherwise.
+ * @deprecated use {@link #getSigningOptions()} instead.
+ */
+ @Deprecated
public boolean isSign() {
- return sign;
+ return signOption == CommandParameters.SignOption.FORCE_SIGN;
}
+ /**
+ * Set the signing option for the tag operation.
+ * @param sign
+ * @deprecated use {@link #setSigningOptions(SigningOptions)} instead.
+ */
+ @Deprecated
public void setSign(boolean sign) {
- this.sign = sign;
+ signOption = sign ? CommandParameters.SignOption.FORCE_SIGN : CommandParameters.SignOption.DEFAULT;
}
public String getScmRevision() {
@@ -89,12 +99,22 @@ public void setScmRevision(String scmRevision) {
this.scmRevision = scmRevision;
}
- public boolean isForceNoSign() {
- return forceNoSign;
+ /**
+ * Get the signing option for the tag operation.
+ * @return the signing option
+ * @since 2.2.1
+ */
+ public CommandParameters.SignOption getSignOption() {
+ return signOption;
}
- public void setForceNoSign(boolean forceNoSign) {
- this.forceNoSign = forceNoSign;
+ /**
+ * Set the signing option for the tag operation.
+ * @param signingOptions
+ * @since 2.2.1
+ */
+ public void setSignOption(CommandParameters.SignOption signOption) {
+ this.signOption = signOption;
}
@Override
@@ -102,9 +122,8 @@ public String toString() {
return "ScmTagParameters{" + "message='"
+ message + '\'' + ", remoteTagging="
+ remoteTagging + ", pinExternals="
- + pinExternals + ", sign="
- + sign + ", forceNoSign="
- + forceNoSign + ", scmRevision='"
+ + pinExternals + ", signOption="
+ + signOption + ", scmRevision='"
+ scmRevision + '\'' + '}';
}
}
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/command/tag/AbstractTagCommand.java b/maven-scm-api/src/main/java/org/apache/maven/scm/command/tag/AbstractTagCommand.java
index 0dec628c8..177e289d1 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/command/tag/AbstractTagCommand.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/command/tag/AbstractTagCommand.java
@@ -20,6 +20,7 @@
import org.apache.maven.scm.CommandParameter;
import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmFileSet;
import org.apache.maven.scm.ScmResult;
@@ -70,6 +71,10 @@ public ScmResult executeCommand(ScmProviderRepository repository, ScmFileSet fil
scmTagParameters.setMessage("[maven-scm] copy for tag " + tagName);
}
+ SignOption signOption = parameters.getSignOption(CommandParameter.SIGN_OPTION);
+ if (signOption != null) {
+ scmTagParameters.setSignOption(signOption);
+ }
return executeTagCommand(repository, fileSet, tagName, scmTagParameters);
}
}
diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java
index ed3ed12ff..20c152554 100644
--- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java
+++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/CheckinMojo.java
@@ -25,7 +25,11 @@
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.scm.CommandParameter;
+import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmVersion;
import org.apache.maven.scm.command.checkin.CheckInScmResult;
import org.apache.maven.scm.manager.ScmManager;
import org.apache.maven.scm.repository.ScmRepository;
@@ -62,6 +66,14 @@ public class CheckinMojo extends AbstractScmMojo {
@Parameter(property = "scmVersion")
private String scmVersion;
+ /**
+ * Toggles the signing for the commit used during checkin (only applicable to SCMs that support signing).
+ *
+ * @since 2.2.1
+ */
+ @Parameter(property = "signOption", defaultValue = "false")
+ private SignOption signOption = SignOption.DEFAULT;
+
@Inject
public CheckinMojo(ScmManager manager, SettingsDecrypter settingsDecrypter) {
super(manager, settingsDecrypter);
@@ -76,8 +88,19 @@ public void execute() throws MojoExecutionException {
try {
ScmRepository repository = getScmRepository();
- CheckInScmResult result = getScmManager()
- .checkIn(repository, getFileSet(), getScmVersion(scmVersionType, scmVersion), message);
+ CommandParameters parameters = new CommandParameters();
+
+ ScmVersion version = getScmVersion(scmVersionType, scmVersion);
+ if (version != null) {
+ parameters.setScmVersion(CommandParameter.SCM_VERSION, version);
+ }
+ if (message != null) {
+ parameters.setString(CommandParameter.MESSAGE, message);
+ }
+ if (signOption != null) {
+ parameters.setSignOption(CommandParameter.SIGN_OPTION, signOption);
+ }
+ CheckInScmResult result = getScmManager().checkIn(repository, getFileSet(), parameters);
checkResult(result);
} catch (IOException | ScmException e) {
diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java
index 3e3c2bf6f..e79e877fb 100644
--- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java
+++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/TagMojo.java
@@ -27,6 +27,7 @@
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmTagParameters;
import org.apache.maven.scm.command.tag.TagScmResult;
@@ -100,20 +101,22 @@ public class TagMojo extends AbstractScmMojo {
private boolean pinExternals;
/**
- * Enable the "--sign" in Git
+ * Enable the "--sign" in Git.
+ * Same as {@link #signOption} set to either {@link SignOption#FORCE_SIGN} or {@link SignOption#DEFAULT}.
*
* @since 1.11.0
+ * @deprecated since 2.1.1, use {@link #signOption} instead
*/
@Parameter(property = "sign", defaultValue = "false")
private boolean sign;
/**
- * Enable the "--no-sign" in Git
+ * Toggles the signing for the tag command (only applicable to SCMs that support signing).
*
- * @since 2.1.1
+ * @since 2.2.1
*/
- @Parameter(property = "forceNoSign", defaultValue = "false")
- private boolean forceNoSign;
+ @Parameter(property = "signOption")
+ private SignOption signOption = SignOption.DEFAULT;
@Inject
public TagMojo(ScmManager manager, SettingsDecrypter settingsDecrypter) {
@@ -157,8 +160,12 @@ public void execute() throws MojoExecutionException {
ScmTagParameters scmTagParameters = new ScmTagParameters(message);
scmTagParameters.setRemoteTagging(remoteTagging);
scmTagParameters.setPinExternals(pinExternals);
- scmTagParameters.setSign(sign);
- scmTagParameters.setForceNoSign(forceNoSign);
+ if (signOption != null) {
+ scmTagParameters.setSignOption(signOption);
+ } else if (sign) {
+ getLog().warn("The 'sign' parameter is deprecated, use 'signOption' instead.");
+ scmTagParameters.setSign(sign);
+ }
TagScmResult result = provider.tag(repository, getFileSet(), finalTag, scmTagParameters);
@@ -167,20 +174,4 @@ public void execute() throws MojoExecutionException {
throw new MojoExecutionException("Cannot run tag command : ", e);
}
}
-
- public boolean isSign() {
- return sign;
- }
-
- public void setSign(boolean sign) {
- this.sign = sign;
- }
-
- public boolean isForceNoSign() {
- return forceNoSign;
- }
-
- public void setForceNoSign(boolean forceNoSign) {
- this.forceNoSign = forceNoSign;
- }
}
diff --git a/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/UntagMojoTest.java b/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/UntagMojoTest.java
index f0545d747..fe294df05 100644
--- a/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/UntagMojoTest.java
+++ b/maven-scm-plugin/src/test/java/org/apache/maven/scm/plugin/UntagMojoTest.java
@@ -72,8 +72,6 @@ public void testUntag() throws Exception {
TagMojo tagMojo = (TagMojo) lookupMojo("tag", getTestFile("src/test/resources/mojos/untag/tag.xml"));
tagMojo.setWorkingDirectory(checkoutDir);
- tagMojo.setSign(false);
- tagMojo.setForceNoSign(true);
tagMojo.setConnectionUrl(getConnectionLocalAddress(tagMojo));
tagMojo.execute();
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/checkin/GitCheckInCommand.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/checkin/GitCheckInCommand.java
index 94c166f75..6ea4a841d 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/checkin/GitCheckInCommand.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/checkin/GitCheckInCommand.java
@@ -27,6 +27,7 @@
import java.util.Map;
import org.apache.commons.io.FilenameUtils;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmFile;
import org.apache.maven.scm.ScmFileSet;
@@ -213,6 +214,16 @@ public static Commandline createCommitCommandLine(
File messageFile,
Map<String, String> environmentVariables)
throws ScmException {
+ return createCommitCommandLine(repository, fileSet, messageFile, environmentVariables, SignOption.DEFAULT);
+ }
+
+ public static Commandline createCommitCommandLine(
+ GitScmProviderRepository repository,
+ ScmFileSet fileSet,
+ File messageFile,
+ Map<String, String> environmentVariables,
+ SignOption signOption)
+ throws ScmException {
Commandline cl = GitCommandLineUtils.getBaseGitCommandLine(fileSet.getBasedir(), "commit");
cl.createArg().setValue("--verbose");
@@ -230,6 +241,17 @@ public static Commandline createCommitCommandLine(
cl.createArg().setValue("--no-verify");
}
+ switch (signOption) {
+ case FORCE_SIGN:
+ cl.createArg().setValue("--gpg-sign");
+ break;
+ case FORCE_NO_SIGN:
+ cl.createArg().setValue("--no-gpg-sign");
+ break;
+ default:
+ // do nothing, this is the default
+ break;
+ }
return cl;
}
}
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommand.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommand.java
index e12c09208..b39047aaf 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommand.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommand.java
@@ -22,6 +22,7 @@
import java.io.IOException;
import java.util.Map;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmFileSet;
import org.apache.maven.scm.ScmFileStatus;
@@ -89,12 +90,7 @@ public ScmResult executeTagCommand(
int exitCode;
Commandline clTag = createCommandLine(
- repository,
- fileSet.getBasedir(),
- tag,
- messageFile,
- scmTagParameters.isSign(),
- scmTagParameters.isForceNoSign());
+ repository, fileSet.getBasedir(), tag, messageFile, scmTagParameters.getSignOption());
exitCode = GitCommandLineUtils.execute(clTag, stdout, stderr);
if (exitCode != 0) {
@@ -142,15 +138,19 @@ static Commandline createCommandLine(
File workingDirectory,
String tag,
File messageFile,
- boolean sign,
- boolean forceNoSign) {
+ SignOption signOption) {
Commandline cl = GitCommandLineUtils.getBaseGitCommandLine(workingDirectory, "tag");
- if (sign) {
- cl.createArg().setValue("-s");
- }
- if (forceNoSign) {
- cl.createArg().setValue("--no-sign");
+ switch (signOption) {
+ case FORCE_SIGN:
+ cl.createArg().setValue("-s");
+ break;
+ case FORCE_NO_SIGN:
+ cl.createArg().setValue("--no-sign");
+ break;
+ default:
+ // no CLI argument needed when default option from git config should be used
+ break;
}
cl.createArg().setValue("-F");
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/test/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommandTest.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/test/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommandTest.java
index e57008313..e0ca5d689 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/test/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommandTest.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/test/java/org/apache/maven/scm/provider/git/gitexe/command/tag/GitTagCommandTest.java
@@ -20,6 +20,7 @@
import java.io.File;
+import org.apache.maven.scm.CommandParameters.SignOption;
import org.apache.maven.scm.ScmTestCase;
import org.apache.maven.scm.provider.git.repository.GitScmProviderRepository;
import org.apache.maven.scm.repository.ScmRepository;
@@ -55,8 +56,7 @@ public void testCommandLineTag() throws Exception {
"scm:git:http://foo.com/git/trunk",
"my-tag-1",
"git tag " + messageFileString + " my-tag-1",
- false,
- false);
+ SignOption.DEFAULT);
}
@Test
@@ -65,8 +65,7 @@ public void testCommandLineWithUsernameAndTag() throws Exception {
"scm:git:http://anonymous@foo.com/git/trunk",
"my-tag-1",
"git tag " + messageFileString + " my-tag-1",
- false,
- false);
+ SignOption.DEFAULT);
}
@Test
@@ -75,8 +74,7 @@ public void testCommandLineWithUsernameAndTagForceNoSign() throws Exception {
"scm:git:http://anonymous@foo.com/git/trunk",
"my-tag-1",
"git tag --no-sign " + messageFileString + " my-tag-1",
- false,
- true);
+ SignOption.FORCE_NO_SIGN);
}
@Test
@@ -85,15 +83,14 @@ public void testCommandLineWithUsernameAndTagAndSign() throws Exception {
"scm:git:http://anonymous@foo.com/git/trunk",
"my-tag-1",
"git tag -s " + messageFileString + " my-tag-1",
- true,
- false);
+ SignOption.FORCE_SIGN);
}
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------
- private void testCommandLine(String scmUrl, String tag, String commandLine, boolean sign, boolean forceNoSign)
+ private void testCommandLine(String scmUrl, String tag, String commandLine, SignOption signOption)
throws Exception {
File workingDirectory = getTestFile("target/git-checkin-command-test");
@@ -101,8 +98,7 @@ private void testCommandLine(String scmUrl, String tag, String commandLine, bool
GitScmProviderRepository gitRepository = (GitScmProviderRepository) repository.getProviderRepository();
- Commandline cl =
- GitTagCommand.createCommandLine(gitRepository, workingDirectory, tag, messageFile, sign, forceNoSign);
+ Commandline cl = GitTagCommand.createCommandLine(gitRepository, workingDirectory, tag, messageFile, signOption);
assertCommandLine(commandLine, workingDirectory, cl);
}
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gittest/src/main/java/org/apache/maven/scm/provider/git/command/checkin/GitCheckInCommandTckTest.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gittest/src/main/java/org/apache/maven/scm/provider/git/command/checkin/GitCheckInCommandTckTest.java
index d177172f0..8bf1f61ed 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gittest/src/main/java/org/apache/maven/scm/provider/git/command/checkin/GitCheckInCommandTckTest.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gittest/src/main/java/org/apache/maven/scm/provider/git/command/checkin/GitCheckInCommandTckTest.java
@@ -88,7 +88,6 @@ public void testRejectedNonFastForwardPush() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Blocking commit");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult blockingResult = getScmManager().checkIn(scmRepository, blockingFileSet, commandParameters);
assertResultIsSuccess(blockingResult);
@@ -97,7 +96,6 @@ public void testRejectedNonFastForwardPush() throws Exception {
commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Rejected commit");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult checkInScmResult = getScmManager().checkIn(scmRepository, rejectedFileSet, commandParameters);
assertFalse(
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommand.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommand.java
index 34b4053b6..653de8dd6 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommand.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommand.java
@@ -152,8 +152,7 @@ public CheckInScmResult executeCommand(ScmProviderRepository repo, ScmFileSet fi
CommitCommand command = git.commit()
.setMessage(message)
.setAuthor(author.name, author.email)
- .setCommitter(committer.name, committer.email)
- .setSign(parameters.getBoolean(CommandParameter.SCM_COMMIT_SIGN, true));
+ .setCommitter(committer.name, committer.email);
RevCommit commitRev = command.call();
logger.info("commit done: " + commitRev.getShortMessage());
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/tag/JGitTagCommand.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/tag/JGitTagCommand.java
index 94867a6d3..1c4b148b2 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/tag/JGitTagCommand.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/main/java/org/apache/maven/scm/provider/git/jgit/command/tag/JGitTagCommand.java
@@ -99,7 +99,6 @@ public ScmResult executeTagCommand(
// tag the revision
String tagMessage = scmTagParameters.getMessage();
Ref tagRef = git.tag()
- .setSigned(scmTagParameters.isSign())
.setName(escapedTagName)
.setMessage(tagMessage)
.setForceUpdate(false)
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java
index 17cfce51e..0369c214c 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java
@@ -258,7 +258,6 @@ private void createAndCommitFile(File file, String username) throws Exception, S
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult result = getScmManager()
.checkIn(scmRepository, new ScmFileSet(getWorkingCopy(), "**/Foo.java"), commandParameters);
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/branch/BranchCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/branch/BranchCommandTckTest.java
index 894978288..5e742999b 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/branch/BranchCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/branch/BranchCommandTckTest.java
@@ -72,7 +72,6 @@ public void testBranchCommandTest() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult checkinResult =
getScmManager().checkIn(getScmRepository(), new ScmFileSet(getWorkingCopy()), commandParameters);
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/changelog/ChangeLogCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/changelog/ChangeLogCommandTckTest.java
index ec40df28e..88953aa03 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/changelog/ChangeLogCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/changelog/ChangeLogCommandTckTest.java
@@ -90,7 +90,6 @@ public void testChangeLogCommand() throws Exception {
ScmTestCase.makeFile(getWorkingCopy(), "/readme.txt", "changed readme.txt");
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, COMMIT_MSG);
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult checkInResult = provider.checkIn(getScmRepository(), fileSet, commandParameters);
assertTrue("Unable to checkin changes to the repository", checkInResult.isSuccess());
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
index 409dbf2ba..cde1afe32 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
@@ -87,7 +87,6 @@ public void testCheckInCommandTest() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult result =
getScmManager().checkIn(getScmRepository(), new ScmFileSet(getWorkingCopy()), commandParameters);
@@ -157,7 +156,6 @@ public void testCheckInCommandPartialFileset() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult result = getScmManager()
.checkIn(getScmRepository(), new ScmFileSet(getWorkingCopy(), "**/Foo.java", null), commandParameters);
@@ -222,7 +220,6 @@ public void testCheckInCommandFilesetWithBasedirOtherThanWorkingCopyRoot() throw
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult result = getScmManager()
.checkIn(
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/remove/RemoveCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/remove/RemoveCommandTckTest.java
index f9a29f6a5..deece3a90 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/remove/RemoveCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/remove/RemoveCommandTckTest.java
@@ -68,7 +68,6 @@ public void testRemoveCommand() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
// checkin changes
CheckInScmResult checkinResult =
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/status/StatusCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/status/StatusCommandTckTest.java
index 36239cf12..090e88aa9 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/status/StatusCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/status/StatusCommandTckTest.java
@@ -64,7 +64,6 @@ public abstract class StatusCommandTckTest extends ScmTckTestCase {
protected void commit(File workingDirectory, ScmRepository repository) throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "No msg");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult result =
getScmManager().checkIn(repository, new ScmFileSet(workingDirectory), commandParameters);
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/tag/TagCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/tag/TagCommandTckTest.java
index aa8f6ca5a..c5a4106e4 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/tag/TagCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/tag/TagCommandTckTest.java
@@ -72,7 +72,6 @@ public void testTagCommandTest() throws Exception {
CommandParameters commandParameters = new CommandParameters();
commandParameters.setString(CommandParameter.MESSAGE, "Commit message");
- commandParameters.setString(CommandParameter.SCM_COMMIT_SIGN, "false");
CheckInScmResult checkinResult =
getScmManager().checkIn(getScmRepository(), new ScmFileSet(getWorkingCopy()), commandParameters);