the shell command ./publish.sh 1.0.0 master 3 870668040000 (for the release of version 1.0.0 from branch master with 3 commits on August 4th, 1997 at 2:14 AM) will be executed on the publish step
The path to use as current working directory when executing the shell commands. This path is relative to the path from which lets-release is running. For example if lets-release runs from /my-project and cwd is set to buildScripts then the shell command will be executed from /my-project/buildScripts
Each shell command is generated with Lodash template. All the objects passed to the lets-release plugins are available as template options.
findPackagesCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
The packages should be written to stdout as stringified JSON (for example {"name": "pkg", "path": "/path/to/pkg"}). If the command write non-stringified JSON to stdout, no packages will be returned.
stderr
Can be used for logging.
verifyConditionsCmd
Command property
Description
exit code
0 if the verification is successful, or any other exit code otherwise.
stdout
Only the reason for the verification failure should be written.
stderr
Can be used for logging.
analyzeCommitsCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
Only the release type (major, minor or patch etc.) should be written to stdout. If no release has to be done the command must not write to stdout.
stderr
Can be used for logging.
verifyReleaseCmd
Command property
Description
exit code
0 if the verification is successful, or any other exit code otherwise.
stdout
Only the reason for the verification failure should be written to stdout.
stderr
Can be used for logging.
generateNotesCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
Only the release notes should be written to stdout.
stderr
Can be used for logging.
prepareCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
Can be used for logging.
stderr
Can be used for logging.
addChannelsCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
The release information can be written to stdout as stringified JSON (for example {"name": "Release name", "url": "http://url/release/1.0.0"}). If the command writes non-parseable JSON to stdout, no release information will be returned.
stderr
Can be used for logging.
publishCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
The release information can be written to stdout as stringified JSON (for example {"name": "Release name", "url": "http://url/release/1.0.0"}). If the command writes non-parseable JSON to stdout, no release information will be returned.
stderr
Can be used for logging.
successCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.
stdout
Can be used for logging.
stderr
Can be used for logging.
failCmd
Command property
Description
exit code
Any non 0 code is considered as an unexpected error and will stop the lets-release execution with an error.