文件结构:
apps
-- app-1
-- app-2
libs
-- lib-1
-- lib-2
我们有一些测试,只有在lib-2
中的文件发生更改时才应该运行。
我已经尝试过了。
on:
push:
paths:
- 'libs/lib-2/**'
但是它只在提交时推送了来自lib-2
的文件时才运行测试,如果在此之后推送了其他文件,则不会运行。
假设lib-2
的测试失败了,然后开发人员在下一个提交中提交了来自lib-1
的文件,以前的更改就不会运行测试,github将认为检查成功。
是否有一种方法可以在分支中更改某个目录中的文件时运行操作,无论在哪个提交中都可以?
paths
子类型的本机push
触发器无法达到您想要的效果,该子类型仅检查最后一次提交。解决方法可能是仅使用push
触发器(不使用子类型),然后在测试作业之前添加一个check
作业,该作业将查看更改的文件(例如,使用此操作),并在更新了您想要的特定路径时触发第二个作业。 - GuiFalourd