Record Class ReleaseRequest
java.lang.Object
java.lang.Record
network.ike.plugin.release.ReleaseRequest
- Record Components:
releaseVersion- explicit release version override, ornullto derive from POMsnextVersion- explicit next-development version override, ornullto derivepublish-truefor a real release,falsefor the draft previewskipVerify- skip the pre-flight verify pass (development-only convenience)allowBranch- permit running from a branch other thanmain, ornullpublishSite- whether to generate and publish the project site to gh-pagesnonRecursiveSite- skip aggregator-recursive site builds (single-module fast path)skipOrgSite- skip the cross-repo org-site register (B25)publishToCentral- whether to attempt the Maven Central deploy (opt-in)nexusDeployMaxAttempts- maximum Nexus deploy attempts (retry budget)nexusDeployBackoffSeconds- comma-separated backoff schedule between Nexus retriesskipNexusDeploy- skip the Nexus deploy phase entirelycentralDeployMaxAttempts- maximum Maven Central deploy attempts (retry budget)centralDeployBackoffSeconds- comma-separated backoff schedule between Central retriesskipCentralDeploy- skip the Central deploy phase entirelycentralDeployAsync- whether to use the detached async-bash spawn path for Central (#484)centralSentinelDir- override directory for the Central async sentinel/log filesissueRepo- GitHub repo (owner/name) hosting the release milestoneignoreWarnings- proceed past preflight warnings (errors still abort)
public record ReleaseRequest(String releaseVersion, String nextVersion, boolean publish, boolean skipVerify, String allowBranch, boolean publishSite, boolean nonRecursiveSite, boolean skipOrgSite, boolean publishToCentral, int nexusDeployMaxAttempts, String nexusDeployBackoffSeconds, boolean skipNexusDeploy, int centralDeployMaxAttempts, String centralDeployBackoffSeconds, boolean skipCentralDeploy, boolean centralDeployAsync, String centralSentinelDir, String issueRepo, boolean ignoreWarnings)
extends Record
Immutable user-supplied inputs for one invocation of the release pipeline.
Built by ReleaseDraftMojo.runGoal() from the mojo's
@Parameter fields, then carried through the phases via
ReleaseContext. Phases read configuration from
ctx.request() instead of touching mojo instance fields,
which keeps each phase testable in isolation once the
decomposition lands (IKE-Network/ike-issues#489).
Carved out of ReleaseDraftMojo during the Phase 4 P2
prep commit. Resolved values that the prep phase derives
(oldVersion, newVersion, releaseBranch,
projectId, releaseTimestamp) intentionally live
in PrepOutcome, not here — the request captures user
input, the prep outcome captures derivations.
-
Constructor Summary
ConstructorsConstructorDescriptionReleaseRequest(String releaseVersion, String nextVersion, boolean publish, boolean skipVerify, String allowBranch, boolean publishSite, boolean nonRecursiveSite, boolean skipOrgSite, boolean publishToCentral, int nexusDeployMaxAttempts, String nexusDeployBackoffSeconds, boolean skipNexusDeploy, int centralDeployMaxAttempts, String centralDeployBackoffSeconds, boolean skipCentralDeploy, boolean centralDeployAsync, String centralSentinelDir, String issueRepo, boolean ignoreWarnings) Creates an instance of aReleaseRequestrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theallowBranchrecord component.booleanReturns the value of thecentralDeployAsyncrecord component.Returns the value of thecentralDeployBackoffSecondsrecord component.intReturns the value of thecentralDeployMaxAttemptsrecord component.Returns the value of thecentralSentinelDirrecord component.booleandraft()Returnstruewhen this request is for a draft preview, not a real release.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.booleanReturns the value of theignoreWarningsrecord component.Returns the value of theissueReporecord component.Returns the value of thenextVersionrecord component.Returns the value of thenexusDeployBackoffSecondsrecord component.intReturns the value of thenexusDeployMaxAttemptsrecord component.booleanReturns the value of thenonRecursiveSiterecord component.booleanpublish()Returns the value of thepublishrecord component.booleanReturns the value of thepublishSiterecord component.booleanReturns the value of thepublishToCentralrecord component.Returns the value of thereleaseVersionrecord component.booleanReturns the value of theskipCentralDeployrecord component.booleanReturns the value of theskipNexusDeployrecord component.booleanReturns the value of theskipOrgSiterecord component.booleanReturns the value of theskipVerifyrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
ReleaseRequest
public ReleaseRequest(String releaseVersion, String nextVersion, boolean publish, boolean skipVerify, String allowBranch, boolean publishSite, boolean nonRecursiveSite, boolean skipOrgSite, boolean publishToCentral, int nexusDeployMaxAttempts, String nexusDeployBackoffSeconds, boolean skipNexusDeploy, int centralDeployMaxAttempts, String centralDeployBackoffSeconds, boolean skipCentralDeploy, boolean centralDeployAsync, String centralSentinelDir, String issueRepo, boolean ignoreWarnings) Creates an instance of aReleaseRequestrecord class.- Parameters:
releaseVersion- the value for thereleaseVersionrecord componentnextVersion- the value for thenextVersionrecord componentpublish- the value for thepublishrecord componentskipVerify- the value for theskipVerifyrecord componentallowBranch- the value for theallowBranchrecord componentpublishSite- the value for thepublishSiterecord componentnonRecursiveSite- the value for thenonRecursiveSiterecord componentskipOrgSite- the value for theskipOrgSiterecord componentpublishToCentral- the value for thepublishToCentralrecord componentnexusDeployMaxAttempts- the value for thenexusDeployMaxAttemptsrecord componentnexusDeployBackoffSeconds- the value for thenexusDeployBackoffSecondsrecord componentskipNexusDeploy- the value for theskipNexusDeployrecord componentcentralDeployMaxAttempts- the value for thecentralDeployMaxAttemptsrecord componentcentralDeployBackoffSeconds- the value for thecentralDeployBackoffSecondsrecord componentskipCentralDeploy- the value for theskipCentralDeployrecord componentcentralDeployAsync- the value for thecentralDeployAsyncrecord componentcentralSentinelDir- the value for thecentralSentinelDirrecord componentissueRepo- the value for theissueReporecord componentignoreWarnings- the value for theignoreWarningsrecord component
-
-
Method Details
-
draft
public boolean draft()Returnstruewhen this request is for a draft preview, not a real release.Derived as
!publish. The release flow short-circuits at B10 (after preflight) whendraftistrue.- Returns:
- whether this is a draft-mode invocation
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
releaseVersion
Returns the value of thereleaseVersionrecord component.- Returns:
- the value of the
releaseVersionrecord component
-
nextVersion
Returns the value of thenextVersionrecord component.- Returns:
- the value of the
nextVersionrecord component
-
publish
-
skipVerify
public boolean skipVerify()Returns the value of theskipVerifyrecord component.- Returns:
- the value of the
skipVerifyrecord component
-
allowBranch
Returns the value of theallowBranchrecord component.- Returns:
- the value of the
allowBranchrecord component
-
publishSite
public boolean publishSite()Returns the value of thepublishSiterecord component.- Returns:
- the value of the
publishSiterecord component
-
nonRecursiveSite
public boolean nonRecursiveSite()Returns the value of thenonRecursiveSiterecord component.- Returns:
- the value of the
nonRecursiveSiterecord component
-
skipOrgSite
public boolean skipOrgSite()Returns the value of theskipOrgSiterecord component.- Returns:
- the value of the
skipOrgSiterecord component
-
publishToCentral
public boolean publishToCentral()Returns the value of thepublishToCentralrecord component.- Returns:
- the value of the
publishToCentralrecord component
-
nexusDeployMaxAttempts
public int nexusDeployMaxAttempts()Returns the value of thenexusDeployMaxAttemptsrecord component.- Returns:
- the value of the
nexusDeployMaxAttemptsrecord component
-
nexusDeployBackoffSeconds
Returns the value of thenexusDeployBackoffSecondsrecord component.- Returns:
- the value of the
nexusDeployBackoffSecondsrecord component
-
skipNexusDeploy
public boolean skipNexusDeploy()Returns the value of theskipNexusDeployrecord component.- Returns:
- the value of the
skipNexusDeployrecord component
-
centralDeployMaxAttempts
public int centralDeployMaxAttempts()Returns the value of thecentralDeployMaxAttemptsrecord component.- Returns:
- the value of the
centralDeployMaxAttemptsrecord component
-
centralDeployBackoffSeconds
Returns the value of thecentralDeployBackoffSecondsrecord component.- Returns:
- the value of the
centralDeployBackoffSecondsrecord component
-
skipCentralDeploy
public boolean skipCentralDeploy()Returns the value of theskipCentralDeployrecord component.- Returns:
- the value of the
skipCentralDeployrecord component
-
centralDeployAsync
public boolean centralDeployAsync()Returns the value of thecentralDeployAsyncrecord component.- Returns:
- the value of the
centralDeployAsyncrecord component
-
centralSentinelDir
Returns the value of thecentralSentinelDirrecord component.- Returns:
- the value of the
centralSentinelDirrecord component
-
issueRepo
-
ignoreWarnings
public boolean ignoreWarnings()Returns the value of theignoreWarningsrecord component.- Returns:
- the value of the
ignoreWarningsrecord component
-