觸發器
你可以設置一個定時器來觸發構建,或者輪詢代碼庫直到發生變更時才構建。
可以同時使用這兩種方法:
最常用的是輪詢Git庫,這樣每次提交都會觸發構建。
可以觸發比持續構建更久也更加徹底的每夜構建。由于這些構建發生在假定無人工作的夜晚,慢一點也關系不大。
一個上游的構建可以觸發一個下游的構建。
你還能讓一個任務里的成功構建觸發另一個任務。
任務鏈和構建流水線
能把任務串起來通常都是非常有用的。最簡單的方式是:當第一個任務成功完成時,會通過事件觸發第二個任務。幾個任務可以用這種方式在鏈中傳遞。這樣的一個構建鏈一般足以勝任大多數工作。有時構建步驟的可視化和細粒度控制任務鏈都是我們想要的。
Jenkins術語里,鏈上的第一個構建被稱為上游構建,第二個被稱為下游構建。
雖然這種鏈式構建的方式一般夠用,但還是有可能需要更好地控制構建鏈。這樣的構建鏈通常被稱為流水線或工作流。
有許多為Jenkins創建更好流水線的插件,它們的數量表明了確實有改進這方面的大量需求。
多任務插件和工作流插件是其中的兩個例子。
工作流插件更加先進,它有一個優勢是可以用Groovy DSL來描述而不是在web界面上改來改去。
工作流插件是CloudBees主推的,它現在是Jenkins最主要的貢獻者。