我按照安装说明通过 Docker 容器设置了本地无人机服务器和代理。Drone 服务器能够对我的 Github 帐户进行身份验证并列出我的所有存储库,但是我无法真正触发构建。
我是否设置错误?
.drone.yml 配置文件:
build:
image: 3.3.9-jdk-7
pull: true
commands:
- mvn clean
- mvn install
- mvn deploy
是的,问题是您没有为已安装的 Drone 版本使用正确的 yaml 语法。我可以从屏幕截图中看到您正在运行无人机 0.5 或更高版本,但您使用的是 0.4 yaml 语法。
而不是这个:
build:
image: 3.3.9-jdk-7
pull: true
commands:
- mvn clean
- mvn install
- mvn deploy
应该是这样的:
pipeline:
build:
image: 3.3.9-jdk-7
pull: true
commands:
- mvn clean
- mvn install
- mvn deploy
这是官方文档的链接,其中包含规范的使用说明和 yaml 规范。 http://readme.drone.io/usage/getting-started/
使用您当前的设置,如果您在 GitHub 上导航到 ->settings->webhook,您将看到一些失败的 GitHub webhook 调用。当您的存储库上发生推送事件时,GitHub 会向您的无人机服务器发送有效负载(HTTP POST)。由于您的无人机服务器在本地运行,因此 GitHub 无法知道如何联系您的无人机服务器。您需要在 GitHub 可以访问的机器上托管您的无人机服务器。但是您可以使用“drone exec”来触发本地构建。“exec”不使用 webhook。