The CD Pipelines of Jenkins X automate the promotion of version changes through each Environment which is configured with a promotion strategy property of Auto. By default the Staging environment uses automatic promotion and the Production environment uses Manual promotion.
To manually Promote a version of your application to an environment use the jx promote command.
jx promote --app myapp --version 1.2.3 --env production
The command waits for the promotion to complete, logging details of its progress. You can specify the timeout to wait for the promotion to complete via the --timeout argument.
e.g. to wait for 5 hours
jx promote --app myapp --version 1.2.3 --env production --timeout 5h
You can use terms like 20m or 10h30m for the various duration expressions.
If the commit comments reference issues (e.g. via the text fixes #123) then Jenkins X pipelines will generate release notes like those of the jx releases.
Also as the version with those new commits is promoted to Staging or Production you will get automated comments on each fixed issue that the issue is now available for review in the corresponding environment along with a link to the release notes and a link to the app running in that environment. e.g.
Promoting external apps
There may be apps that have already been released by other teams or companies who maybe don’t yet use Jenkins X and the applications are not already in your helm chart repository.
If you wish to search your helm repositories for an application to promote you can use the -f for filter option to find a chart to promote.
e.g. to find a redis chart to promote to staging you could do:
jx promote -f redis --env staging
For databases you may want to alias (via --alias) the name of the chart to be a logical name for the kind of database you need. As you may need multiple databases in the same environment for different microservices. e.g.