Skip to content
Compare
Choose a tag to compare
@GrantBirki GrantBirki released this 20 Sep 18:42
· 193 commits to main since this release
409f6de

Enforced Deployment Order 🚀

Introducing a long requested feature, enforced deployment order...

Summary

This pull request does the following:

  • adds a new enforced_deployment_order input option that can be used to require deployments to take place "in order" and for each to pass before the next one can be triggered
  • adds a new needs_to_be_deployed output that maps to the environments that require successful deployments if a deployment attempt is rejected

Detailed

This feature is one that has been requested by folks internally and externally to GitHub for a long time (over a year). This pull request makes it so that users can now control the order in which deployments are made (if they choose to do so).

This feature is optional and can be enabled by setting, enforced_deployment_order: <env1>,<env2>,<env3>. The value for enforced_deployment_order is a string that is read from left->right with each value separated by commas. Each value in this comma separated list is an environment that you wish to use in an "enforced deployment order". Here is an example:

- uses: github/[email protected]
  id: branch-deploy
  with:
    environment_targets: development,staging,production
    enforced_deployment_order: development,staging,production

This means that your project has three environments in total (development,staging,production). The enforced_deployment_order input option specifies that your environments must now be deployed in the order in which they are written. So if you want to deploy to production, you must first have a successful (and active) deployment to development and staging before the branch-deploy Action will allow you to trigger a deployment to production.


For more details, please see the pull request that implemented these changes here or the official documentation.


What's Changed

Full Changelog: v9.7.0...v9.8.0