deploymenttfs-2015ms-release-managementvnext

TFS Release Management 2015 - How to restrict environment deployment order


Quick question.

Is there a way to constrain/restrict what order users can can deploy builds to environments?

For example if I have these four environments configured with manual push-button deploy (not-automated) I can start all four together if I want. I don't have to wait for the other to be done before kicking off the next one:

DEV TEST STAGE PROD

Microsoft seems to be missing this feature in TFS 2015. It would make sense to offer a deployment condition that states that previous environments must have successful deployments before you can run push-button deploy for the next.

Yes, I know, you are going to say "but you can automate that so the deploys run in the order you want." Management here does NOT want that. They want push button deployment for each environment WITH a constraint that previous environments must be completed first.

This means a manual start for each environment.

Other than having the release manager "eyeball" the situation before pushing the button for the next environment I can't see a way to configure this rule.

Any ideas?


Solution

  • There is not any restriction on manually deploy situation for now. This is designed for giving you the ability to override the release process.

    Note that you can always deploy a release directly to any of the environments in your release definition by selecting the Deploy action when you create a new release.

    In this case, the environment triggers you configure, such as a trigger on successful deployment to another environment, do not apply. The deployment occurs irrespective of these settings. This gives you the ability to override the release process. Performing such direct deployments requires the Manage deployments permission, which should only be given to selected and approved users.

    Source Link: Environment triggers

    Suggest you use automation triggers, you could use Parallel forked and joined deployments, in combination with the ability to define pre- and post-deployment approvals, this enables the configuration of complex and fully managed deployment pipelines to suit almost any release scenario.

    If you insist on manual push-button deploy, you may have to ask the release manager "eyeball" the situation to restrict environment deployment order as you mentioned.