0

我正在尝试使用 bitbucket 服务器进行无人机 0.5,它似乎已连接,因为我可以看到我的存储库。但它一直说它还没有任何构建。我将drone.yml 添加到我的仓库中,但什么都没有……我错过了什么吗

4

1 回答 1

1

我注意到你说你:

我将drone.yml 添加到我的仓库中

但是这将是有问题的,因为您必须添加:

.drone.yml

请注意,正确的文件有一个“。” 在它面前。

此外,您应该尝试手动输入授权 url 以让无人机访问您的 bitbucket 帐户(如果没有设置某种 scm,ps 无人机将无法工作)授权 url 的示例是:

https://my.exampleurl.com/authorize

这些类似于您可以在此处找到的相同说明:http ://readme.drone.io/admin/installation-guide/


我经常看到人们发布这样的链接,然后有人会要求他们将链接的内容复制到实际的响应中,所以我将在这里这样做(你知道以防万一链接飞走):

Drone 在临时 Docker 映像中以单个二进制文件的形式分发。Docker 是唯一的依赖项。本指南演示了如何使用 docker-compose 安装 Drone。

与 GitHub 集成的示例 Docker 撰写文件:

    version: '2'

    services:
      drone-server:
        image: drone/drone:0.5
        ports: [ 80:8000 ]
        volumes: [ ./drone:/var/lib/drone/ ]
        restart: always
        environment:
          - DRONE_OPEN=true
          - DRONE_GITHUB=true
          - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
          - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
          - DRONE_SECRET=${DRONE_SECRET}

      drone-agent:
        image: drone/drone:0.5
        command: agent
        restart: always
        depends_on: [ drone-server ]
        volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
        environment:
          - DRONE_SERVER=ws://drone-server:8000/ws/broker
          - DRONE_SECRET=${DRONE_SECRET}

Drone 与多个版本控制提供程序集成,使用环境变量进行配置。此示例演示了基本的 GitHub 集成。

您需要在 GitHub 上注册 Drone 以获得 oauth2 客户端和密码。授权回调 url 应该匹配 :///authorize

    services:
      drone-server:
        image: drone/drone:0.5
        ports: [ 80:8000 ]
        volumes: [ ./drone:/var/lib/drone/ ]
        restart: always
        environment:
          - DRONE_OPEN=true
    +     - DRONE_GITHUB=true
    +     - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
    +     - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
          - DRONE_SECRET=${DRONE_SECRET}

Drone 在主机上挂载一个卷来持久化 sqlite 数据库。使用备用数据库引擎时不需要这样做。

    services:
      drone-server:
        image: drone/drone:0.5
        ports: [ 80:8000 ]
    +   volumes: [ ./drone:/var/lib/drone/ ]
        restart: always

Drone 代理需要访问主机 Docker 守护程序。

    services:
      drone-agent:
        image: drone/drone:0.5
        command: agent
        restart: always
        depends_on: [ drone-server ]
    +   volumes: [ /var/run/docker.sock:/var/run/docker.sock ]

无人机代理需要服务器地址来进行代理到服务器的通信。启用 TLS 后,您的服务器 URL 应使用 wss:// 协议

    services:
      drone-agent:
        image: drone/drone:0.5
        command: agent
        restart: always
        depends_on: [ drone-server ]
        volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
        environment:
    +     DRONE_SERVER=ws://drone-server:8000/ws/broker
          DRONE_SECRET=${DRONE_SECRET}

无人机服务器和代理使用共享密钥来验证通信。这应该是您选择的随机字符串,并且应该保密。

    services:
      drone-server:
        image: drone/drone:0.5
        ports: [ 80:8000 ]
        volumes: [ ./drone:/var/lib/drone/ ]
        restart: always
        environment:
          - DRONE_OPEN=true
          - DRONE_GITHUB=true
          - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
          - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
    +     - DRONE_SECRET=${DRONE_SECRET}

      drone-agent:
        image: drone/drone:0.5
        command: agent
        restart: always
        depends_on: [ drone-server ]
        volumes: [ /var/run/docker.sock:/var/run/docker.sock ]
        environment:
          DRONE_SERVER=ws://drone-server:8000/ws/broker
    +     DRONE_SECRET=${DRONE_SECRET}

无人机注册默认关闭。此示例为已批准的 GitHub 组织成员的用户启用开放注册。

    services:
      drone-server:
        image: drone/drone:0.5
        ports: [ 80:8000 ]
        volumes: [ ./drone:/var/lib/drone/ ]
        restart: always
        environment:
    +     - DRONE_OPEN=true
    +     - DRONE_ORGS=dolores,dogpatch
          - DRONE_GITHUB=true
          - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
          - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
          - DRONE_SECRET=${DRONE_SECRET}
于 2017-01-03T13:54:49.590 回答