I have found an issue regarding different bindings for an IIS site between different environments.
For example, I have a Test, UAT and Production environment. UAT and Production run the site over SSL, however Test does not. (I’m aware that ideally we should be running Test over SSL, however we have some dependencies that wont allow this just yet)
To set this up in Octopus, we have two bindings, one with SSL enabled and one without. However when we deploy to the test environment, the deployment fails as the disabled SSL binding is referencing a variable that does not exist for the Test Environment. That variable is an SSL certificate variable.
Ideally if the binding is disabled, the SSL variable should not be evaluated, so it can handle this kind of setup, or we have scoping at the binding level.
The only workaround I can currently see, is to create a new certificate, import it into Octopus and deploy it, but keep the binding disabled. However this is not really ideal.
A fix for this in the future would be most welcome.
Please let me know if you would like more information on this, as I may not be describing this issue as well as i could do.