Interface ReleaseDescriptor
public interface ReleaseDescriptor
ReleaseDescriptor interface.
- Author:
- Robert Scholte
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddDependencyDevelopmentVersion(String versionlessKey, String version) addDependencyDevelopmentVersion.voidaddDependencyOriginalVersion(String versionlessKey, String string) addDependencyOriginalVersion.voidaddDependencyReleaseVersion(String versionlessKey, String version) addDependencyReleaseVersion.voidaddDevelopmentVersion(String projectId, String nextVersion) addDevelopmentVersion.voidaddReleaseVersion(String projectId, String nextVersion) addReleaseVersion.getActivateProfiles.Get additional arguments to pass to any executed Maven process.Returns whether unresolved SNAPSHOT dependencies should automatically be resolved.Method getCheckModificationExcludes.Get the directory where the tag will be checked out.Get the last completed phase.Get the goals to execute in on completion of preparation for the release.Get default version to use for new working copy.Get default version to use for the tagged release or the new branch.getDependencyDevelopmentVersion(String artifactKey) getDependencyDevelopmentVersion.getDependencyOriginalVersion(String artifactKey) getDependencyOriginalVersion.getDependencyReleaseVersion(String artifactKey) getDependencyReleaseVersion.Get the line separator to use in the pom.xml.org.apache.maven.model.ScmgetOriginalScmInfo(String projectKey) getOriginalScmInfo.Get the goals to execute in perform phase for the release.Get the file name of the POM to pass to any executed Maven process.Get the goals to execute in preparation for the release.getProjectDevelopmentVersion(String projectKey) getProjectDevelopmentVersion.Get the role-hint for the NamingPolicy implementation used to calculate the project branch and tag names.getProjectOriginalVersion(String projectKey) getProjectOriginalVersion.getProjectReleaseVersion.Get the (optional) config for the VersionPolicy implementation used to calculate the project versions.Get the role-hint for the VersionPolicy implementation used to calculate the project versions.Get the role-hint for the release Strategy implementation.Get where you are going to put your branched sources Example https://svn.apache.org/repos/asf/maven/plugins/branches.Get the SCM commit comment when branching.Get the prefix of SCM modification messages.Get the SCM commit comment when setting pom.xml back to development.getScmId()Get the id which can be used to get the (optionally encrypted) credentials with the given id from thesettings.xml.Get the password for the user interacting with the scm.Get private key for an SSH based SCM repository.Get pass phrase for the private key.Get relative path of the project returned by the checkout command.Get the SCM commit comment when setting pom.xml to release.Get nOTE : currently only implemented with svn scm.Get tag or branch name: the identifier for the tag/branch.Get the SCM commit comment when rolling back.Get this is a MavenSCM of where you're going to get the sources to make the release with.Get where you are going to put your tagged sources Example https://svn.apache.org/repos/asf/maven/plugins/tags.Get specifies the format for generating a tag name.Get the user name to interact with the scm.intGet wait the specified number of seconds before creating a tag.Get the directory where the release is performed.Get default version to use for new working copy.booleanhasOriginalScmInfo(String projectKey) hasOriginalScmInfo.booleanGet whether to add the model schema to the top of the rewritten POM if it wasn't there already.booleanGet should timestamped SNAPSHOT dependencies be allowed? Default is to fail when any SNAPSHOT dependency is found.booleanGet whether to use the parent pom version for submodule versions.booleanGet whether to create a branch instead of do a release.booleanGet the commits must be done by modules or not.booleanGet whether to generate release POMs.booleanGet whether the release process is interactive and the release manager should be prompted to confirm values, or whether the defaults are used regardless.booleanGet if the scm provider should use local checkouts via file://${basedir} instead of doing a clean checkout over the network.booleanDetermines whether the--pin-externalsoption insvn copycommand is enabled which is new in Subversion 1.9.booleanGet should distributed changes be pushed to the central repository? For many distributed SCMs like Git, a change like a commit is only stored in your local copy of the repository.booleanGet nOTE : currently only implemented with svn scm.booleanGet whether to use a shallow clone with no history or a full clone containing the full history during the release.booleanGet if the scm provider should sign the tag.booleanGet whether to use edit mode when making SCM modifications.booleanGet whether a SNAPSHOT of the release plugin is allowed.booleanGet whether to suppress a commit of changes to the working copy before a tag or branch is created.booleanGet whether to update branch POM versions.booleanGet if updateDependencies is false, dependencies version won't be updated to the next development version.booleanGet whether to update branch versions to SNAPSHOT.booleanGet whether to update working copy POM versions.booleanGet whether to use the release profile that adds sources and javadocs to the released artifact, if appropriate.voidsetScmRelativePathProjectDirectory(String scmRelativePathProjectDirectory) setScmRelativePathProjectDirectory.voidsetScmReleasedPomRevision(String scmRevision) setScmReleasedPomRevision.voidsetScmReleaseLabel(String tag) setScmReleaseLabel.voidsetScmSourceUrl(String scmUrl) setScmSourceUrl.
-
Method Details
-
isUpdateDependencies
boolean isUpdateDependencies()Get if updateDependencies is false, dependencies version won't be updated to the next development version.- Returns:
trueif dependencies should be updated to the next development version,falseotherwise
-
isUseReleaseProfile
boolean isUseReleaseProfile()Get whether to use the release profile that adds sources and javadocs to the released artifact, if appropriate. If set to true, this will set the property "performRelease" to true.- Returns:
trueif the release profile should be used,falseotherwise
-
isAutoVersionSubmodules
boolean isAutoVersionSubmodules()Get whether to use the parent pom version for submodule versions.- Returns:
trueif parent pom version should be used for submodules,falseotherwise
-
isSnapshotReleasePluginAllowed
boolean isSnapshotReleasePluginAllowed()Get whether a SNAPSHOT of the release plugin is allowed.- Returns:
trueif SNAPSHOT release plugin is allowed,falseotherwise
-
isCommitByProject
boolean isCommitByProject()Get the commits must be done by modules or not. Set it to true in case of flat directory structure.- Returns:
trueif commits should be done by project,falseotherwise
-
isBranchCreation
boolean isBranchCreation()Get whether to create a branch instead of do a release.- Returns:
trueif a branch should be created instead of a release,falseotherwise
-
isUpdateBranchVersions
boolean isUpdateBranchVersions()Get whether to update branch POM versions.- Returns:
trueif branch POM versions should be updated,falseotherwise
-
isUpdateWorkingCopyVersions
boolean isUpdateWorkingCopyVersions()Get whether to update working copy POM versions.- Returns:
trueif working copy POM versions should be updated,falseotherwise
-
isSuppressCommitBeforeTagOrBranch
boolean isSuppressCommitBeforeTagOrBranch()Get whether to suppress a commit of changes to the working copy before a tag or branch is created.- Returns:
trueif commit should be suppressed before tag or branch creation,falseotherwise
-
isAllowTimestampedSnapshots
boolean isAllowTimestampedSnapshots()Get should timestamped SNAPSHOT dependencies be allowed? Default is to fail when any SNAPSHOT dependency is found.- Returns:
- boolean
-
isUpdateVersionsToSnapshot
boolean isUpdateVersionsToSnapshot()Get whether to update branch versions to SNAPSHOT.- Returns:
trueif branch versions should be updated to SNAPSHOT,falseotherwise
-
isRemoteTagging
boolean isRemoteTagging()Get nOTE : currently only implemented with svn scm. Enable a workaround to prevent issue due to svn client > 1.5.0 (https://issues.apache.org/jira/browse/SCM-406).- Returns:
- boolean
-
isScmSignTags
boolean isScmSignTags()Get if the scm provider should sign the tag. NOTE: currently only implemented with git-exe.- Returns:
- boolean true if SCM tag should be signed
-
isLocalCheckout
boolean isLocalCheckout()Get if the scm provider should use local checkouts via file://${basedir} instead of doing a clean checkout over the network. This is very helpful for releasing large projects!- Returns:
- boolean
-
isPushChanges
boolean isPushChanges()Get should distributed changes be pushed to the central repository? For many distributed SCMs like Git, a change like a commit is only stored in your local copy of the repository. Pushing the change allows your to more easily share it with other users.- Returns:
- boolean
-
getWorkItem
String getWorkItem()Get default version to use for new working copy. Some SCMs may require a Work Item or a Task to allow the changes to be pushed or delivered. This field allows you to specify that Work Item or Task. It is optional, and only relevant if pushChanges is true.- Returns:
- string
-
getDefaultDevelopmentVersion
String getDefaultDevelopmentVersion()Get default version to use for new working copy.- Returns:
- the default development version
-
getScmRelativePathProjectDirectory
String getScmRelativePathProjectDirectory()Get relative path of the project returned by the checkout command.- Returns:
- the relative path of the project directory
-
getCheckoutDirectory
String getCheckoutDirectory()Get the directory where the tag will be checked out.- Returns:
- the checkout directory path
-
getPerformGoals
String getPerformGoals()Get the goals to execute in perform phase for the release.- Returns:
- the perform goals
-
getDefaultReleaseVersion
String getDefaultReleaseVersion()Get default version to use for the tagged release or the new branch.- Returns:
- the default release version
-
getScmReleasedPomRevision
String getScmReleasedPomRevision()Get nOTE : currently only implemented with svn scm. It contains the revision of the committed released pom to remotely tag the source code with this revision.- Returns:
- string
-
isAddSchema
boolean isAddSchema()Get whether to add the model schema to the top of the rewritten POM if it wasn't there already. Iffalsethen the root element will remain untouched.- Returns:
- boolean
-
isGenerateReleasePoms
boolean isGenerateReleasePoms()Get whether to generate release POMs.- Returns:
trueif release POMs should be generated,falseotherwise
-
isInteractive
boolean isInteractive()Get whether the release process is interactive and the release manager should be prompted to confirm values, or whether the defaults are used regardless.- Returns:
- boolean
-
isScmUseEditMode
boolean isScmUseEditMode()Get whether to use edit mode when making SCM modifications. This setting is disregarded if the SCM does not support edit mode, or if edit mode is compulsory for the given SCM.- Returns:
- boolean
-
getActivateProfiles
getActivateProfiles.
- Returns:
- list of profiles to activate
-
getCompletedPhase
String getCompletedPhase()Get the last completed phase.- Returns:
- the name of the last completed phase
-
getCheckModificationExcludes
Method getCheckModificationExcludes.- Returns:
- list of file patterns to exclude from modification checks
-
getAdditionalArguments
String getAdditionalArguments()Get additional arguments to pass to any executed Maven process.- Returns:
- the additional Maven arguments
-
getPreparationGoals
String getPreparationGoals()Get the goals to execute in preparation for the release.- Returns:
- the preparation goals
-
getCompletionGoals
String getCompletionGoals()Get the goals to execute in on completion of preparation for the release.- Returns:
- the completion goals
-
getPomFileName
String getPomFileName()Get the file name of the POM to pass to any executed Maven process.- Returns:
- the POM file name
-
getScmCommentPrefix
String getScmCommentPrefix()Get the prefix of SCM modification messages.- Returns:
- the SCM comment prefix
-
isScmShallowClone
boolean isScmShallowClone()Get whether to use a shallow clone with no history or a full clone containing the full history during the release.- Returns:
- boolean
- Since:
- 3.0.0-M6
-
getScmReleaseCommitComment
String getScmReleaseCommitComment()Get the SCM commit comment when setting pom.xml to release.- Returns:
- the SCM release commit comment
- Since:
- 3.0.0-M1
-
getScmDevelopmentCommitComment
String getScmDevelopmentCommitComment()Get the SCM commit comment when setting pom.xml back to development.- Returns:
- the SCM development commit comment
- Since:
- 3.0.0-M1
-
getScmBranchCommitComment
String getScmBranchCommitComment()Get the SCM commit comment when branching.- Returns:
- the SCM branch commit comment
- Since:
- 3.0.0-M1
-
getScmRollbackCommitComment
String getScmRollbackCommitComment()Get the SCM commit comment when rolling back.- Returns:
- the SCM rollback commit comment
- Since:
- 3.0.0-M1
-
getScmPrivateKeyPassPhrase
String getScmPrivateKeyPassPhrase()Get pass phrase for the private key.- Returns:
- the private key passphrase
-
getScmPassword
String getScmPassword()Get the password for the user interacting with the scm.- Returns:
- the SCM password
-
getScmPrivateKey
String getScmPrivateKey()Get private key for an SSH based SCM repository.- Returns:
- the private key path or content
-
getScmReleaseLabel
String getScmReleaseLabel()Get tag or branch name: the identifier for the tag/branch. Example: maven-release-plugin-2.0.- Returns:
- the SCM release label (tag or branch name)
-
getScmTagBase
String getScmTagBase()Get where you are going to put your tagged sources Example https://svn.apache.org/repos/asf/maven/plugins/tags.- Returns:
- the SCM tag base URL
-
getScmBranchBase
String getScmBranchBase()Get where you are going to put your branched sources Example https://svn.apache.org/repos/asf/maven/plugins/branches.- Returns:
- string
-
getScmId
String getScmId()Get the id which can be used to get the (optionally encrypted) credentials with the given id from thesettings.xml. Explicit credentials ingetScmUsername(),getScmPassword(),getScmPrivateKey()orgetScmPrivateKeyPassPhrase()always take precedence, though.- Returns:
- the server id of a server in
settings.xml
-
getScmSourceUrl
String getScmSourceUrl()Get this is a MavenSCM of where you're going to get the sources to make the release with. Example: scm:svn:https://svn.apache.org/repos/asf/maven/plugins/trunk/maven-release-plugin.- Returns:
- string
-
getScmUsername
String getScmUsername()Get the user name to interact with the scm.- Returns:
- the SCM username
-
getWaitBeforeTagging
int getWaitBeforeTagging()Get wait the specified number of seconds before creating a tag.- Returns:
- the number of seconds to wait before tagging
-
getWorkingDirectory
String getWorkingDirectory()Get the directory where the release is performed.- Returns:
- the working directory path
-
getScmTagNameFormat
String getScmTagNameFormat()Get specifies the format for generating a tag name. Property expansion is used with the optional prefix of project, where properties are delimited with @{ and }.- Returns:
- string
-
getProjectNamingPolicyId
String getProjectNamingPolicyId()Get the role-hint for the NamingPolicy implementation used to calculate the project branch and tag names.- Returns:
- the project naming policy ID
-
getProjectVersionPolicyId
String getProjectVersionPolicyId()Get the role-hint for the VersionPolicy implementation used to calculate the project versions.- Returns:
- the project version policy ID
-
getProjectVersionPolicyConfig
Object getProjectVersionPolicyConfig()Get the (optional) config for the VersionPolicy implementation used to calculate the project versions.- Returns:
- the parsed XML of the provided config (an instance of PlexusConfiguration) or null
-
getReleaseStrategyId
String getReleaseStrategyId()Get the role-hint for the release Strategy implementation.- Returns:
- the release strategy ID
-
getDependencyOriginalVersion
getDependencyOriginalVersion.
- Parameters:
artifactKey- the artifact keyString- Returns:
StringThe original version for the resolved snapshot dependency
-
getDependencyReleaseVersion
getDependencyReleaseVersion.
- Parameters:
artifactKey- the artifact keyString- Returns:
Stringthe release version for the resolved snapshot dependency
-
getDependencyDevelopmentVersion
getDependencyDevelopmentVersion.
- Parameters:
artifactKey- the artifact keyString- Returns:
Stringthe release version for the resolved snapshot dependency
-
getProjectOriginalVersion
getProjectOriginalVersion.
- Parameters:
projectKey- aStringobject- Returns:
- the original version of the project
-
getProjectDevelopmentVersion
getProjectDevelopmentVersion.
- Parameters:
projectKey- aStringobject- Returns:
- the development version of the project
-
getProjectReleaseVersion
getProjectReleaseVersion.
- Parameters:
key- aStringobject- Returns:
- the release version of the project
-
getOriginalScmInfo
getOriginalScmInfo.
- Parameters:
projectKey- the project keyString- Returns:
- the original
Scminformation
-
hasOriginalScmInfo
hasOriginalScmInfo.
- Parameters:
projectKey- the project keyString- Returns:
- has original Scm info
-
addDependencyOriginalVersion
addDependencyOriginalVersion.
-
addDependencyReleaseVersion
addDependencyReleaseVersion.
-
addDependencyDevelopmentVersion
addDependencyDevelopmentVersion.
-
addReleaseVersion
addReleaseVersion.
-
addDevelopmentVersion
addDevelopmentVersion.
-
setScmReleaseLabel
setScmReleaseLabel.
- Parameters:
tag- aStringobject
-
setScmReleasedPomRevision
setScmReleasedPomRevision.
- Parameters:
scmRevision- aStringobject
-
setScmRelativePathProjectDirectory
setScmRelativePathProjectDirectory.
- Parameters:
scmRelativePathProjectDirectory- aStringobject
-
setScmSourceUrl
setScmSourceUrl.
- Parameters:
scmUrl- aStringobject
-
getAutoResolveSnapshots
String getAutoResolveSnapshots()Returns whether unresolved SNAPSHOT dependencies should automatically be resolved. If this is set, then this specifies the default answer to be used when unresolved SNAPSHOT dependencies should automatically be resolved ( 0:All 1:Project Dependencies 2:Plugins 3:Reports 4:Extensions ). Possible values are:- "all" or "0": resolve all kinds of snapshots, ie. project, plugin, report and extension dependencies
- "dependencies" or "1": resolve project dependencies
- "plugins" or "2": resolve plugin dependencis
- "reports" or "3": resolve report dependencies
- "extensions" or "4": resolve extension dependencies
- Returns:
- string
-
getLineSeparator
String getLineSeparator()Get the line separator to use in the pom.xml.- Returns:
- the line separator character(s)
-
isPinExternals
boolean isPinExternals()Determines whether the--pin-externalsoption insvn copycommand is enabled which is new in Subversion 1.9.- Returns:
trueif externals should be pinned,falseotherwise
-