Jenkins Pipeline Triggers用于定义何时启动Pipeline。以下是一些Jenkins Pipeline Triggers的使用示例:
- 定时触发器
pipeline {
agent any
triggers {
cron('0 0 * * *')
}
stages {
stage('Build') {
steps {
echo "Building..."
}
}
}
}
这个示例定义了一个定时触发器,它将在每天的午夜(0 0 * * *
)触发Pipeline。在管道的stages
中,使用echo
步骤输出一条消息。
- SCM触发器
pipeline {
agent any
triggers {
scm('*/5 * * * *')
}
stages {
stage('Build') {
steps {
echo "Building..."
}
}
}
}
这个示例定义了一个SCM触发器,它将在每5分钟(*/5 * * * *
)检测源代码管理系统(例如Git)的变化。如果有新的提交,则会触发Pipeline。在管道的stages
中,使用echo
步骤输出一条消息。
- 多种触发器
pipeline {
agent any
triggers {
cron('0 0 * * *')
pollSCM('H/5 * * * *')
}
stages {
stage('Build') {
steps {
echo "Building..."
}
}
}
}
这个示例定义了两个触发器:定时触发器和SCM触发器。它们将在每天的午夜和每5分钟(H/5 * * * *
)分别触发Pipeline。在管道的stages
中,使用echo
步骤输出一条消息。
- 外部触发器
pipeline {
agent any
triggers {
upstream('My-Other-Job', 'SUCCESS')
}
stages {
stage('Build') {
steps {
echo "Building..."
}
}
}
}
这个示例定义了一个外部触发器,它将在另一个名为My-Other-Job
的Jenkins Job成功完成后触发Pipeline。在管道的stages
中,使用echo
步骤输出一条消息。
这些示例展示了如何在Jenkins Pipeline中使用触发器来定义何时启动Pipeline。Jenkins Pipeline提供了多种触发器类型和使用方式,可以根据具体需要进行定制。