gpt4 book ai didi

cloudbees - 如何通过 CloudBees Jenkins "Deploy Now"功能部署非 Web Java 应用程序?

转载 作者:行者123 更新时间:2023-12-02 00:15:27 28 4
gpt4 key购买 nike

CloudBees 现在支持部署 Java 应用程序,是否可以使用 Jenkins 中的构建后操作“部署到 CloudBees”来部署您的应用程序?此外,我想使用 Maven assembly plugin's jar-with-dependencies目标,以便我可以直接通过 Jenkins 简单自动地将我的整个应用程序部署到 CloudBees。

最佳答案

虽然当前的 CloudBees 部署程序 Jenkins 插件似乎不支持此功能,但实际上它支持。以下是经过多次试验和错误后对我有用的步骤:

  1. 在您的 pom.xml 中包含 jar-with-dependencies maven 插件。我用了 <goal>single</goal><descriptorRef>jar-with-dependencies</descriptorRef>描述 here .这将在您的目标文件夹中放置一个额外的 jar 文件 {artifactId}-{version}-jar-with-dependencies.jar
  2. 通过 CloudBees API 部署该 jar .本页的最后一行解释了如何做到这一点。指定您的可运行 jar,确保 runtimeContainer=java,以及要上传的 jar 文件,它应该部署。尽管 CloudBees 说要使用 zip 文件,但 jar 文件也能正常工作。
  3. 通过命令行部署一次后,您的应用程序 ID 现在会“记住”这些设置,因此只要您将 CloudBees 部署到同一个应用程序,就可以通过 Jenkins 完成。在您的 Jenkins 作业中,将“部署到 CloudBees”构建后操作添加到您的配置中。单击“添加 Web 应用程序”(很奇怪,我知道,因为它不是 Web 应用程序!CloudBees 说他们会努力改变它...),选择 First Match(即使它是 Maven 项目,也使用 First Match),输入您在第 2 步中将应用程序部署到的应用程序 ID,然后输入您的 jar 文件的全名并再次尝试构建。它应该上传您的 jar 文件并激活 CloudBees PaaS 中的实例。请注意,这仍然对 jar 文件中的版本进行硬编码 - 我正在研究如何为 jar 文件的版本设置一个变量,使其与 Maven 构建版本相对应。

关于cloudbees - 如何通过 CloudBees Jenkins "Deploy Now"功能部署非 Web Java 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13400163/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com