从脚本化的Jenkinsfile触发每小时构建 [英] Trigger hourly build from scripted Jenkinsfile

查看:517
本文介绍了从脚本化的Jenkinsfile触发每小时构建的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有一种使用Jenkinsfile 脚本化管道语法触发Jenkins作业每小时运行的方法?

Is there a way to trigger a Jenkins job to run every hour using the Jenkinsfile scripted pipeline syntax?

我看到了使用声明性语法的示例,但没有使用管道语法的示例.

I have seen examples using the declarative syntax, but none using the pipeline syntax.

声明性语法示例

pipeline {
    agent any

    triggers {
        cron '@daily'
    }

   ...
}

推荐答案

您可以将此代码段用于Scripted pipeline syntax:

You could use this snippet for Scripted pipeline syntax:

properties(
    [
        ...  , // other properties that you have
        pipelineTriggers([cron('0 * * * *')]),
    ]
)

属性的参考在这里.您可以搜索"pipelineTriggers"字符串,并发现生成触发器可能是例如人工制品或此列表中的其他内容(从链接的文档页面中提取了2019-03-23):

Reference for properties is here. You can search for "pipelineTriggers" string and find out that triggers for build can be for example artifactory or something else from this list (extracted 2019-03-23 from linked doc page):

$class: 'ArtifactoryTrigger'
$class: 'AssemblaBuildTrigger'
bitBucketTrigger
bitbucketPush
$class: 'BuildResultTrigger'
$class: 'CIBuildTrigger'
$class: 'CodingPushTrigger'
$class: 'CronFolderTrigger'
$class: 'DeployDbTrigger'
$class: 'DockerHubTrigger'
$class: 'DosTrigger'
$class: 'ElOyente'
$class: 'FanInReverseBuildTrigger'
$class: 'FeatureBranchAwareTrigger'
$class: 'FilesFoundTrigger'
$class: 'FogbugzStatePoller'
$class: 'FolderContentTrigger'
GenericTrigger
gerrit
$class: 'GhprbTrigger'
$class: 'GitBucketPushTrigger'
githubBranches
githubPullRequests
githubPush
gitee
$class: 'GogsTrigger'
issueCommentTrigger
$class: 'IvyTrigger'
$class: 'JiraChangelogTrigger'
$class: 'JiraCommentTrigger'
$class: 'KanboardQueryTrigger'
$class: 'MailCommandTrigger'
$class: 'MavenDependencyUpdateTrigger'
$class: 'NugetTrigger'
p4Trigger
$class: 'PeriodicFolderTrigger'
$class: 'PollMailboxTrigger'
$class: 'PullRequestBuildTrigger'
$class: 'QuayIoTrigger'
$class: 'RemoteBuildTrigger'
upstream
$class: 'RundeckTrigger'
<code>scm</code>
$class: 'SelfieTrigger'
$class: 'SpoonTrigger'
$class: 'SqsBuildTrigger'
$class: 'TeamPRPushTrigger'
$class: 'TeamPushTrigger'
cron
$class: 'URLTrigger'
snapshotDependencies
$class: 'io.relution.jenkins.awssqs.SQSTrigger'
$class: 'io.relution.jenkins.scmsqs.SQSTrigger'
$class: 'org.cloudbees.literate.jenkins.promotions.PromotionTrigger'
$class: 'org.jenkinsci.plugins.deploy.weblogic.trigger.DeploymentTrigger'
$class: 'org.jenkinsci.plugins.deployment.DeploymentTrigger'

有关脚本化方式的更多信息,请此处(来自另一个问题的示例). 此处.

More info about scripted way here (sample from another question). Documentation that covers declarative pipeline is here.

这篇关于从脚本化的Jenkinsfile触发每小时构建的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