Chain Deployment step using invalid url for calls to Octopus API

Hi,

I have an Octopus Project which uses two of the Chain Deployment steps.

However, the Chain Deployment step is failing as it’s calling the Octopus API with

http://PRDBUILD:80/octopus/octopus/api/lifecycles/Lifecycles-21

when i believe it should be using

http://PRDBUILD:80/octopus/api/lifecycles/Lifecycles-21

I’ve attached the Raw log to this topic.

Is the URL configurable or am I doing something wrong?

ServerTasks-13499.log.txt (6.7 KB)

Hi,

Thanks for getting in touch! I’m sorry you’re hitting this issue. I’ve given this Chain Deployment step a quick test and it seems to be working on my end. Checking out the source code for it (which you can see in your web portal under Library > Step Templates, select the step and view the Script Content), it looks like the API calls should all be alright. Do you by chance have any unexpected binding on your Octopus server that could be confusing the step? You can see these in your Octopus Manager.

We’ve recently shipped a new built-in step called Deploy a Release (released in 2018.2), and you can read more about it in our blog post. Would you be able to give this step a try and see if it would suit?

I hope this helps for now! Let me know how you go and if you have any further questions going forward.

Best regards,

Kenny

Thanks @Kenneth_Bates.

I have just managed to test this out, however, I’ve discovered an issue.

If I have a project with two “Deploy a Release” steps only, the Deployment Targets dropdown is not populated when deploying a Release.

I can only get around this by adding say a dummy Script step which allows me to define a Role.

I assume this is because the Deployment Target dropdown requires at least one Role in order to populate.

It looks like either the “Deploy a Release” step needs the ability to define one ore more roles, or the Deployment Target dropdown logic needs to be modified.

Screencast for issue is available here

Hi,

Thanks for following up and providing that recording! This behavior is actually as expected, as the Deploy a Release step runs on your Octopus server. It doesn’t have the context of roles, and the roles that your child project runs on is defined within its own deployment process. Similar to if you had a process of only steps that run on the server, the option to include/exclude targets isn’t available as it won’t run on any targets.

I hope that makes sense! Don’t hesitate to reach out if you have any further questions. :slight_smile:

Best regards,

Kenny

Hi @Kenneth_Bates thanks heaps for your response.

So just to confirm you agree the Dummy Step is the best approach for making this work at the moment?

Hi,

You’re correct, using a dummy step, or any other step that can be run on a role would be the approach to populate the deployment targets dropdown at deployment time.

Let me know if you have any further questions going forward. :slight_smile:

Best regards,

Kenny

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.