IIS config not performed

Hi,

For some reason my deployment decides that the NuGet packagte doesn’t have a web.config, even though it has seen one in the content folder. My project is a sample MVC3 app. Should the *.configs live somewhere else within the package? Sample output below:

2011-06-29 10:49:17 INFO Deployment successful. Tentacle output follows:
2011-06-29 10:49:26 DEBUG Tasks will be run in the following order:

  • PowerShellPreDeployScript
  • XmlConfigTransforms
  • XmlConfigVariables
  • PowerShellDeployScript
  • Installers
  • IisWebSite
  • PowerShellPostDeployScript
    2011-06-29 10:49:27 INFO Updating any .config files
    2011-06-29 10:49:27 DEBUG Scanning configuration file: C:\Octopus\Tentacle\Applications\MyFinance.Web.1.0.0.19445\content\web.config
    2011-06-29 10:49:27 DEBUG Scanning configuration file: C:\Octopus\Tentacle\Applications\MyFinance.Web.1.0.0.19445\content\web.release-dev.config
    2011-06-29 10:49:27 DEBUG Scanning configuration file: C:\Octopus\Tentacle\Applications\MyFinance.Web.1.0.0.19445\content\Areas\Mobile\Views\Web.config
    2011-06-29 10:49:27 DEBUG Scanning configuration file: C:\Octopus\Tentacle\Applications\MyFinance.Web.1.0.0.19445\content\Views\Web.config
    2011-06-29 10:49:27 INFO Installing any Installers
    2011-06-29 10:49:27 DEBUG Scanning assembly: C:\Octopus\Tentacle\Applications\MyFinance.Web.1.0.0.19445\lib\Altairis.Web.Security.dll
    2011-06-29 10:49:27 DEBUG A web.config file was not found, so no IIS configuration will be performed.
    2011-06-29 10:49:27 INFO Deployment complete!

Thanks,
John

Should also add that I have no variables set up for this project - I’m not sure if that has any impact on the issue or not, but figured it might be helpful info!

Thanks,
John

Tentacle performs variable replacement on any web.config, but it only uses the ‘root’ web.config to create an IIS site.

I’ll change the convention to find the “root most” web.config and create an IIS site for that. So if you have:

/Content
/Content/Web.config

The site will be pointed to /Content. But if you had:

/Content
/Content/Web.config
/Web.config 

It would be pointed at the root. Does this seem logical?

Paul

That would seem reasonable to me.

Do you have an example of a package structure that works currently, preferably with the associated spec file, as I followed the Hanselman example but after packaging I end up with all my dlls in /lib and the site (minus dll’s) in /content, which I’m guessing is not the structure that the Tentacle is expecting to work with?

Thanks,
John

Hi John,

Here is an example: Acme.Web.1.9.0.nupkg. Rename it to .zip to see the contents.

While /lib and other structures are used for NuGet packages in VS, for Octopus there’s no special folders needed - the files are deployed as-is, so the contents of the ZIP file should match exactly the file system you plan to deploy it to.

Hope that helps, and I’ll work on the documentation.

Paul

A new build is available that fixes this issue: