【问题标题】:Jenkins Octopus Integration詹金斯章鱼集成
【发布时间】:2016-08-24 05:42:32
【问题描述】:

我使用 Jenkins 作为 CI 工具并使用 Octopus 来部署我的 JAVA 应用程序。但是当上网时,我可以获得使用 Octopack 部署 .Net 应用程序的解决方案。但是如何打包我的 JAVA 应用程序并从我的 Jenkins 实例自动将其部署到 Octopus 服务器?

【问题讨论】:

  • 目前有没有写代码? stackoverflow.com/help/how-to-ask
  • 不需要代码。我们有一个 JAVA 应用程序已经存在于 GIT 中,从 GIT 中获取它,使用 Maven 构建它,现在我们需要将它部署到 Octopus 服务器。

标签: java jenkins deployment octopus-deploy


【解决方案1】:

您可以使用 NuGet 打包它(使用 nuget pack 命令,documented here)。这基本上就是 Octopack 所做的一切。创建一个.nuspec 文件,并在您的<files> 部分中,将您想要的文件包含在一个空目标中。例如,这将包括您包中的所有文件:

...
<files>
    <file src="path/to/output/**" target="" />
</files>
...

然后您可以使用nuget push 将其推送到您的 Octopus Deploy 系统。说明在您的 Octopus 部署包库页面上。

【讨论】:

  • 这是我们做的一个命令行活动。我正在寻找自动化。一旦在 Jenkins 中构建成功,就必须进行打包,并且这个包应该被推送到 Octopus 服务器。
  • 我不熟悉 Jenkins 是如何构建的……你能在构建后的步骤中运行这些命令吗?
【解决方案2】:

从 Octopus 3.3 开始,除了 NuGet,您还可以package in tar and zip

您可以将要部署代码的机器配置为deployment targetListening Tentacles 是最常用的。

配置部署目标后,在 Jenkins 服务器上设置 Octo.exe 并使用 Jenkins 作业中的脚本控制台使用 Octo.exe 自动将包部署到预期目标。

您还可以将代码写入 Jenkins 服务器上的脚本,然后直接从 Jenkins 作业中的控制台调用该脚本。我们在设置中这样做是因为 Octo.exe 使用我们宁愿对开发人员保密的 API-KEY。

注意:Octopus Deploy 目前也致力于原生 Java 支持。见this RFC

【讨论】:

    猜你喜欢
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多