Jenkins默认中自带支持的触发器包括定时构建、轮询SCM、触发远程构建 (例如,使用脚本)、其他工程构建后触发、GitHub hook trigger for GITScm polling
也支持安装特定插件,也提供了一些触发器常见的如:Gitlab、Generic Webhook Trigger
##本次使用的就是gitlab和generic Webhook触发器的使用##
SCM 轮询(Poll SCM)—— 定期检查 Git 是否有更新
适用于:你无法配置 Webhook,只能让 Jenkins 主动轮询
配置:进入 Job → Configure → 找到 Build Triggers → 勾选 Poll SCM 在 Schedule 中填写 cron 表达式,例如: H/5 * * * * # 每5分钟检查一次定时构建(Build periodically)—— 类似 cron,不管代码是否变化,定期执行
配置:Build Triggers → Build periodically 0 2 * * * # 每天凌晨 2 点构建 H H(0-2) * * * # 凌晨 0-2 点之间随机时间构建(避免集中)远程触发(Trigger builds remotely)—— 通过 HTTP 请求触发构建(可用于 Harbor 镜像推送后回调)
配置:Job → Configure → Build Triggers → 勾选 Trigger builds remotely (e.g., from scripts) → 设置 Authentication Token(如 my-secret-token) 触发方式: curl http://jenkins.example.com/job/test-docker-image/build?token=my-secret-token 🔐 安全建议: 使用 token 防止未授权触发 配合 Jenkins 用户权限控制 生产环境建议加 HTTPS + IP 白名单 💡 可用于:Harbor 推送镜像后调用此接口自动部署(需写中间服务)💡 常用的Gitlab和GenericWebhook实现自动触发构建任务