2017-01-16 39 views
1

我已按照安装说明通过Docker容器设置本地无人机服务器和代理。无人机服务器能够对我的Github帐户进行身份验证,并列出我的所有回购,但我无法实际触发构建。无法触发在本地无人机中构建Java项目

我设置了一些不正确的东西吗?

.drone.yml配置文件:

build: 
    image: 3.3.9-jdk-7 
    pull: true 
    commands: 
    - mvn clean 
    - mvn install 
    - mvn deploy 

enter image description here

回答

1

是问题是,你不使用你已经安装了无人机的版本的正确语法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/

+0

谢谢!我最初遵循典型的例子,结果相同。我的问题更根本。我用来运行无人机服务器的Docker容器的机器位于路由器后面,不能公开访问。 – timmy

0

使用您当前的设置,在GitHub上,如果您导航到 - > settings-> webhooks,您将看到一些失败的GitHub webhook调用。当你的仓库发生推送事件时,GitHub会发送一个有效载荷(HTTP POST)给你的无人机服务器。由于您的无人机服务器在本地运行,因此GitHub无法知道如何联系您的无人机服务器。您需要将您的无人机服务器托管在可供GitHub访问的机器上。但您可以使用“无人机执行”来触发本地构建。 “exec”不使用webhooks。