Does the deployment of IIS Web Sites recycle the app pool before deployment

A client I’m working with has Octopus set up to deploy their web site to IIS. The have a package deployment step set up and it has IIS Web Site and IIS Application Pool configuration items set. If the release is being deployed to an environment that has been deployed to before, what happens to the application pool? Does it get shut down before the deployment starts? Is it Recycled?

The reason I ask is that the deployment is failing due to the web site holding a lock on a file that is part of the deployment.

Not sure what the Octopus support can provide but in my usage, I can see under the raw logs that if it finds an app pool that already exists, nothing happens with it.

You could put a pre-deployment script together that stops the app pool, then the Octopus can do it’s deploying and I think should then start the pool too afterwards, or if not the start can be a post-deployment script.

Hi,

Thanks for reaching out. We don’t stop the website before the deployment. You can use the following step templates to stop/start your website during the deployment

https://library.octopusdeploy.com/#!/step-template/actiontemplate-iis-website-start
https://library.octopusdeploy.com/#!/step-template/actiontemplate-iis-website-stop

If you are interested in seen what gets done by Octopus on IIS when deploying a package, here’s the script that Calamari uses: https://github.com/OctopusDeploy/Calamari/blob/master/source/Calamari/Scripts/Octopus.Features.IISWebSite_BeforePostDeploy.ps1

Hope that helps,

Dalmiro