2015-10-05 31 views
3

我打包了一些mongo脚本以及必要的二进制文件,通过Teamcity将它们运行到Nuget包中。现在我想用Octopus做的事情就是拉取该包,提取内容并在每次部署时运行一次脚本。我不希望或不需要将这些脚本部署到任何机器上,因为这些脚本并非针对机器特定的。我是通过PowerShell的想我可以在Octopus服务器上拉动但不能部署nuget包

  1. 下载包(可能是查询饲料特定版本)
  2. 提取它
  3. 运行脚本
  4. 清理

任何人都经历类似的问题?

回答

2

的解决方案是将八达通服务器上安装的触须,将其分配给所有的环境,给它沿octopus-server行独特的作用,然后配置脚本步骤使用为目标的octopus-server作用。然后,您可以在该脚本步骤中编写PowerShell,C#或Bash脚本,以调用并执行您存储在项目中的mongo脚本。那样的话,它只会在你的八达通服务器上运行。我最近做了类似的事情来运行MySQL脚本。

OctopusDeploy文档提供了一个很好的演练here以及他们为什么选择以这种方式处理它的解释。