drone.io无法自动触发构建,如何实现推送与PR自动构建?
解决Drone.io自动构建不触发的问题
一、修正Pipeline触发规则配置
你的drone.yaml触发规则存在冗余匹配问题,建议调整为精准的分支与合并请求触发配置:
kind: pipeline type: docker name: default trigger: ref: - refs/heads/master - refs/heads/develop - refs/pull/*/head steps: - name: test image: golang commands: - cd src/chat - go get github.com/stretchr/gomniauth - go get github.com/stretchr/gomniauth/providers/facebook - go get github.com/stretchr/gomniauth/providers/github - go get github.com/stretchr/gomniauth/providers/google - go test - go build main.go auth.go client.go room.go
说明:
- 移除
refs/heads/**,避免匹配所有分支导致规则逻辑混乱,明确指定需要触发的master和develop分支 - 保留
refs/pull/*/head确保合并请求触发构建
二、检查GitHub Webhook配置
- 确认仓库Webhook已指向正确的Drone.io地址,且勾选触发事件包含推送事件和拉取请求事件
- 验证Webhook密钥与Drone.io仓库配置的密钥完全一致
- 查看Webhook交付记录,若存在失败请求,根据错误提示排查权限、网络连通性等问题
三、Drone.io仓库权限验证
- 确保Drone.io已获取仓库的完整权限(含Webhook管理、代码读取权限)
- 在Drone.io的仓库设置页面,确认「自动构建」选项处于开启状态
内容的提问来源于stack exchange,提问作者gate gate
相关产品推荐
相关产品推荐

