codesign:codesign
Full name:
org.eclipse.csi:codesign-maven-plugin:1.0.0-SNAPSHOT:codesign
Description:
Maven goal that signs build artifacts via the SignPath REST API.
The mojo scans the configured build directory using include/exclude glob patterns, submits matching files for signing, polls each request until a final status is reached, and downloads the signed artifact (either in-place or to the configured output directory).
API authentication is resolved from Maven settings.xml, the CSI_CODESIGN_API_TOKEN environment variable, or a config file.
Attributes:
- Requires a Maven project to be executed.
- The goal is thread-safe and supports parallel builds.
- Binds by default to the lifecycle phase:
package.
Required Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<organizationId> |
String |
- |
SignPath organization identifier.
Required. Mapped to User Property: csi.codesign.organizationId |
<projectId> |
String |
- |
SignPath project slug that owns the signing configuration.
Required. Mapped to User Property: csi.codesign.projectId |
<signingPolicy> |
String |
- |
SignPath signing policy slug used for submitted artifacts.
Required. Mapped to User Property: csi.codesign.signingPolicy |
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<artifactConfiguration> |
String |
- |
Optional SignPath artifact configuration slug.
Mapped to User Property: csi.codesign.artifactConfiguration |
<baseDirectory> |
String |
- |
Base directory scanned for input artifacts.
Optional. Defaults to Default: ${project.build.directory} |
<baseUrl> |
String |
- |
SignPath API base URL.
Optional. Default targets the hosted SignPath API endpoint. Default: https://app.signpath.io/ApiUser Property: csi.codesign.baseUrl |
<configFile> |
File |
- |
Path to a properties file containing api.token.
Optional. Default is Default: ${user.home}/.config/eclipse-csi-codesign/config.propertiesUser Property: csi.codesign.configFile |
<connectTimeout> |
int |
- |
HTTP connection timeout in seconds for SignPath API calls.
Optional. Mapped to Default: 30User Property: csi.codesign.connectTimeout |
<description> |
String |
- |
Optional signing request description shown in SignPath.
Mapped to User Property: csi.codesign.description |
<excludes> |
String[] |
- |
Exclude glob patterns applied after includes.
Optional. Has no effect when |
<failOnNoFilesFound> |
boolean |
- |
Fails the build when no files are found to sign.
Optional. Mapped to Default: falseUser Property: csi.codesign.failOnNoFilesFound |
<httpTimeout> |
int |
- |
Read/write HTTP timeout in seconds for SignPath API calls.
Optional. Mapped to Default: 300User Property: csi.codesign.httpTimeout |
<includes> |
String[] |
- |
Include glob patterns used to select files under baseDirectory.
Optional. If empty, no files are selected by the file scan; use |
<maxRetries> |
int |
- |
Maximum number of retry attempts for transient HTTP failures.
Optional. Mapped to Default: 10User Property: csi.codesign.maxRetries |
<outputDirectory> |
String |
- |
Optional output directory for signed artifacts.
If unset, signed files overwrite original files in place. User Property: csi.codesign.outputDirectory |
<parameters> |
Map<String,String> |
- |
Optional custom key/value parameters forwarded to SignPath in the submit request. |
<pollInterval> |
int |
- |
Polling interval in seconds when checking signing request status.
Optional. Mapped to Default: 5User Property: csi.codesign.pollInterval |
<retryInterval> |
int |
- |
Delay in seconds between HTTP retry attempts.
Optional. Mapped to Default: 30User Property: csi.codesign.retryInterval |
<retryTimeout> |
int |
- |
Maximum retry time window in seconds for transient HTTP failures.
Optional. Mapped to Default: 600User Property: csi.codesign.retryTimeout |
<serverId> |
String |
- |
Maven server ID used to resolve the API token from settings.xml server password.
Optional. Default is Default: codesignUser Property: csi.codesign.serverId |
<signAttachedArtifacts> |
boolean |
- |
Whether to include Maven attached artifacts in signing.
Optional. Mapped to Default: falseUser Property: csi.codesign.signAttachedArtifacts |
<signProjectArtifact> |
String |
- |
Controls whether the Maven project's main artifact is included in signing.
Optional. Mapped to When Default: autoUser Property: csi.codesign.signProjectArtifact |
<skip> |
boolean |
- |
Skips plugin execution.
Optional. Mapped to Default: falseUser Property: csi.codesign.skip |
<skipSigning> |
boolean |
- |
Alias for skipping plugin execution.
Optional. Mapped to Default: falseUser Property: csi.codesign.skipSigning |
Parameter Details
<artifactConfiguration>
Mapped to -Dcsi.codesign.artifactConfiguration.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.artifactConfiguration
<baseDirectory>
Optional. Defaults to ${project.build.directory}.
- Type:
java.lang.String - Required:
No - Default:
${project.build.directory}
<baseUrl>
Optional. Default targets the hosted SignPath API endpoint.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.baseUrl - Default:
https://app.signpath.io/Api
<configFile>
api.token.
Optional. Default is ~/.config/eclipse-csi-codesign/config.properties. Mapped to -Dcsi.codesign.configFile.
- Type:
java.io.File - Required:
No - User Property:
csi.codesign.configFile - Default:
${user.home}/.config/eclipse-csi-codesign/config.properties
<connectTimeout>
Optional. Mapped to -Dcsi.codesign.connectTimeout. Default is 30.
- Type:
int - Required:
No - User Property:
csi.codesign.connectTimeout - Default:
30
<description>
Mapped to -Dcsi.codesign.description.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.description
<excludes>
Optional. Has no effect when includes is empty, since an empty includes produces no candidates for excludes to filter.
- Type:
java.lang.String[] - Required:
No
<failOnNoFilesFound>
Optional. Mapped to -Dcsi.codesign.failOnNoFilesFound. Default is false.
- Type:
boolean - Required:
No - User Property:
csi.codesign.failOnNoFilesFound - Default:
false
<httpTimeout>
Optional. Mapped to -Dcsi.codesign.httpTimeout. Default is 300.
- Type:
int - Required:
No - User Property:
csi.codesign.httpTimeout - Default:
300
<includes>
baseDirectory.
Optional. If empty, no files are selected by the file scan; use signProjectArtifact or signAttachedArtifacts to sign Maven artifacts explicitly.
- Type:
java.lang.String[] - Required:
No
<maxRetries>
Optional. Mapped to -Dcsi.codesign.maxRetries. Default is 10.
- Type:
int - Required:
No - User Property:
csi.codesign.maxRetries - Default:
10
<organizationId>
Required. Mapped to -Dcsi.codesign.organizationId.
- Type:
java.lang.String - Required:
Yes - User Property:
csi.codesign.organizationId
<outputDirectory>
If unset, signed files overwrite original files in place.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.outputDirectory
<parameters>
- Type:
java.util.Map<java.lang.String, java.lang.String> - Required:
No
<pollInterval>
Optional. Mapped to -Dcsi.codesign.pollInterval. Default is 5.
- Type:
int - Required:
No - User Property:
csi.codesign.pollInterval - Default:
5
<projectId>
Required. Mapped to -Dcsi.codesign.projectId.
- Type:
java.lang.String - Required:
Yes - User Property:
csi.codesign.projectId
<retryInterval>
Optional. Mapped to -Dcsi.codesign.retryInterval. Default is 30.
- Type:
int - Required:
No - User Property:
csi.codesign.retryInterval - Default:
30
<retryTimeout>
Optional. Mapped to -Dcsi.codesign.retryTimeout. Default is 600.
- Type:
int - Required:
No - User Property:
csi.codesign.retryTimeout - Default:
600
<serverId>
settings.xml server password.
Optional. Default is codesign.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.serverId - Default:
codesign
<signAttachedArtifacts>
Optional. Mapped to -Dcsi.codesign.signAttachedArtifacts. Default is false.
- Type:
boolean - Required:
No - User Property:
csi.codesign.signAttachedArtifacts - Default:
false
<signProjectArtifact>
Optional. Mapped to -Dcsi.codesign.signProjectArtifact. Accepted values: auto, true, false (case-insensitive). Default is auto.
When auto, signing is enabled for packaging types that produce signable binary artifacts (jar, war, ear, rar, ejb, maven-plugin) and disabled for pom packaging and any other unrecognised type.
- Type:
java.lang.String - Required:
No - User Property:
csi.codesign.signProjectArtifact - Default:
auto
<signingPolicy>
Required. Mapped to -Dcsi.codesign.signingPolicy.
- Type:
java.lang.String - Required:
Yes - User Property:
csi.codesign.signingPolicy
<skip>
Optional. Mapped to -Dcsi.codesign.skip. Default is false.
- Type:
boolean - Required:
No - User Property:
csi.codesign.skip - Default:
false
<skipSigning>
Optional. Mapped to -Dcsi.codesign.skipSigning. Default is false.
- Type:
boolean - Required:
No - User Property:
csi.codesign.skipSigning - Default:
false
