mirror of
https://github.com/jlengrand/jreleaser.github.io.git
synced 2026-03-10 08:31:25 +00:00
510 lines
18 KiB
Plaintext
510 lines
18 KiB
Plaintext
= JReleaser CLI
|
|
|
|
Executes a JReleaser workflow as a command-line interface (CLI).
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser -h
|
|
Usage: jreleaser [-hV] [COMMAND]
|
|
jreleaser
|
|
-h, --help Show this help message and exit.
|
|
-V, --version Print version information and exit.
|
|
Commands:
|
|
init Create a jreleaser config file.
|
|
config Display current configuration.
|
|
template Generate a tool template.
|
|
changelog Calculate the changelog.
|
|
checksum Calculate checksums.
|
|
sign Sign release artifacts.
|
|
release Create or update a release..
|
|
prepare Prepare all distributions.
|
|
package Package all distributions.
|
|
upload Upload all distributions.
|
|
announce Announce a release.
|
|
full-release Perform a full release.
|
|
----
|
|
|
|
The following commands are supported:
|
|
|
|
== init
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser init -h
|
|
Usage: jreleaser init [-dhioqVw] [-b=<basedir>] [-f=<format>]
|
|
Create a jreleaser config file.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-d, --debug Set log level to debug.
|
|
-f, --format=<format> Configuration file format.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-o, --overwrite Overwrite existing files.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
Currently supported formats are: `yml`, `json`.
|
|
|
|
The file will be generated at `<basedir>` if specified, otherwise at the current directory.
|
|
|
|
== config
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser config -h
|
|
Usage: jreleaser config [-dfhiqVw] [-b=<basedir>] [-c=<configFile>]
|
|
Display current configuration.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-f, --full Display full configuration.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
== template
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser template -h
|
|
Usage: jreleaser template [-dhioqsVw] [-b=<basedir>] -dn=<distributionName>
|
|
[-dt=<distributionType>] -tn=<toolName>
|
|
Generate a tool template.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-d, --debug Set log level to debug.
|
|
-dn, --distribution-name=<distributionName>
|
|
The name of the distribution.
|
|
-dt, --distribution-type=<distributionType>
|
|
The type of the distribution.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-o, --overwrite Overwrite existing files.
|
|
-q, --quiet Log errors only.
|
|
-s, --snapshot Use snapshot templates.
|
|
-tn, --tool-name=<toolName>
|
|
The name of the tool.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--basedir` is undefined then the command assumes it's the current directory.
|
|
|
|
The value of `--distribution-name` must eventually match the name of a configured
|
|
xref:configuration:distributions.adoc[distribution].
|
|
|
|
The value of `--distribution-type` must match any of the available
|
|
xref:ROOT:distributions/index.adoc[distribution types].
|
|
|
|
The value of `--tool-name` must match any of the available xref:configuration:packagers/index.adoc[].
|
|
|
|
== changelog
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser changelog -h
|
|
Usage: jreleaser changelog [-dhiqVw] [-b=<basedir>] [-c=<configFile>]
|
|
Calculate the changelog.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
== checksum
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser checksum -h
|
|
Usage: jreleaser checksum [-dhiqVw] [-b=<basedir>] [-c=<configFile>]
|
|
Calculate checksums.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
== sign
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser sign -h
|
|
Usage: jreleaser sign [-dhiqVw] [-b=<basedir>] [-c=<configFile>]
|
|
Sign release artifacts.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
== release
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser release -h
|
|
Usage: jreleaser release [-dhiqVwy] [--auto-config] [--overwrite]
|
|
[--prerelease] [--signing-armored] [--signing-enabled]
|
|
[--skip-tag] [--update] [-b=<basedir>]
|
|
[-c=<configFile>] [--changelog=<changelog>]
|
|
[--commit-author-email=<commitAuthorEmail>]
|
|
[--commit-author-name=<commitAuthorName>]
|
|
[--milestone-name=<milestoneName>]
|
|
[--project-name=<projectName>]
|
|
[--project-version=<projectVersion>]
|
|
[--release-name=<releaseName>] [--tag-name=<tagName>]
|
|
[--username=<username>] [--file=<files>]...
|
|
Create or update a release..
|
|
--auto-config Model auto configuration..
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
--changelog=<changelog>
|
|
Path to changelog file.
|
|
--commit-author-email=<commitAuthorEmail>
|
|
Commit author e-mail.
|
|
--commit-author-name=<commitAuthorName>
|
|
Commit author name.
|
|
-d, --debug Set log level to debug.
|
|
--file=<files> Input file(s) to be uploaded.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
--milestone-name=<milestoneName>
|
|
The milestone name.
|
|
--overwrite Overwrite an existing release.
|
|
--prerelease If the release is a prerelease.
|
|
--project-name=<projectName>
|
|
The projects name.
|
|
--project-version=<projectVersion>
|
|
The projects version.
|
|
-q, --quiet Log errors only.
|
|
--release-name=<releaseName>
|
|
The release name.
|
|
--signing-armored Generate ascii armored signatures.
|
|
--signing-enabled Sign files.
|
|
--skip-tag Skip tagging the release.
|
|
--tag-name=<tagName> The release tag.
|
|
--update Update an existing release.
|
|
--username=<username> Git username.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
-y, --dryrun Skips remote operations.
|
|
----
|
|
|
|
There are two usage modes:
|
|
|
|
* auto config
|
|
* with explicit configuration file
|
|
|
|
*AutoConfig*
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory where the command is run.
|
|
|
|
The `--file` parameter is repeatable.
|
|
|
|
*Explicit Configuration file*
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
IMPORTANT: None of the command flags that override model properties can be used in this mode.
|
|
|
|
NOTE: Use `-y` or `--dryrun` during development to verify your configuration settings. No network uploads nor repository
|
|
mutations should occur when this mode is activated.
|
|
|
|
== prepare
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser prepare -h
|
|
Usage: jreleaser prepare [-dhiqVw] [-b=<basedir>] [-c=<configFile>]
|
|
[-dn=<distributionName>] [-tn=<toolName>]
|
|
Prepare all distributions.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-dn, --distribution-name=<distributionName>
|
|
The name of the distribution.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-tn, --tool-name=<toolName>
|
|
The name of the tool.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
The value of `--distribution-name` must match the name of a configured xref:configuration:distributions.adoc[distribution].
|
|
|
|
The value of `--tool-name` must match any of the available xref:configuration:packagers/index.adoc[].
|
|
|
|
You may invoke this command in the following ways:
|
|
|
|
Prepare all distributions:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser prepare
|
|
----
|
|
|
|
Prepare a single distribution with all configured tools:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser prepare --distribution-name app
|
|
----
|
|
|
|
Prepare all distributions with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser prepare --tool-name brew
|
|
----
|
|
|
|
Prepare a single distribution with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser prepare --distribution-name app --tool-name brew
|
|
----
|
|
|
|
== package
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser package -h
|
|
Usage: jreleaser package [-dhiqVwy] [-b=<basedir>] [-c=<configFile>]
|
|
[-dn=<distributionName>] [-tn=<toolName>]
|
|
Package all distributions.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-dn, --distribution-name=<distributionName>
|
|
The name of the distribution.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-tn, --tool-name=<toolName>
|
|
The name of the tool.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
-y, --dryrun Skips remote operations.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
The value of `--distribution-name` must match the name of a configured xref:configuration:distributions.adoc[distribution].
|
|
|
|
The value of `--tool-name` must match any of the available xref:configuration:packagers/index.adoc[].
|
|
|
|
You may invoke this command in the following ways:
|
|
|
|
Package all distributions:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser package
|
|
----
|
|
|
|
Package a single distribution with all configured tools:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser package --distribution-name app
|
|
----
|
|
|
|
Package all distributions with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser package --tool-name brew
|
|
----
|
|
|
|
Package a single distribution with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser package --distribution-name app --tool-name brew
|
|
----
|
|
|
|
NOTE: Use `-y` or `--dryrun` during development to verify your configuration settings. No network uploads nor repository
|
|
mutations should occur when this mode is activated.
|
|
|
|
== upload
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser upload -h
|
|
Usage: jreleaser upload [-dhiqVwy] [-b=<basedir>] [-c=<configFile>]
|
|
[-dn=<distributionName>] [-tn=<toolName>]
|
|
Upload all distributions.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-dn, --distribution-name=<distributionName>
|
|
The name of the distribution.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-tn, --tool-name=<toolName>
|
|
The name of the tool.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
-y, --dryrun Skips remote operations.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
The value of `--distribution-name` must match the name of a configured xref:configuration:distributions.adoc[distribution].
|
|
|
|
The value of `--tool-name` must match any of the available xref:configuration:packagers/index.adoc[].
|
|
|
|
You may invoke this command in the following ways:
|
|
|
|
Upload all distributions:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser upload
|
|
----
|
|
|
|
Upload a single distribution with all configured tools:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser upload --distribution-name app
|
|
----
|
|
|
|
Upload all distributions with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser upload --tool-name brew
|
|
----
|
|
|
|
Upload a single distribution with a single tool:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser upload --distribution-name app --tool-name brew
|
|
----
|
|
|
|
NOTE: Use `-y` or `--dryrun` during development to verify your configuration settings. No network uploads nor repository
|
|
mutations should occur when this mode is activated.
|
|
|
|
== announce
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser announce -h
|
|
Usage: jreleaser announce [-dhiqVwy] [-an=<announcerName>] [-b=<basedir>]
|
|
[-c=<configFile>]
|
|
Announce a release.
|
|
-an, --announcer-name=<announcerName>
|
|
The name of the announcer.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
-y, --dryrun Skips remote operations.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
The value of `--announcer-name` must match any of the available xref:configuration:announce/index.adoc[announcers].
|
|
|
|
You may invoke this command in the following ways:
|
|
|
|
Announce with all configured announcers:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser announce
|
|
----
|
|
|
|
Announce with a single announcer:
|
|
[source,bash]
|
|
----
|
|
$ jreleaser announce --announcer-name brew
|
|
----
|
|
|
|
NOTE: Use `-y` or `--dryrun` during development to verify your configuration settings. No network uploads nor repository
|
|
mutations should occur when this mode is activated.
|
|
|
|
== full-release
|
|
|
|
[source,bash]
|
|
----
|
|
$ jreleaser full-release -h
|
|
Usage: jreleaser full-release [-dhiqVwy] [-b=<basedir>] [-c=<configFile>]
|
|
Perform a full release.
|
|
-b, --basedir=<basedir> Base directory.
|
|
-c, --config-file=<configFile>
|
|
The config file
|
|
-d, --debug Set log level to debug.
|
|
-h, --help Show this help message and exit.
|
|
-i, --info Set log level to info.
|
|
-q, --quiet Log errors only.
|
|
-V, --version Print version information and exit.
|
|
-w, --warn Set log level to warn.
|
|
-y, --dryrun Skips remote operations.
|
|
----
|
|
|
|
If `--config-file` is undefined then the command assumes the file is named `jreleaser.[yml|toml|json]` and it's
|
|
found at the current directory.
|
|
|
|
If `--basedir` is undefined then the command assumes it's the same directory that contains the resolved config file.
|
|
|
|
NOTE: Use `-y` or `--dryrun` during development to verify your configuration settings. No network uploads nor repository
|
|
mutations should occur when this mode is activated.
|
|
|