Octopus v3.7.7 - Approval Step failing to start after upgrading to v3.7.7

After we upgraded to Octopus 3.7.7 from v3.3.14 I started to get this error in my approval steps:

There was a problem with your request.
There must be at least one enabled healthy machine to deploy to in the environment
Once you have corrected these problems you can try again.
If the problem is related to a variable you will need to update the variables for this release or recreate the release for the changes to take effect.
If the problem is related to the deployment process you will need to create a new release for the changes to take effect.

because my deployment step which used to not run in this environment is throwing the below error:
Warning: there are no enabled deployment targets in the roles specified by this step, in this environment.

Is there a way to get the old functionality to come back? or is there a better way of doing what I was doing?

Thanks,
Alex

Screen_Shot_2017-06-13_at_11.35.53_AM.png

Hi Alex,

Thanks for getting in touch.

Because you are now deploying this to an environment which does not contain machines with the given roles, it is warning you that the “Deploy Website Artifact” step will not be able to run.

You may manually skip this step if you wish, which will run all the other steps in your deployment.

Alternatively, if you want to deploy all other steps, but have it automatically skip the “Deploy Website Artifact” step (when there are no machines available in the environment you are deploying to), you can set the Deployment Target/machine connectivity settings of your project to say “Allow deployments to be created when there are no deployment targets”.

With that checkbox enabled, it will pass the given step with a log message informing you that “Skipping this step as no machines were found in the role: …”. Previously, if the deployment reached a step and found no deployment targets to deploy to, it would fail.

Hope this helps.

Cheers
Mark

Is there a way to apply “Allow deployments to be created when there are no deployment targets” only on specific environments?

The use case is that I want it to error when I’m deploying to my development or production environments, but I would like it to be fine with not being able to deploy in my approvals environment.

Dev (has servers to deploy to) > Approvals (does not have servers, is just a couple of the manual checks) > Prod (has servers to deploy to)

Thanks,
Alex

Nevermind, please close the ticket. I went through all my deploy steps and only updated them to run on the correct environments.

Thanks,
Alex

From: “Brehm, Alexander” Alexander.Brehm@e-hps.com
Date: Wednesday, June 14, 2017 at 12:10 PM
To: Mark Siedle tender2+d1bf5ad7bd@tenderapp.com
Subject: Re: Octopus v3.7.7 - Approval Step failing to start after upgrading to v3.7.7 [Questions #11968]

Is there a way to apply “Allow deployments to be created when there are no deployment targets” only on specific environments?

The use case is that I want it to error when I’m deploying to my development or production environments, but I would like it to be fine with not being able to deploy in my approvals environment.

Dev (has servers to deploy to) > Approvals (does not have servers, is just a couple of the manual checks) > Prod (has servers to deploy to)

Thanks,
Alex

Hi Alex,

Scoping your steps to specific environments is a good solution. Glad you got it sorted.

Cheers
Mark