【问题标题】:How to run build in local machine with drone.io如何使用drone.io 在本地机器上运行构建
【发布时间】:2017-01-05 00:37:58
【问题描述】:

构建是否必须在drone.io 服务器上运行?我可以在本地运行构建吗?由于开发人员需要先通过构建,然后再将代码推送到 github,因此我正在寻找一种在开发人员本地机器上运行构建的方法。下面是我的 .drone.yml 文件:

pipeline:
  build:
    image: node:latest
    commands:
      - npm install
      - npm test
      - npm run eslint
  integration:
    image: mongo-test
    commands:
      - mvn test

它包括两个 docker 容器。如何在无人机中针对此文件运行构建?我查看了无人机 cli,但它没有按我预期的方式工作。

【问题讨论】:

  • Yes drone exec 用于在本地运行您的构建,不需要无人机服务器连接。它是 100% 本地化的。您能否提供更多详细信息,说明为什么它不能按预期工作以及重现的步骤?您是否从存储库的根目录运行命令?你查阅过文档readme.drone.io/cli/drone-exec 吗?
  • 好的,我明白了。我没有检查执行。我认为无人机中的所有命令都用于链接到无人机服务器。感谢您的帮助。

标签: drone.io


【解决方案1】:

@BradRydzewski 评论是正确答案。

要在本地运行构建,请使用 drone exec。你可以check the docs

扩展他的答案,您必须在本地 repo 的根目录中执行该命令,这正是您的 .drone.yml 文件所在的位置。如果您的构建依赖于机密,则需要使用 --secret--secrets-file 选项通过命令行提供这些机密。

运行本地构建时,没有克隆步骤。 Drone 将使用您本地的 git 工作区并将其安装在步骤容器中。因此,如果您在执行本地构建期间检查其他一些提交/分支/任何内容,您将会搞砸,因为 Drone 会看到这些更改。所以不要在构建运行时更新你的本地仓库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-27
    • 2012-04-16
    • 1970-01-01
    • 2023-03-10
    • 2020-04-10
    • 1970-01-01
    • 2021-08-19
    • 1970-01-01
    相关资源
    最近更新 更多