If I use the same NuGet package across multiple deployment steps, whichever one runs second fails with the following message.
“The package has already been installed on this machine, so it will be ignored. To override this, use the ‘Force redeployment’ checkbox in the Octopus UI.”
I tried forcing redeployment but this causes a failure during the second deployment step as well, this time accessing files as below. Octopus could handle this by applying config changes (IIS Vdir in my case) even when a given package has already been deployed.
2012-02-07 13:10:15 ERROR Error while executing job: Access to the path ‘D:\Octopus\Tentacle\Applications*\content\App_Code’ is denied.
System.UnauthorizedAccessException: Access to the path 'D:\Octopus\Tentacle\Applications*\content\App_Code’ is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj)
at System.IO.Directory.CreateDirectory(String path)
at NuGet.PhysicalFileSystem.AddFile(String path, Stream stream)
at NuGet.FileSystemExtensions.AddFileWithCheck(IFileSystem fileSystem, String path, Func1 streamFactory) at NuGet.FileSystemExtensions.AddFiles(IFileSystem fileSystem, IEnumerable
1 files, String rootDir, Boolean preserveFilePath)
at NuGet.PackageManager.ExecuteInstall(IPackage package)
at NuGet.PackageManager.Execute(IPackage package, IPackageOperationResolver resolver)
at Octopus.Tentacle.Packages.PackageInstaller.InstallPackageUsingNuGet(PackageMetadata package, SemanticVersion version, Boolean forceReinstall) in c:\BuildAgent\work\7bf5272a44079f5\source\Octopus.Tentacle\Packages\PackageInstaller.cs:line 66
at Octopus.Tentacle.Packages.PackageInstaller.Install(PackageMetadata package, Boolean forceReinstall) in c:\BuildAgent\work\7bf5272a44079f5\source\Octopus.Tentacle\Packages\PackageInstaller.cs:line 29
at Octopus.Tentacle.Jobs.Deployment.DeployPackageJobExecutor.Execute(DeployPackageJob job) in c:\BuildAgent\work\7bf5272a44079f5\source\Octopus.Tentacle\Jobs\Deployment\DeployPackageJobExecutor.cs:line 38
at Octopus.Tentacle.Jobs.JobQueue.RunDeploymentsOnBackgroundThread(Object ignored) in c:\BuildAgent\work\7bf5272a44079f5\source\Octopus.Tentacle\Jobs\JobQueue.cs:line 85