【问题标题】:Force All Jenkins Pipelines to Call Function?强制所有 Jenkins 管道调用函数?
【发布时间】:2021-07-26 20:51:21
【问题描述】:

我在一家定义了数百个 Jenkins 管道的公司工作。

我们有一组扫描,希望每个管道都运行(SonarQube、Checkmarx、Blackduck 等)。有没有办法可以编写一个在每个管道结束时自动调用的函数?我不想进入我们数百个 Jenkinsfile 中的每一个,并为每个文件添加一个 post 块......我正在寻找更像是一个在结束时自动触发的钩子的东西每个作业,而不需要更改所有作业的配置。

我浏览了 Jenkins 文档并查看了已经存在的插件列表,但没有看到任何看起来很有希望的插件。

到目前为止,我想出的唯一可能性是拥有一个每晚运行的管道,在我们的 git 中的每个 repo 上找到每个 Jenkinsfile,并使用 Jenkins Pipeline Unit 运行测试以验证所有预期的功能是如果他们遗漏了任何内容,请致电并发送电子邮件给维护人员。对于我认为相当普遍的需求,这听起来像是付出了很多努力?

【问题讨论】:

    标签: jenkins devsecops


    【解决方案1】:

    我不是 100% 确定,但 Freestyle Jenkins 作业可以设置为触发“在其他项目构建后构建”。 它甚至说“例如,这对于在构建完成后运行广泛的测试很方便。”

    我在一个 Maven 项目和一个 Pipeline 项目上检查了这个,它可以工作。 它似乎不适用于多分支管道项目(它无法识别它们)。

    这有点落后,但你可以在这个触发行中列出所有项目。

    还有这个插件 https://plugins.jenkins.io/join/

    【讨论】:

    • 我们的大多数项目都是多分支管道,所以听起来这对他们不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-04
    • 1970-01-01
    • 2019-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多