Add test-lavapipe and test-warp#1372
Conversation
| contains(github.event.pull_request.labels.*.name, 'test-all') | ||
| || contains(github.event.pull_request.labels.*.name, 'test-warp') | ||
| || (!contains(github.event.pull_request.labels.*.name, 'test-lavapipe') | ||
| && !contains(github.event.pull_request.labels.*.name, 'test-warp')) |
There was a problem hiding this comment.
| && !contains(github.event.pull_request.labels.*.name, 'test-warp')) | |
| && !contains(github.event.pull_request.labels.*.name, 'test-warp') |
There was a problem hiding this comment.
Pretty sure that parentheses goes with the ( that's before !contains in the previous line
|| (!contains(github.event.pull_request.labels.*.name, 'test-lavapipe')
&& !contains(github.event.pull_request.labels.*.name, 'test-warp'))
| if: >- | ||
| contains(github.event.pull_request.labels.*.name, 'test-all') | ||
| || (!contains(github.event.pull_request.labels.*.name, 'test-lavapipe') | ||
| && !contains(github.event.pull_request.labels.*.name, 'test-warp')) |
There was a problem hiding this comment.
I find it odd that test-warp and test-lavapipe behave very differently from test-dx-all and test-vk-all.
test-dx-all and test-vk-all do not disable the default set of tests, while here you are configuring test-warp and test-lavapipe to disable them.
Furthermore, the way test-warp and test-lavapipe are handled will lead to even more difficult-to-read if-condition soup if we decide to add even more labels like it (e.g., test-amd, test-nv, etc.).
I would prefer to have a label such as disable-default-tests to disable the default tests. Then have test-warp and test-lavapipe to selectively enable warp and lavapipe tests.
There was a problem hiding this comment.
I guess we could also just change test-dx-all and test-vk-all to also disable the default set of tests.
Just as long as it's consistent and we can reduce the amount of complexity when it comes to managing all the if conditions so there isn't conflicting/differing logic between the test- labels.
| contents: read | ||
| checks: write | ||
| if: >- | ||
| contains(github.event.pull_request.labels.*.name, 'test-all') |
There was a problem hiding this comment.
Is the condition contains(github.event.pull_request.labels.*.name, 'test-all') needed for the tier 1 targets + macos?
There was a problem hiding this comment.
No, the condition here is that the tests run if either
- The
test-alllabel is there, or - The labels
test-warpandtest-lavapipeare both not present.
This condition will get even bigger if we decide to make other test-<gpu> labels that disable default tests.
Thus, I proposed having a disable-default-tests label instead of this more difficult-to-read if condition.
| if: >- | ||
| contains(github.event.pull_request.labels.*.name, 'test-all') | ||
| || contains(github.event.pull_request.labels.*.name, 'test-lavapipe') |
There was a problem hiding this comment.
test-all already runs Lavapipe - we don't want Exec-Tests-Extra-Lavapipe to run a duplicate
| if: >- | |
| contains(github.event.pull_request.labels.*.name, 'test-all') | |
| || contains(github.event.pull_request.labels.*.name, 'test-lavapipe') | |
| if: >- | |
| contains(github.event.pull_request.labels.*.name, 'test-lavapipe') | |
| && !contains(github.event.pull_request.labels.*.name, 'test-all') |
| contains(github.event.pull_request.labels.*.name, 'test-all') | ||
| || contains(github.event.pull_request.labels.*.name, 'test-warp') | ||
| || (!contains(github.event.pull_request.labels.*.name, 'test-lavapipe') | ||
| && !contains(github.event.pull_request.labels.*.name, 'test-warp')) |
There was a problem hiding this comment.
I think you can drop && !contains(github.event.pull_request.labels.*.name, 'test-warp')
If this is true, then the previous condition would be true, and the or would resolve to true.
Add
test-lavapipeandtest-warpto only run lavapipe and warp tests