We just deployed Octopus Deploy 3.0.10.2278 and encountered this same error. Here is what I found (our configuration may be different than the norm).
We believe we have found a BUG in Octopus 3.0.10.2778 that causes this error message.
A little background:
- We have Global variable sets that we are using to drive a lot of Network IP configuration, hostname creation, app-pool name creation, site name, F5 toggling, etc…
- We created a step template to use to deploy our sites with, in an automated deployment cycle for our Dev environment.
- We are integrating with TFS and using our build server to push packages to the Internal Nuget feed in Octopus.
- We are using Project level variables to drive the package name to deploy.
Our project configuration looks like this:
Process:
Automatic Release Creation enabled, pointed to the “Auto Deploy” step.
Steps:
- 1 step, “Auto Deploy” using the built in “Deploy NuGet package” step. We then configure it to have a custom install location and auto setup/update IIS (on Server 2012R2).
Variables:
Imported Global variable sets" Company.F5, Company.Infrastructure, Company.Web, Web Configs - all of these are used to derive custom settings in the Deploy NuGet package.
- Company.Project.AppName - “prototype”
- Company.Project.Package.Name - “prototype”
- Company.Project.AppPool.ServiceAccountPassword
- Company.Project.SubDomain (used for custom prototype.dev.company.com URL, site, app pool, etc… creation)
Settings:
Release Versioning: “Use the version number from an included NuGet package” - Auto Deploy (the name of our step in our Process)
Deploying the package:
In TFS, we have our build configured to auto deploy when a developer checks in code for Continuous Integration. This then uses OctoPack to push the code into the built in Octopus NuGet feed. - This works beautifully and we have no issues.
When the “Auto Deploy” step is configured to use a specific Package name (fig 1.1 in attachment) the Auto Deploy feature works correctly and all is well.
OK, so now comes the possible bug:
We have over 100 custom apps that we are looking to integrate into Octopus and as part of this I want to create a step template that encompasses the configuration of our sites, and IIS, and such and have our Project Process only include this one step template and fulfill the package name using a Project Variable.
When doing so (fig 1.2 in attachment) the release is never created.
That leads me to believe there is a possible bug in:
- Process - Automatic Release Creation - not recognizing the Variable driven name
OR
- Settings - Release Versioning (Use the version number from an included NuGet package, step “Auto Deploy”) - not recognizing the Variable driven name
OR
- something else
Since there is a new package created and deployed to the internal NuGet feed one would expect this to work (and does when HARD CODED, not VARIABLE DRIVEN)
I have tried setting up a step template and driving it with a project level variable, modified the step template to include a parameter that is set per Package, and have also tried putting the Deploy NuGet Package step in directly. None of these work if I use variables.
I have not tried creating a step template with a hard coded package name, but that would defeat the purpose of what I am trying to accomplish here.
I have hard coded the value to the package in the Deploy NuGet Package step and seen it work, and have modified that exact same step to use a Project Variable and it not work. - I have NOT tried to use a Global Variable.
Perhaps this is by design, but it feels like I should be able to do what I am attempting here.
Any thoughts? I’d be happy to setup a WebEx with an Octopus Employee to demonstrate.
Kyle S.
Octopus_3.0.10.2278_Possible_Bug.pdf (387 KB)