无人机条件构建

Drone conditional builds

尝试在 drone.yml 中设置条件构建,如下所示:

feature-dev-deployment:
when:
  event: push
  branches:
    include: feature/*
    exclude: master

无论分支名称如何,上面的代码都会为每个构建触发,也会为 master 触发。

我只想在分支具有前缀 'feature'(如:'feature/test/abc-123/desc')时触发构建,并且它不应该触发其他模式和母版的构建。根据无人机 0.5 文档 limit steps by branch,我假设我遵循的是正确的语法。

你拼错了是branch而不是branches

when子句用于限制单个步骤的执行。如果你想通过分支限制整个构建过程(所有步骤)的执行,你可以使用以下语法:

pipeline:
  some_step:
    image: some/image
    commands:
      - echo foo

branches: [ feature/* ]

请注意,在上面的示例中,我们使用了 branches 属性,它是 yaml 文件中的顶级属性。

如果您想忽略某些事件类型(即忽略拉取请求、标签等),您可以在无人机用户界面的存储库设置中启用或禁用这些事件。