Thanks for getting in touch! Your two options are listed in that ticket. Manage the variables per customer and have a drop for each, or have a single drop location with placement variables.
While you do end up with variables hidden within a large variables file that need to be replaced, a 'settings' file that is then scripted to find and replace in our variables file might be an option.
The variables file will have entries such as:
Where you can script a find and replace process to be run before the deployment. Due to not managing the variables it comes down to placeholder variables and some process to replace them in the variables files.
Please let me know if you would like this explained in more detail of if you have further questions.
Can this be explained further please? Our requirement is the fact for security reasons, we are not allowed to store any variables in octopus for the environment we are trying to deploy to. By creating an offline package drop, we need to somehow create file with blank values of all the variables required to install the components needed to deploy. How do we go about doing this do you know?
Thanks for getting in touch! What is the driving reason why you can't store variables for the target environment in Octopus? We see this commonly with PCI Compliance concerns, and are planning a longer term solution to the root problem: https://octopus.com/blog/remote-release-promotions-rfc
Does this sound like it would help address your needs?
In the meantime there may be some things we can do to help you with your current version of Octopus. Any high-level details you are comfortable to provide would help me understand your situation, and what we might do to help.
I would hope you could help....I just had a quick overview of the link you sent as welll and im not sure if it is what I am looking for. I vaguely understood the concept of "spaces" and it might just be our solution.
For reasons beyond me, our cutomer does not want any values of the environment we are to deploy stored in Octopus as they say it is a highly secure environment. In our case it was best to create an offline package drop but that also requires that you already have the variables stored in octopus. We need a way to create lets a file with a list of variables but with no values in it. That way at point of deployment, before they start the batch file, they will manually have to add the values to the variables and then start the offline deployment which picks up the values necessary.
Is this something that can be done?
Thanks for keeping in touch! Unfortunately we don't have first-class support for that kind of thing.
There is one workaround I can think of, but I am hesitant to suggest it since it's more of a hack. When Octopus builds your offline drop, it builds a handful of files inside a folder structure. One of the folders contains all the variables files. If you don't set the Encryption password on your offline drop, and you don't have any sensitive values that will be written via the offline drop, all of the variables will be written in a clear-text JSON file. Your customer could update the values in that JSON file and run the deployment, using their own secrets.
If you have sensitive variables as part of the deployment, and set the Encryption password on the offline drop target, those sensitive values are encrypted into a file which you won't be able to edit by hand.