使用声明式 Jenkinsfile 在多分支管道上运行夜间作业

2024-04-04

詹金斯版本 2.121.2

我设置了多分支管道。我正在使用声明性 Jenkinsfile。

我有一组需要很长时间才能运行的测试。我希望这些能够在夜间为任何发生变化的分支运行。

我尝试了一些事情,但我目前失败的尝试是:

  • 在作业 > 配置下,我启用了“抑制自动 SCM 触发”

  • 将“扫描多分支管道触发器”>“如果不以其他方式运行则定期运行”设置为 1 分钟(仅用于测试,我会在运行时增加此值)

在我的 Jenkinsfile(凌晨 4 点运行的示例)中,我也尝试过pollSCM():

triggers {
    cron('0 4 * * *')
}

在“扫描多分支管道日志”中,我看到以下内容,但凌晨 4 点没有作业运行(时间为trigger()在我的 Jenkinsfile 中):

Changes detected: my-feature-branch (1234567890abcdefgh → abcdefgh123456789)
Did not schedule build for branch: my-feature-branch

请问我做错了什么?


Edit:

所以我尝试了这个设置:

将 cron 设置为每 15 分钟一次

triggers {
  cron('5,20,35,50 * * * *')
}

删除了 UI 中配置下的设置“抑制自动 SCM 触发”

但它只是在轮询发生的那一刻开始运行(在本测试中是整点过 16 分钟)。

我什么都不做似乎要注意我的 cron 设置?

如果我在 UI 中的分支作业下进入“查看配置”,它会显示我的 Jenkinsfile 中的 UI 设置。


编辑(再次!):

因此,在最后一次编辑中,它实际上立即运行,然后在 cron 时间再次运行。

现在在 UI 中再次启用设置“抑制自动 SCM 触发”。

我已经成功了!我意识到的主要问题(a)更改未应用,我认为直到第一次运行后才应用 Jenkinsfile 中的更改? (b) 我还安装了下一个执行插件,这样我就可以更好地了解它的计划。


这里的问题是 multibranchPipelineJob 中声明的触发器用于扫描多分支。要定期运行作业,请在管道中声明触发器,如下所示:

