如何从 VSTS 执行 Octo.exe?

Posted

技术标签:

【中文标题】如何从 VSTS 执行 Octo.exe?【英文标题】:How to execute Octo.exe from VSTS? 【发布时间】:2017-02-09 07:27:03 【问题描述】:

我希望从 VSTS 上的 powershell 脚本执行 Octo.exe。像这样

Octo.exe push --package $_.FullName --replace-existing --server https://deploy.mydomain.com --apiKey API-xxxxxxxx

但我不知道 Octo.exe 的正确路径,或者它是否存在于 VSTS 上?可以在那里安装吗?还是我必须将 octo.exe 添加到我的源代码并从那里调用它?

【问题讨论】:

【参考方案1】:

如果使用Hosted build agent,则不能调用 Octo.exe 命令,也无法在构建代理上安装它。

如果你可以在不安装的情况下调用 Octo.exe,你可以将 octo.exe 添加到源代码管理并映射到构建代理(Repository > Mappings),然后你可以通过 PowerShell 调用它。路径可以是$(build.sourcesdirectory)\Tool\octo.exe,根据你如何映射到源目录)

如果需要安装 Octo.exe,您需要设置 on premise build agent 并在该构建代理上安装 Octo。

另一方面,还有Octopus Deploy Integration的扩展,可以直接安装使用。

【讨论】:

我选择了 $(build.sourcesdirectory)\Tool\octo.exe 解决方案。【参考方案2】:

与其将源代码存储库与二进制文件混为一谈, 最简洁的方法是使用Octopus REST APIs 推送包。

example on how to push a package 由八达通公司自己提供。

【讨论】:

以上是关于如何从 VSTS 执行 Octo.exe?的主要内容,如果未能解决你的问题,请参考以下文章

将存储库从VSTS帐户克隆到不同的TFS帐户,并执行提取以进行更新

VSTS 执行 web 部署成功,但网站不工作

Fastlane 构建未在 VSTS CI 上执行

在VSTS CI Build中执行NPM命令时出错

VSTS 扩展任务认证窗口

如何为NuGet创建手动VSTS版本?