gpt4 book ai didi

排除路径的 Github 工作流不起作用

转载 作者:行者123 更新时间:2023-12-05 03:29:08 25 4
gpt4 key购买 nike

我无法使用 Github 工作流功能来排除正常工作的路径,也找不到类似的堆栈溢出问题。最相似的情况是Github workflow does not trigger on push for path based filtering但这对我没有帮助。

我有以下 PR 的工作流程:

name: Build For PRs

on:
pull_request:
types: [opened, synchronize, ready_for_review]
paths:
- 'src/**'
- '!src/abc/**'
- '!src/def/**'
- '!src/ghi/**'
- '!src/docker-compose*.yml'
- '!**.md'

我希望它在“src”下的任何文件发生更改时在 PR 上运行,除非负过滤器之一匹配。

即使更改 .md 文件也会触发此 WF。如何实现上述逻辑?

最佳答案

问题是排除路径并没有按照您的设计要求工作。

当所有路径名都匹配路径忽略模式时,工作流将不会运行,但如果您至少有一个文件不属于否定 - 工作流仍会运行。

因此无法按照您想要的方式通过此功能停止工作流 - 当至少有 1 个文件属于排除列表时停止工作流。

我建议过滤已更改的文件,然后如果找到任何符合条件的文件并使用 https://github.com/tj-actions/changed-files/ 则停止工作流程反而。通过该操作,您将能够检查是否有任何文件符合您的标准,然后您就可以停止工作流程。不幸的是,它将启动完整的工作流程,创建一个运行器并自行执行工作流程。

关于排除路径的 Github 工作流不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71070064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com