2015-08-15 187 views
9

構建管道如何安排在夜間的某個特定時間執行,就像正常工作一樣?Jenkins構建管道調度觸發器

+1

待辦事項你的意思是來自構建管道插件的管道?如果是的話,它只是一個視圖,只是添加一個「定期生成」到您的管道中的第一份工作。猜猜第一份工作是否在「Poll SCM」上運行? – mszalbach

回答

-3

如果使用Build pipeline plugin你可以簡單地觸發添加到第一個工作,這將觸發全面管線

如果您正在使用詹金斯2.0和創造型管道的一個新項目,那麼你可以簡單地安排它就像你的任何其他工作

3

進入你的管道的主要工作配置(第一個),設置「定期生成」複選框,並指定你想要的時間表。

遵循語法指示。

the field follows the syntax of cron (with minor differences). Specifically, each line consists of 5 fields separated by TAB or whitespace: 
MINUTE HOUR DOM MONTH DOW 
MINUTE Minutes within the hour (0–59) 
HOUR The hour of the day (0–23) 
DOM The day of the month (1–31) 
MONTH The month (1–12) 
DOW The day of the week (0–7) where 0 and 7 are Sunday. 

To specify multiple values for one field, the following operators are available. In the order of precedence, 

    * specifies all valid values 
    M-N specifies a range of values 
    M-N/X or */X steps by intervals of X through the specified range or whole valid range 
    A,B,...,Z enumerates multiple values 

Examples: 

# every fifteen minutes (perhaps at :07, :22, :37, :52) 
H/15 * * * * 
# every ten minutes in the first half of every hour (three times, perhaps at :04, :14, :24) 
H(0-29)/10 * * * * 
# once every two hours every weekday (perhaps at 9:38 AM, 11:38 AM, 1:38 PM, 3:38 PM) 
H 9-16/2 * * 1-5 
# once a day on the 1st and 15th of every month except December 
H H 1,15 1-11 * 
+0

如果使用多分支管道,你會如何爲特定的分支做這些? –

11

您可以使用以下語法設置作業參數:

properties([pipelineTriggers([cron('H 23 * * *')])]) 

加入這行來構建腳本或Jenkinsfile將配置作業在晚上11點運行每一個夜晚。

+0

它在jenkins 2.79(java.lang.UnsupportedOperationException:未定義符號'pipelineTriggers')中的腳本管道中不起作用 – Eric

3

聲明管道具有triggers指令,一個使用它是這樣的:

triggers { cron('H 4/* 0 0 1-5') } 

我把它從Pipeline Syntax docs

+1

FYI:這將構建在其「Jenkinsfile」中包含此行的每個分支;也就是說,如果您在'master'或'develop'分支以及所有正在進行的功能分支中都有此功能,則它們都將按照此計劃進行觸發。 – dwj

+0

@dwj哪個在大多數情況下不是你想要的! – ferdy

相關問題