关于后端:jenkins设置任务超时⏱多种方法图文并茂🖼

在应用jenkins进行主动编译、构建时有些工作可能因为网络或其余起因始终阻塞,导致该我的项目不能再次执行编译构建。咱们心愿在某些工作执行工夫超过肯定值时将其终止。

办法一(一般)

jenkins的”build timeout plugin”插件能够帮咱们实现该工作。我应用的是jenkins-2.7.1, 默认就曾经装置了该插件,如果默认没有装置可在插件治理中搜寻进行装置。

办法二(Pipeline)

Jenkins Pipeline 提供了很多的步骤(step),这些步骤能够互相组合嵌套,不便地解决像反复执行步骤直到胜利(重试)和如果一个步骤执行破费的工夫太长则退出(超时)等问题。

pipeline {
    agent any
    stages {
        stage('Deploy') {
            steps {
                retry(3) {
                    sh './flakey-deploy.sh'
                }

                timeout(time: 3, unit: 'MINUTES') {
                    sh './health-check.sh'
                }
            }
        }
    }
}

“Deploy”阶段(stage)反复执行 flakey-deploy.sh 脚本3次,而后期待 health-check.sh 脚本最长执行3分钟。 如果 health-check.sh 脚本在 3 分钟内没有实现,Pipeline 将会标记在“Deploy”阶段失败。

内嵌类型

内嵌类型的步骤,例如 timeout 和 retry 能够蕴含其余的步骤,包含 timeout 和 retry 。

咱们也能够组合这些步骤。例如,如果咱们想要重试部署工作 5 次,然而总共破费的工夫不能超过 3 分钟。

pipeline {
    agent any
    stages {
        stage('Deploy') {
            steps {
                timeout(time: 3, unit: 'MINUTES') {
                    retry(5) {
                        sh './flakey-deploy.sh'
                    }
                }
            }
        }
    }
}

系列文章

jenkins的自动化配置
jenkins的tty问题
jenkins的反向代理配置
jenkins的java11问题
jenkins的私钥格局谬误问题
jenkins的webhooks配置
jenkins设置工作超时⏱(多种办法:图文并茂🖼)

参考

  • nginx配置禁特定门路下的反向代理
  • nginx配置禁止拜访目录或禁止拜访目录下的文件
  • nginx跨域解决
  • 带你深刻理解nginx根本登录认证(蕴含配置步骤)
  • 应用htpasswd生成明码
  • 应用openssl生成明码
  • 应用python生成明码
  • 你的nginx登录认证平安吗?
  • 配置http根本验证(Basic Auth)
  • Centos装置htpasswd_Nginx中应用htpasswd
  • 带你深刻理解nginx根本登录认证(蕴含所有配置步骤和深度解析)
  • 带你深刻理解nginx根本登录认证:应用htpasswd生成明码
  • 带你深刻理解nginx根本登录认证:应用openssl生成明码
  • 带你深刻理解nginx根本登录认证:应用python生成明码

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理