pipeline {
    triggers {
        cron('45 6 * * 1-5')
    }
    agent {
    ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用声明式 Jenkinsfile 在多分支管道上运行夜间作业 的相关文章

  • 错误:获取远程存储库“origin”时出错,返回状态代码-1:

    我在 Windows 上运行 Jenkins 当我尝试通过 jenkins 构建我的项目时 出现以下错误 git exe c core askpass true fetch tags progress
  • 使用与后期步骤中的 Shell 脚本中的克隆相同的 http git 凭据

    我想要自动化我们的发布过程 并且我有一个 Maven 项目的以下 Jenkins 构建作业 使用配置的 Jenkins 凭证 用户名 密码 克隆 Git 存储库 执行一些 Maven 命令以进行构建 配置一个后步骤来执行一些额外的 Git
  • BitBucket+Jenkins:仅在特定分支更改时触发构建

    以下是该问题的据称解决方案 尽管它看起来确实是一种解决方法 而不是最终的解决方案 有没有一种方法 通过作业配置或 bitbucket 挂钩配置 我可以将作业设置为仅在推送到特定分支时运行构建 是否可以仅从一个特定分支触发 Jenkins h
  • 使用 jenkins.Creating .apk 文件生成 android 版本

    我正在使用 Jenkins 在 mac 上持续集成 android 应用程序 但是我无法使用 Jenkins 生成 apk 文件 就像我们在 iOS 应用程序中创建 ipa 一样 创建用于在 mac 上分发的 apk 文件的配置是什么 您可
  • 如何删除 TFS 工作区映射?

    我在一个团队项目中的 tfs 中有一个项目 然后我们将该项目移动到另一个团队项目中的不同位置 我已将 Jenkins 配置为连接到团队项目并构建我的解决方案 但是当我更改设置以连接到新的 tfs 团队项目时 出现以下错误 workspace
  • 使用 Ruby 验证 Jenkins 插件表单

    我正在用 Ruby 开发一个 Jenkins 插件 您应该能够配置连接到服务器的每个节点 以便在该节点失去与主服务器的连接时将电子邮件发送到指定的地址 EmailNodeProperty添加一个字段来输入电子邮件地址 Save an ema
  • 在 Cloudbees Jenkins 文件夹中设置环境变量

    在我重新安装 Jenkins 和 Cloudbees Free Enterprise 插件后 Jenkins 文件夹中设置的环境变量停止工作并从配置 UI 中消失 但是 它仍然存在于文件系统上的 config xml 中 如下所示
  • macOS 更新后 Jenkins 用户消失

    我在 Mac 上运行 Jenkins 作为 CI 服务器 使用用户 jenkins 的典型设置 它在 macOS 10 12 上运行良好 今天我将 macOS 升级到 10 13 High Sierra 升级过程完成后 Jenkins 无法
  • Docker:PermissionError:[Errno 13]权限被拒绝[重复]

    这个问题在这里已经有答案了 我在运行 docker compose 时得到了这个 Got permission denied while trying to connect to the Docker daemon socket at un
  • 如何从 Jenkins 管道中的函数返回“allOf”的值

    我们有一个 Jenkins 管道设置 使用 Jenkinsfile 来定义不同构建需要做什么 在我们的很多阶段 当我们要发布版本时 我们需要完成一些工作 但如果不打算发布版本 则可以跳过这些工作 目前我们有这样的代码 when allOf
  • 如何在 Jenkins 中安排构建?

    如何安排 Jenkins 构建 使其只能在每天的特定时间进行构建 例如下午 4 点开始 0 16 1 7 我理解为 每个月周一到周日下午 0 分钟 下午 4 点 但是它每分钟都会构建 如果有任何建议 我将不胜感激 谢谢 Update 请阅读
  • Jenkins Pipeline:在构建日志控制台中启用时间戳

    如何显示多分支管道项目的每一行的构建时间戳 它是受支持的功能吗 如果是 是否需要在Jenkinsfile或者有 GUI 选项吗 向声明性管道添加选项 pipeline agent any options timestamps stages
  • 使用 Jenkins API 促进构建

    给定一个具有不同升级作业的 Jenkins 构建作业 即 将构建升级到不同的环境 如何使用 Jenkins API 触发特定构建的特定升级作业 综合不同来源的答案得出 Username Username APItoken 12345 Cre
  • Jenkins Pipeline - java.lang.NoSuchMethodError:在步骤中找不到这样的 DSL 方法“锁定”

    我正在使用脚本化管道语法使用 Jenkins 版本 2 107 1 创建 Jenkins 管道 但收到以下错误 java lang NoSuchMethodError 在步骤中找不到这样的 DSL 方法 锁定 at org jenkinsc
  • 让 gradle 执行 JUnit 测试(Android 应用程序、Android Studio)

    我目前正在开发一个 Android 应用程序 最近从 Eclipse 切换到 Android Studio 不是我的想法 不过 我想配置 jenkins 服务器来定期运行 JUnit 测试和其他测试 为了实现这一点 我尝试配置一个 grad
  • 如何使用自定义 JDK 构建 Jenkins 项目?

    我有一个常规的 Jenkins 实例 运行一些多分支管道 该实例在 JDK 11 上运行 因为 Jenkins 并不真正支持更高版本 没关系 但不好的是 我的所有管道似乎也都受到 Java 11 的限制 Jenkins 仅使用它自己也使用的
  • Jenkins:尽管没有变化,SCM 仍然触发持续构建

    我们遇到一个问题 尽管没有代码更改 SCM 仍在触发构建 SCM 每 15 分钟轮询一次更改 并且仅在发现更改时才触发构建 以下是连续 SCM 轮询日志的几个示例 Started on Nov 15 2013 11 47 14 AM Usi
  • Jenkins 和 Github 不使用 SSH 密钥

    我已将 Jenkins 设置为从 Github 上的私有存储库中提取特定作业 尽管我已经生成了私钥 公钥并将其作为部署密钥添加到 github 但 Jenkins 似乎并未使用 SSH 密钥 当我从 Jenkins 用户进行 git clo
  • Jenkins 可以检测到任何 svn 用户每次提交代码吗?

    Jenkins 可以检测到任何 svn 用户每次提交代码吗 我想知道每次 Jenkins 提交 svn user 时 有什么方法或 jenkins 插件吗 现在我用svn updateJenkins 中的 cmd 来更新 svn 您可以按照
  • Maven 构建在 Jenkins 上失败,但可以在本地计算机上运行

    我有一个全新安装的 Debian Wheezy 服务器 运行 Jenkins 1 596 最新版本 安装自官方deb包 http pkg jenkins ci org debian 为了与詹金斯一起玩 我创建了一个新的Maven项目使用 G

随机推荐

  • 爱国者导弹浮动指向误差

    从计算机系统 程序员的角度http csapp cs cmu edu http csapp cs cmu edu 练习题2 51 我们在问题 2 46 中看到 爱国者导弹软件近似为 0 1 因为 x 0 000110011001100110
  • Azure 相同的 FTP URL 适用于共享相同应用程序服务计划的所有 Azure 网站

    我为单一应用程序服务计划创建了几个 Web 应用程序 对于所有这些应用程序 我看到一个 FTP URL 问题是 当我转到 URL 时 我可以看到一个 Site wwwroot 文件夹 其中仅显示一个应用程序 不是可以访问其他Web应用程序的
  • 在 Python 或 MATLAB 中从等值线图的像素中提取数据

    我有一个这样的等高线图 Now 如果我没有生成等值线图的数据 而我拥有的只是图像 如何从图像中提取每个像素的值并将其存储在数组中 MATLAB Python 中的任何建议或示例都会有帮助 如果您知道像素值 请使用find 您可以找到您想要的
  • 文本修饰:外观和计算值之间的明显差异

    我在处理与以下内容相关的代码时注意到了这一点 奇怪 a div 周围的链接 div 内的样式 https stackoverflow com questions 13595357 alink around div styling insid
  • EC2 Ubuntu 14 默认密码

    我有一个EC2实例运行Ubuntu 14我经常使用它连接SSH 现在我尝试使用 Windows 中的远程桌面连接到此实例 如图所示here https askubuntu com questions 592537 can i access
  • ggplot2交错轴标签

    我正在制作一个ggplot x 轴是因子 标签很长 我无法缩短标签 它们已经尽可能短了 我有兴趣使标签垂直偏移 我的偏好是让每个奇数标签的高度为 0 每个偶数标签的高度距离 x 轴更远 2 个单位 我看过这里 ggplot 希望帮助 htt
  • Rails 4.0 安装错误 -require: 无法加载此类文件 -- active_support (LoadError)

    我安装了新的 Ruby 2 0 和 Rails 4 0 当我执行 Rails new test app 时 我得到以下信息 有人遇到这个吗 devuser devbox rails 新 test app usr local lib ruby
  • 将二进制字符串转换为字节

    我有一个由 0 255 字节值组成的字符串 我需要将其转换为字节数组 我不想将范围 128 255 转换为 utf 8 事实上 该字符串已经以 utf 8 编码 我到底该如何解决令人沮丧的 不在 0 128 范围内 错误 gt gt gt
  • 如何在 Swift 中生成随机 unicode 字符?

    我当前尝试创建随机 unicode 字符生成失败 并出现错误 例如我的其他问题中提到的错误here https stackoverflow com questions 32158381 fatal error high and low su
  • 从 std::string 解析整数,但如果是浮点则失败

    在 C 和 C 中 有多种方法可以将字符串转换为整数 但我还没有找到解析浮点数时失败的转换方法 const float fnum std stof 1 5 std cout lt lt fnum lt lt std endl prints
  • 如何按顺序调用多个异步 javascript 函数?

    我试图按顺序调用以下函数 但它们不一定以正确的顺序返回 然后我了解了可以使用 回调 顺序调用的异步函数 如何使用回调使这些函数按顺序执行 getJSON http localhost search data php title title
  • WPF 进度栏未显示正确的进度

    我有一个应用程序 我正在其中分块上传文件 我的前端是WPF 我有一个进度条来显示文件上传进度 上传是由单独的线程完成的 进度条采用单独的形式 在上传开始时由子线程调用 我找到了文件中的块总数来设置进度条的最大属性 现在 对于上传的每个块 我
  • 在 HttpConfiguration 实例中的 ASP.NET Web API 应用程序中处理 json 漂亮的打印参数

    我需要在 ASP NET Web API 应用程序中添加和处理可选的 pretty 参数 当用户发送 pretty true 时 应用程序响应应该看起来像带有缩进的人类可读的 json 当用户发送 pretty false 或者根本不发送该
  • 使用环境变量调用python中的子进程

    我正在尝试编写一个 python 脚本来使用 Plex 媒体扫描仪自动扫描 plex 的一部分 为此 我必须以运行 plex 的用户身份运行扫描仪 在本例中为 plex 并为其提供环境变量 LD LIBRARY PATH 我尝试过使用 su
  • 参数化查询.....需要参数“@units”,但未提供该参数

    我收到这个异常 参数化查询 Name nvarchar 8 type nvarchar 8 units nvarchar 4000 rang 需要参数 units 但未提供该参数 我的插入代码是 public int insertType
  • Spring上下文动态变化

    我已经阅读了动态 bean 定义的更改 我在一个简单的代码示例中尝试了它 参见下面的代码 我发现它在我不想停止服务器但添加 更改 bean 定义的情况下非常有吸引力 问题 这样做安全吗 参见下面的代码 你必须定义safe The Abstr
  • 如何使用bind_param php mysqli选择行?

    通常我使用此代码来回显页面行 做工很好啊 query SELECT FROM table WHERE id id result mysqli query db mysqli query row mysqli fetch assoc resu
  • 使用 Qt 打开 SOCAT 创建的虚拟串口

    我正在 MacOS 上开发 Qt5 应用程序 我想测试我的应用程序串行端口通信 我想用socat http www dest unreach org socat 但我无法打开使用 socat 创建的端口 QSerialPortInfo av
  • 使用 psycopg2 在 python 中管道 postgres COPY

    我正在编写一个脚本 使用 psycopg2 在同一网络上的两台机器之间复制一些数据 我正在替换一些旧的 丑陋的 bash 来进行复制 psql c h remote host COPY table TO STDOUT psql c COPY
  • 使用声明式 Jenkinsfile 在多分支管道上运行夜间作业

    詹金斯版本 2 121 2 我设置了多分支管道 我正在使用声明性 Jenkinsfile 我有一组需要很长时间才能运行的测试 我希望这些能够在夜间为任何发生变化的分支运行 我尝试了一些事情 但我目前失败的尝试是 在作业 gt 配置下 我启用