OctopusDeploy / Issues

| Public | Bug reports and known issues for Octopus Deploy and all related tools
https://octopus.com
162 stars 20 forks source link

Default lifecycle filters the source/destination for scheduled triggers based on the next in "line" #8893

Open SeanStanway-Octopus opened 3 months ago

SeanStanway-Octopus commented 3 months ago

Severity

1 customer discovered, workaround to create a custom lifecycle

Version

2021.3.12258, 2024.3.4944

Latest Version

None

What happened?

When you have a project that uses the default lifecycle and you attempt to create a scheduled trigger, the destination is filtered to either the enviromment selected or the next one in the default lifecycle phase.

In the below screenshot the default lifecycle has the following: image

When you attempt to make a new trigger and select one of the environments as the destination, it will only give the current one and the next one, or any nested enviroments (Prod in this case as shown above): image

image

Reproduction

  1. Create any new project using the default lifecycle
  2. Attempt to create a trigger
  3. Set any environment as the source
  4. Try to select any environment as the destination and observe the filtered list

Error and Stacktrace

No response

More Information

If you use a non-default lifecylce and add scoped/unscoped phases in different positions it allows you to select all environments. Feels like this behaviour should be reflected in the default lifecycle as well since you don't setup any phases for this.

Workaround

Creating a new lifecycle with a single, unscoped phase achieves the outcome of being able to select any environment in either dropdown. Also, the API will accept any environment, you can update the environment Id in the Action.DestinationEnvironmentId to the intended environment and the trigger will update with that value.