当由章鱼部署运行时,Powershell命令不起作用

时间:2014-03-20 13:59:40

标签: powershell octopus-deploy

我有几个步骤来解决这个问题,我不知道还能做什么。我的最终目标是检查我的“app.exe”文件版本。当我在服务器上手动运行它时,两个脚本版本都可以工但是当Octopus运行时,两个版本都会因错误而失败

版本1:

  $file = "C:\Octopus\Applications\AppStartUp\38.2.19.0\app.exe"
  $fileVersion = [System.Diagnostics.FileVersionInfo]::GetVersionInfo($file).FileVersion

我收到错误:

return [System.Diagnostics.FileVersionInfo]::GetVersionInfo <<<< ($file).    FileVersion
    + CategoryInfo          : NotSpecified: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : DotNetMethodException

第2版:

$file = "C:\Octopus\Applications\AppStartUp\38.2.19.0\app.exe"
(Get-Command "$file").FileVersionInfo.Fileversion

错误消息

Export-ModuleMember : The Export-ModuleMember cmdlet can only be called from in side a module. At C:\Octopus\Applications\CSIS_DEV\ESG.CSIS.StartUp\38.2.19.0\deployment\clickOnceLib.ps1:35 char:20
    + Export-ModuleMember <<<<  -function * -alias *
    + CategoryInfo          : PermissionDenied: (:) [Export-ModuleMember], InvalidOperationException
    + FullyQualifiedErrorId : Modules_CanOnlyExecuteExportModuleMemberInsideAModule,Microsoft.PowerShell.Commands.ExportModuleMemberCommand 
Get-Command : The term 'C:\Octopus\Applications\CSIS_DEV\ESG.CSIS.StartUp\38.2.19.0\ESG.CSIS.StartUp.exe' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
    At C:\Octopus\Applications\CSIS_DEV\ESG.CSIS.StartUp\38.2.19.0\deployment\clickOnceLib.ps1:32 char:24
    +     return (Get-Command <<<<  "$file").FileVersionInfo.Fileversion
    + CategoryInfo          : ObjectNotFound: (C:\Octopus\Appl...SIS.StartUp.exe:String) [Get-Command], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Commands.GetCommandCommand

这些消息的任何Insite以及为什么只有在章鱼中运行才会发生这种消息。

1 个答案:

答案 0 :(得分:0)

看起来您的脚本无法访问该文件,或者它不存在。检查以确保C:\Octopus\Applications\CSIS_DEV\ESG.CSIS.StartUp\38.2.19.0\ESG.CSIS.StartUp.exe存在且触手所在的用户可以访问(使用Windows有效权限)。

同时确保脚本运行时它就在那里,你还没有提到这是否是一个单独的步骤,PreDeploy.ps1,Deploy.ps1或PostDeploy.ps1脚本