gpt4 book ai didi

jenkins - 使用 init.groovy.d 脚本中的管道初始化 Jenkins 2.0

转载 作者:行者123 更新时间:2023-12-02 12:17:46 26 4
gpt4 key购买 nike

对于自动化,我想使用管道作业初始化 Jenkins 2.0 实例。我想创建一个 Groovy 脚本,在启动时将其复制到 /usr/share/jenkins/ref/init.groovy.d/ 文件夹。该脚本应创建一个 Jenkins 2.0 Pipeline 作业来处理来自 SCM 的 Jenkinsfile。

我找不到 2.0 管道类的相关 Javadoc 或如何执行此操作的示例。

以前,使用 Job DSL 创建管道时,我使用 Groovy 脚本通过 ExecuteDslScripts 构建器创建 FreeStyleProject。该作业将成为 Job DSL 种子作业。

一种选择是使用 init 脚本创建 Job DSL 种子作业来创建 Jenkins 2.0 管道。它看起来似乎不必要地复杂。

我正在这个存储库中进行实验:https://github.com/martinmosegaard/vigilant-sniffle

最佳答案

使用 Job DSL 1.47( merged May 10, 2016released ),您可以直接从初始化脚本使用 Job DSL API,而无需创建种子作业。

import javaposse.jobdsl.dsl.DslScriptLoader
import javaposse.jobdsl.plugin.JenkinsJobManagement

def jobDslScript = new File('jobs.groovy')
def workspace = new File('.')

def jobManagement = new JenkinsJobManagement(System.out, [:], workspace)

new DslScriptLoader(jobManagement).runScript(jobDslScript.text)

参见PR #837了解详情。

关于jenkins - 使用 init.groovy.d 脚本中的管道初始化 Jenkins 2.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37157188/

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