当前位置: 首页 > 面试题库 >

如何陆续执行参数化的工作(无参数)

武晨
2023-03-14
问题内容

我在詹金斯(Jenkins)有一份工作,有2个参数。我要运行另一个没有参数的计划,并从该计划中启动所需的现有计划多次。

新计划需要安排为每15分钟运行一次(将由Jenkins的Scheduler选项完成),该计划的代码将:

  • 连接到数据库
  • 获取所需的记录集
  • 开始循环记录集
    • 存储键/值对(现有作业的参数)
  • 结束循环

完成此操作后,我需要对存储的每个键/值对运行现有作业。我可以使用Jenkins(使用1.406)开箱即用吗,还是必须远程调用现有作业?使用“构建后操作”部分中的“构建其他项目”选项时,我看不到如何将参数从一个计划传递到另一个计划(计划的配置)

谢谢


问题答案:

有一个参数化触发器插件,一旦安装,便可以在一个构建完成后触发一个参数化构建。

完成所需操作的最简单方法是安装此插件,并使用要构建的键/值列表一次构建项目。如果由于某些原因您需要在第一个作业完成后多次执行构建,则可以使用远程API从第一个项目开始构建。因此,您有两种选择:

选项A

  • Project1执行,创建具有键/值对的文件
  • Project1完成,配置为使用参数执行Project2(使用Parameterized Trigger插件)
  • Project2遍历键/值对,为每个键/值对做任何事情

选项B

  • Project1执行。对于每个键/值对,它都会命中以下网址http://server/job/<Project2 Name>/buildWithParameters?PARAM1=Value1&PARAM2=Value2(您需要用实际的项目名称和参数名称/值代替)
  • Project2会采用这些参数并按需要正常使用的参数值进行构建


 类似资料:
  • 问题内容: 我问这个问题有点傻,因为我似乎是世界上唯一一个不了解这个问题的人,但是无论如何,这都是可行的。我将以Python为例。当我使用原始SQL查询(通常使用ORM)时,我会使用参数化,例如使用SQLite的以下示例: 方法A: 我知道这可行,我知道这是通常推荐的方式。SQL注入易受攻击的方式可以执行以下操作: 方法B: 到目前为止,我可以告诉我了解SQL注入,如本Wikipedia文章中所述

  • 问题内容: 我想在不同的机器上使用相同的作业。但是我不想每次都更改作业的配置。我可以通过机器名称标签作为参数并在另一台机器上运行作业吗?(不同时)。 我想在将作业运行到我在配置中编写的脚本(批处理脚本)时传递参数。我们能做到吗? 我可以从工作中获得返回值并在下一个工作中使用它吗? 问题答案: 是的,您可以使用NodeLabel Parameter Plugin传递节点标签参数。 是的,您可以按照描

  • 问题内容: 有人可以确切解释NumPy中的参数做什么吗? 我很困惑。 我正在尝试使用该功能 最初,我认为如果数组本身是3维,将返回三个元素,该元素由同一位置上所有嵌套项的总和组成。如果每个维度都包含五个维度,则我希望返回五个项目的结果,依此类推。 但是事实并非如此,文档也不能很好地帮助我(他们使用3x3x3数组,因此很难判断发生了什么) 这是我所做的: 显然,结果并不直观。 问题答案: 显然, 轴

  • 我有一个类似这样的pytest测试: 现在,作为重构的一部分,我移动了这一行: 放入它自己的夹具中(在conftest.py文件中),因为它在其他地方使用。但是,除了直接导入fixture函数外,是否有其他方法在测试中引用它?我知道funcargs通常是调用fixture的方式,但是在本文中,当我想要调用fixture时,我不在测试函数中。

  • 我正在为Akka应用程序搭建测试,我希望在其中向测试类注入一个actor: 我不愿介绍现阶段键入的Akka;为了简单起见,最好不要更改目标参与者,以便在启动后将其值参数作为消息接收,否则这是一个临时的解决方案。

  • 问题内容: 我在用Java执行需要参数的批处理文件时遇到困难。这些参数可能包含空格,因此我需要将它们用引号引起来。对于Linux,我还将需要做同样的事情,因为某些参数可能包含特殊字符,例如。 非功能性Windows程式码: 非功能性Linux程式码: 我知道我应该像下面的Windows示例一样添加参数,但这不适用于空格: 应该怎么做? 问题答案: 视窗: Unix: