在 Octopus 中执行 Powershell

Powershell execution in Octopus

我有一个 powershell 文件测试。ps1 它有 3 个参数。我正在尝试从章鱼 step/task 中的脚本 call/execute 这个文件。

我可以这样做吗,如果可以的话如何实现。

我尝试了一些方法来实现这一点。

  1. 使用批处理文件(test.bat) powershell E:\somefolder\test.ps1 %1 %2 %3 在octopus的脚本任务中调用下面的执行这个E :\somefolder\test.bat p1 p2 p3

以上不工作,说 cmdlet 不识别命令。

  1. 使用 ps1 文件本身,即调用 E:\somefolder\test.ps1 p1 p2 p3 来调用章鱼中的脚本任务。

这给出了与上面相同的错误。

我稍微更改了代码以使用 param([string]$param1, [string]$param2, [string]$param3) 然后我得到参数找不到。

谁能帮我解决这个问题。

在 Octopus Deploy 中,您可以使用 "Run Script" 步骤来执行脚本。此步骤旨在在部署目标上执行 PowerShell,从而无需寻找启动脚本的方法。这也意味着该步骤成为部署过程的一部分,如果失败,您可以结束部署。

在下一版本的 Octopus Deploy (v3.3) you can have your PowerShell script in source control 中,或者您可以在步骤本身中编辑脚本。您可以在脚本中访问项目变量和八达通系统变量。

在以前的版本中,只有在步骤中编辑脚本的选项可用。

在 Ocotpus Deploy 中转到您的项目流程并...

  1. 点击"Add step"
  2. Select "Run a Script"
  3. 为其命名并输入 PowerShell 脚本
  4. 添加任何条件
  5. 点击"Save"