问题标签 [delivery-pipeline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
70230 浏览

jenkins - Jenkins 管道 - 如何遍历列表

我需要从管道中的文件中读取值。我正在使用split()将它们放入Array中。我需要将它们放入Arraylist中,因此我使用的是Arrays.asList()。我遇到的问题是我无法使用size()length()方法,所以我无法制作一个 for 循环,例如

或者

因为我收到错误:未分类字段 java.util.Arrays$ArrayList 长度

所以我尝试使用 for each 循环,但是当我在 finally 块中采取一些操作(例如 ls 命令)时,它只迭代 1 次。但是,如果我只是运行命令“echo”,它会像预期的那样对每个元素进行迭代。关于如何修改我的代码以使其在使用任何命令时迭代列表中的每个元素的任何建议?

工作正常....

输出(迭代每个元素):

但是,如果我采取一些行动,例如“ls -l”,它只会迭代 1 次

输出(仅迭代 1 次):

0 投票
2 回答
887 浏览

jenkins - Jenkins:在构建管道中手动触发 Maven 发布

我的 Jenkins (1.6) 设置有问题,到目前为止还没有找到解决方案。

我想做的事:

我有 4 个工作(StartJob、TestA、TestB、ReleaseJob),我想要一个“管道”,上面写着:

  • 从“StartJob”开始
  • 之后,并行构建“TestA”和“TestB”
  • 当“ TestA“TestB”都完成后,让我手动触发 ReleaseJob

到目前为止我尝试过的

我使用 Delivery Pipeline Plugin能够获得漂亮的管道视图并能够设置手动触发器,您可以在 Post-Build Actions 中简单地定义这些触发器。到目前为止,这工作得很好。

我的第一次尝试是使用Join Plugin,它根本不起作用。它总是一次触发最后一次构建——不管“TestA”和“TestB”是否真的成功。

对于我的第二次尝试,我使用了Multijob 插件并定义了 2 个阶段:第一个阶段仅包含“StartJob”,第二个包含“TestA”和“TestB”。之后,我将“ReleaseJob”定义为构建后操作中的手动触发器。这工作正常,但我不认为如果我触发“ReleaseJob”,它不会将它作为“Maven 发布”运行。

我的问题

  • 有没有办法强制将“Maven 发布”作业构建为“Maven 发布”?(即您不应该简单地使用“立即构建”功能)

  • 你对我如何以不同的方式解决这个问题有什么建议吗?

附加说明:

我还没有在 Jenkins 2 中使用过新的流水线系统——我只是为一个小测试设置了它。如果您不知道旧 Jenkins 的解决方案,但知道如何在 Jenkins 2 中将其设置为“编码管道”,我也会对此非常感兴趣。

非常感谢和欢呼,

/tehK

0 投票
2 回答
883 浏览

git - 如果 git 安装在 jenkins 代理上的路径与 master 上不同的路径中,我可以在交付管道中使用 git 命令吗

我有以下情况。

我尝试了一个简单的管道作业来克隆我的远程仓库。当我将它设置为在 master 上执行时它工作正常。

它使用默认的 git 安装来运行命令。我在 jenkins 配置中为 slave 配置了不同的 git。当我尝试在从属设备上运行相同的管道时,它会失败,因为它总是尝试使用默认的 git 安装。

错误很明显:

/jenkins-master-some-path/bin/git对主人是正确的。

对于正常的工作,我们可以选择一个安装,但有人可以告诉我是否有办法在从属设备上使用不同的 git 安装进行管道。

0 投票
1 回答
123 浏览

github - 部署 Liberty 打包服务器自动交付

我在一个 Websphere Liberty 应用程序中工作,由于特定的 server.xml 配置,我正在通过打包的服务器将其部署到 Bluemix。

我想在 GitHub 中处理代码,并使用 Toolchain / Delivery Pipeline 将其自动部署到 Bluemix。可能吗 ?

目前,我必须手动完成打包服务器并将其部署到 Bluemix 的任务。

在此先感谢您的帮助

0 投票
0 回答
40 浏览

ibm-cloud - 在不停机的情况下向 Bluemix PAAS 实例添加路由

我创建了一个 Bluemix 应用程序,并且我还配置了 Delivery 管道,它在主动部署的帮助下进行零停机时间部署,但是为了向实例添加更多路由,我需要使用 CF CLI 或 Bluemix控制台将使应用程序重新启动或重新启动。

我还尝试将路由添加到 manifest.yml 文件中,这没有帮助,因为 Delivery Pipeline 中基于 Active Deploy 的部署根本没有考虑添加到清单文件中的路由。

我想根据要求添加到应用程序的路由,而不会使应用程序停机。有什么建议或方法来处理这个吗?

0 投票
2 回答
92 浏览

ibm-cloud - 我可以将 VCAP_SERVICES 传递到 IBM Cloud Continuous Delivery 管道的测试阶段吗?

在(单元)测试阶段,我正在运行以下命令:

我的问题是我无法在测试阶段访问 VCAP_SERVICES(作业设置为单元测试)。

有没有办法访问/传递它们?

0 投票
1 回答
249 浏览

cloud-foundry - 使用 PHP buildpack 构建的 Cloud Foundry 应用程序 - 自定义扩展在部署后消失

我开发了一个需要一些额外组件的 CIO Blumix Cloud Foundry PHP 应用程序。

我使用https://github.com/cloudfoundry/php-buildpack进行构建。我在它的文档中读到我可以添加自己的扩展。我这样做并添加了一个 tar.tgz 并在 extension.py 中添加了如何安装它的说明。

目标位置是:/home/vcap/。我看到安装运行正常,并且在部署阶段看到了该文件夹(在 DevOps Pipelines 部署阶段日志和历史记录中)。

但是当部署通过并且我使用已部署的 php 页面读取该文件夹时,我发现它不存在。我在部署日志中阅读了“容器已成功销毁”消息。也许整个安装环境都被破坏了?部署文件结构中的哪个安全位置可以安装组件,以便在部署通过后它们仍然存在?

我正在使用def compile(install):来放置我的 unix 命令。示例:os.system('ls')列出安装文件夹的内容。他们工作正常。

提前谢谢!

0 投票
1 回答
356 浏览

deployment - 在哪里设置 API KEY 以部署在 IBM Bluemix Cloud Foundry 上

我正在通过 IBM Bluemix Cloud Foundry 上的 Delivery Pipeline 进行部署。在日志上我有这个消息:

警告:不推荐在不指定 API KEY 的情况下部署到 Cloud Foundry。按上面的 [CONFIGURE] 按钮以包含此作业的 API KEY。

什么是 API KEY,我必须在哪里设置它?

0 投票
1 回答
57 浏览

couchdb - CouchDB/Cloudant 设计文档的 DevOps

是否有任何工具/库可以与 devops 工具集成以管理 Couchdb/Cloudant 设计文档的部署?由于 Couchdb/Cloudant 提供 HTTP API 来为这些设计文档执行 CRUD 操作,从头开始设计/构建这样的工具/库并不是什么大不了的事,但最好还是建立在最高的肩膀上以使其更进一步.

0 投票
0 回答
346 浏览

jenkins - Jenkins交付管道视图-如何添加手动触发器(播放按钮)?

我正在尝试连接/实现以下目标:

  • 具有多个阶段任务的工作的管道
  • 使用交付视图插件配置上述管道
  • 最后阶段的最后一项任务是部署到生产环境[注意:希望此任务手动触发]

詹金斯版本:2.222.x

我尝试过的事情

下面是我正在寻找的所需配置。 所需的配置、交付管道插件 wiki

我可以通过使用上游和下游配置创建多个自由样式作业来实现手动触发,对于手动步骤,我可以使用手动触发设置后期构建作业。但这是我想要的东西,因为我们有任务(在舞台内我们也可以做单独的垂直任务)功能。

请帮助我并建议如何实现这一目标。