无人机条件构建
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 文件中的顶级属性。
如果您想忽略某些事件类型(即忽略拉取请求、标签等),您可以在无人机用户界面的存储库设置中启用或禁用这些事件。
尝试在 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 文件中的顶级属性。
如果您想忽略某些事件类型(即忽略拉取请求、标签等),您可以在无人机用户界面的存储库设置中启用或禁用这些事件。