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

如何获取所有分配了标签的Jenkins节点(包括主节点)的列表?

相云
2023-03-14
问题内容

我正在创建Jenkins管道作业,并且需要在所有带有特定标签的节点上运行作业。

因此,我试图获取分配有特定标签的节点名称的列表。(有了一个节点,我可以使用来获得标签getAssignedLabels()

中的nodes-list jenkins.model.Jenkins.instance.nodes似乎不包含我需要包含在搜索中的主节点。

我当前的解决方案是遍历-
jenkins.model.Jenkins.instance.computers并使用getNode()-method获取节点。这行得通,但是在Jenkins的javadoc中,我正在阅读此列表,可能不是最新的。

从长远来看,我将(动态地)添加云节点,恐怕届时我将无法使用computers

正确获取所有当前节点的列表是什么?

这就是我现在正在做的:

@NonCPS
def nodeNames(label) {
    def nodes = []
    jenkins.model.Jenkins.instance.computers.each { c ->
        if (c.node.labelString.contains(label)) {
            nodes.add(c.node.selfLabel.name)
        }
    }   
    return nodes
}

问题答案:

这就是我现在正在做的方式。我还没有发现其他东西:

@NonCPS
def hostNames(label) {
  def nodes = []
  jenkins.model.Jenkins.get.computers.each { c ->
    if (c.node.labelString.contains(label)) {
      nodes.add(c.node.selfLabel.name)
    }
  }
  return nodes
}

jenkins.model.Jenkins.get.computers 包含主节点和所有从节点。



 类似资料:
  • 我必须在JavaSelenium应用程序中解析此元素: 我想得到一个包含所有5个孩子的列表,包括文本。当我使用WebElement中的任何选择器(xpath、cssSelector)时,它只返回4个非文本元素。有人知道怎么做吗?我是硒的新手,以前从未使用过。谢谢

  • 问题内容: 有什么方法可以从jenkins API中提取节点标签?该标准: 似乎没有任何标签信息。在其他地方吗? 问题答案: 显然,节点标签是节点配置的一部分,因此它们存在于 这是我的技巧,可通过python jenkinsapi(类似于作业配置)从

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 我的mySQL数据库中有如下表: 对于谓词,它将具有如下树视图: 我想创建一个可以选择起始节点并为此获得所有父节点的表单。例如,通过选择我想要获得: 步骤2: 有什么方法可以使用以下简单文本来打印此节点: 问题答案: 您的数据可以在RDF中表

  • 我有一棵看起来像上面的树,由一个链接结构表示: 我的目标是找到从根节点到叶节点的所有路径。 我的树遍历算法如下所示: 当我运行它时,我确信树正在按图所示构建。我已经测试过了。然而,我无法找出我的树遍历分割错误的原因。 我得到的输出是: 我已经在高度较小的树上测试了它,它是有效的。但是出于某种原因,它不适用于高度大于2的树。我认为这是树出了问题,我检查并打印了每个父级、左子级和右子级,它们打印出来如

  • 问题内容: 在C#中,我发现了一种非常可爱的方法,该方法使您可以从指定控件中获取所有后代和所有THEIR后代。 我正在寻找JavaFX的类似方法。 我看到了我要使用的类,因为它是派生所有带有孩子的Node类的类。 到目前为止,这是我所拥有的(并且我还没有在Google上通过“ JavaFX从场景中获取所有节点”之类的搜索真正找到任何东西): 那么,如何确定N是否是父母(或从父母继承)呢?我说的对吗

  • 你们这些家伙,我有这样一个HTML: 这是将上述所有选项放入列表的代码: 实际上它不起作用。我不知道我错在哪里。请帮帮我。非常感谢。