Is it possible for Octopus Deploy to remember the value passed for the variable during promotion?

 We have multiple-clients deployment so going with the model Clients are set up as Environment (Pic 1)

 We have our Development Team and IT-Operations (ITOPS) Team . The reason for the request raised is because both teams do have access to each other’s environment so DEV Team do not know how many environments are set up and ITOPS team does not have access of DEV Environments or variables . Hence as Dev team we cannot scope any variable it to a specific environment controlled by ITOPS .

 The option left with DEV team is to use the prompt option in Variables to notify ITOPS team with the introduction of new variable .

 Now what we require here is that once (for the first deployment after introduction of a new promoted variable) the ITOPS has entered the value for the prompted variable during promotion of the release to a specific environment/ client , Octopus Deploy should remember the value and use the same for the variable without re-prompting during future promotion/release to the same environment . And

The value for the prompted variable then should be saved under variable scoped to the environment so that the user is be able alter according to our client’s requirements in future if needed.

 The following is attached images (Pic 2) we are visualising (I have modified the screenshot to give an Idea of what we are looking forward to )

Though I am currently using a following work-around it has been not successful to a great extend :- Please see below the step and the issue faced

  • As the first step of deployment I have written a custom PowerShell script which checks for the empty value "" in variables and if found throws an error and the deployment stops/fails. *The script is specified below*.
  • **However managing about 50 variables required for successful deployment of the application and failing a deployment on Production gets really messy and not-ideal to force-fail the deployment on production**.
  • **The empty variables are more like to be overwritten and scoped to a specific environment (obviously due to human intervention which we want to irradiate) hence missing from other environment during deployment.**
  • $Clientname=$OctopusParameters['Octopus.Environment.Name']
    $invalid=$FALSE
    $OctopusParameters.GetEnumerator() | % {
    if ($($_.value) -eq "")
    {
    Write-Host $($_.key) 'value not provided'
    $invalid=$TRUE
    }
    }
    if ($invalid -eq $TRUE)
    {
    throw [string]"Please update the release with above variable for $Clientname "
    }
    

    It would be great if this could be addressed .

    Pic_1.jpg