When adjusting Phase settings for Lifecycles, the radio buttons don't reflect the actual settings.
Reproduction
Create a new Lifecycle with 2 Phases
Set the Phases to A minimum of 1 must complete
Save
Expand either phase and notice the radio button is on All must complete
In this state, you are eligible to save again (if needed) if you select A minimum of 1 must complete, then any other option
Example in a test instance [Internal Only]
Error and Stacktrace
No response
More Information
Screenshot of the UI:
Here is the JSON for the API for the same Lifecycle. Notice the MinimumEnvironmentsBeforePromotion option is set to 1, but would be 0 if it matched the UI:
You can find the true settings for your Lifecycle by making a quick edit to the URL for the Lifecycle. See my example below.
Example URL for a Lifecycle:
https://YOUR_OCTOPUS_URL/app#/Spaces-84/library/lifecycles/Lifecycles-1774
Edit the URL by making app# -> api and delete library/ from the URL. Here is what the final result should look like:
https://YOUR_OCTOPUS_URL/api/Spaces-84/lifecycles/Lifecycles-1774
These are the two settings that represent the 3 radio buttons:
All must complete is the same as "MinimumEnvironmentsBeforePromotion": 0 in the JSON
Severity
No response
Version
Confirmed in 2023.2.5010 and 2023.1.9732
Latest Version
None
What happened?
When adjusting Phase settings for Lifecycles, the radio buttons don't reflect the actual settings.
Reproduction
A minimum of 1 must complete
All must complete
In this state, you are eligible to save again (if needed) if you select
A minimum of 1 must complete
, then any other option Example in a test instance [Internal Only]Error and Stacktrace
No response
More Information
Screenshot of the UI:![image](https://user-images.githubusercontent.com/63249187/233974868-472e1d88-85d9-4b87-834f-468675d2c931.png)
Here is the JSON for the API for the same Lifecycle. Notice the
MinimumEnvironmentsBeforePromotion
option is set to1
, but would be0
if it matched the UI:Workaround
You can find the true settings for your Lifecycle by making a quick edit to the URL for the Lifecycle. See my example below.
Example URL for a Lifecycle:
https://YOUR_OCTOPUS_URL/app#/Spaces-84/library/lifecycles/Lifecycles-1774
Edit the URL by making
app#
->api
and deletelibrary/
from the URL. Here is what the final result should look like:https://YOUR_OCTOPUS_URL/api/Spaces-84/lifecycles/Lifecycles-1774
These are the two settings that represent the 3 radio buttons:
All must complete
is the same as"MinimumEnvironmentsBeforePromotion": 0
in the JSON