Octopus.Features.IISWebSite_BeforePostDeploy.ps1 error

Hi,

Getting the following two errors from Octopus on different projects respectively. Our build server (on which Octopus Server is deployed) didn’t previously have IIS installed. It has been recently installed in order to support functional tests running on TeamCity, which is also installed on the same box.

The registry key mentioned in the first error message exists on both the server and target. Executing the code from Octopus.Features.IISWebSite_BeforePostDeploy.ps1:77 results in

SetupString

IIS 8.5

on the server

and

SetupString

IIS 7.5

on the target

We’ve tried uninstalling and then re-installing IIS but the problem persists. Any advice hugely appreciated.

Cheers,
Matt

error 1


get-itemproperty : Cannot find path 'HKLM:\SOFTWARE\Microsoft\InetStp’
Error 14:48:20
because it does not exist.
Error 14:48:20
At C:\Program Files\Octopus
Error 14:48:20
Deploy\Tentacle\Scripts\Octopus.Features.IISWebSite_BeforePostDeploy.ps1:77
Error 14:48:20
char:8
Error 14:48:20

  • $iis = get-itemproperty HKLM:\SOFTWARE\Microsoft\InetStp\ | select
    Error 14:48:20
    setupstring
    Error 14:48:20
  •    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    

Error 14:48:20
+ CategoryInfo : ObjectNotFound: (HKLM:\SOFTWARE\Microsoft\InetSt
Error 14:48:20
p:String) [Get-ItemProperty], ItemNotFoundException
Error 14:48:20
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetIt
Error 14:48:20
emPropertyCommand
Fatal 14:48:20
PowerShell script returned a non-zero exit code: 1
Tentacle version 2.6.4.951

error 2


Could not load file or assembly ‘Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’ or one of its dependencies. The system cannot find the file specified.
System.IO.FileNotFoundException: Could not load file or assembly ‘Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’ or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.Web.Administration, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’
at Octopus.Tentacle.Integration.Iis.WebServerSevenSupport.ChangeHomeDirectory(String webSiteName, String virtualDirectoryPath, String newWebRootPath)
at Octopus.Tentacle.Procedures.Implementations.Iis.IisHomeDirectoryUpdateProcedure.Start(IProcedureHost host, ProcedureState state) in y:\work\refs\heads\master\source\Octopus.Tentacle\Procedures\Implementations\Iis\IisHomeDirectoryUpdateProcedure.cs:line 36
at Octopus.Tentacle.Orchestration.Procedures.ProcedureCallOrchestrator.Receive(CallProcedureCommand message) in y:\work\refs\heads\master\source\Octopus.Tentacle\Orchestration\Procedures\ProcedureCallOrchestrator.cs:line 73
at Pipefish.Actor.OnReceivingTyped[TBody](Message message) in y:\work\3cbe05672d69a231\source\Pipefish\Actor.cs:line 113

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
Tentacle version 2.6.4.951

ok, sorry - this can be closed - we resolved the problem internally.

What had happened was that another machine without IIS had been added into the same role as the target machine and the deployment was targeting both machines.