【问题标题】:Drone 0.8: build stuck in pending stateDrone 0.8:构建卡在挂起状态
【发布时间】:2018-02-18 23:44:06
【问题描述】:

使用以下Docker Compose 文件在虚拟机上安装 Drone 0.8:

version: '2'

services:
  drone-server:
    image: drone/drone:0.8
    ports:
      - 8080:8000
      - 9000:9000
    volumes:
      - /var/lib/drone:/var/lib/drone/
    restart: always
    environment:
      - DATABASE_DRIVER=sqlite3
      - DATABASE_CONFIG=/var/lib/drone/drone.sqlite
      - DRONE_OPEN=true
      - DRONE_ORGS=my-github-org
      - DRONE_ADMIN=my-github-user
      - DRONE_HOST=${DRONE_HOST}
      - DRONE_GITHUB=true
      - DRONE_GITHUB_CLIENT=${DRONE_GITHUB_CLIENT}
      - DRONE_GITHUB_SECRET=${DRONE_GITHUB_SECRET}
      - DRONE_SECRET=${DRONE_SECRET}
      - GIN_MODE=release

  drone-agent:
    image: drone/agent:0.8
    restart: always
    depends_on: [ drone-server ]
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - DRONE_SERVER=drone-server:9000
      - DRONE_SECRET=${DRONE_SECRET}

所有变量值都存储在.env 文件中,并正确传递给正在运行的容器。尝试使用私有 Github 存储库运行构建。首次推送到存储库时,构建开始并失败并出现以下错误(即构建失败): 然后在点击 Restart 按钮后看到另一个屏幕(即构建待处理):

在同一台机器上运行以下容器:

root@ci:~# docker ps -a
CONTAINER ID        IMAGE               COMMAND               CREATED             STATUS              PORTS                                                             NAMES
94e6a266e09d        drone/agent:0.8     "/bin/drone-agent"    2 hours ago         Up 2 hours                                                                            root_drone-agent_1
7c7d9f93a532        drone/drone:0.8     "/bin/drone-server"   2 hours ago         Up 2 hours          80/tcp, 443/tcp, 0.0.0.0:9000->9000/tcp, 0.0.0.0:8080->8000/tcp   root_drone-server_1

即使使用DRONE_DEBUG=true,代理日志中的唯一日志条目是:

2017/09/10 15:11:54 pipeline: request next execution

所以我认为由于某种原因我的代理没有从队列中获取构建。我注意到最新的 Drone 版本使用 GRPC 而不是 WebSockets

那么如何开始构建呢?我在这里缺少什么?

【问题讨论】:

  • 图片无效或缺失说明你的yaml文件无效,无法解析。因此,您的构建会出现错误状态,并立即失败。对我来说,这看起来不像是设置问题。这看起来像一个 yaml 问题。因此,我建议发布您项目的 yaml 文件。

标签: continuous-integration grpc drone.io


【解决方案1】:

问题的原因 - 错误的 .drone.yml 文件。在这种情况下,只应显示第一个红色屏幕。为不正确的 YAML 显示 pendingRestart 按钮是 Drone 问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    • 2019-07-20
    • 1970-01-01
    • 2020-08-31
    • 1970-01-01
    • 2013-10-27
    • 2017-05-04
    相关资源
    最近更新 更多