# 【Jenkins】如何執行排程作業

- [How to Schedule a Jenkins Job to Run Every Hour](https://www.youtube.com/watch?v=JhvVJtYFUm0)
- [Jenkins排程作業](https://jenkins.xfoss.com/pipeline/running.html)

1. Jenkins 作業可以手動執行，可以由某個Web 鉤子觸發，也可以定時運行；
2. 定時執行Jenkins 作業，是經由「宣告式指令產生器」 中的「triggers: Triggers」 指令，「cron: Build periodically」完成的；
3. 這裡的`cron`與\*nix 中`cron`有略微差異，包括了`H`及`@midnight`等語法，其中`H`指`hash`，可避免在某個時刻過多的作業（作業競爭），`@midnight`這樣的寫法也可以避免作業競爭；
4. `TZ=TZ=Asia/Taipei`這種寫法可以給Jenkins`cron`加入時區；
5. 將聲明式指令產生器產生的程式碼片段：

```Fortran
pipeline {
    agent any
	environment {
        TZ = "Asia/Taipei"
    }
    triggers {
        cron '* * * * *'
    }
    stages {
      stage('demo') {
        steps {
        // do....
        }
      }
    }
}
```