KhronosGroup / Vulkan-Headers

Vulkan header files and API registry
https://www.vulkan.org/
Other
846 stars 220 forks source link

Redundant job execution in PRs against main - can we simplify? #496

Closed oddhack closed 1 month ago

oddhack commented 4 months ago

@charles-lunarg I note in .github/workflows/ci.yml, it says

on:
push:
pull_request:
branches:
-main

ISTM this is just causing CI to be run twice on every PR against main, which is redundant and slows down the spec update process noticeably since the Windows jobs are very slow to launch. Is there a good reason not to just remove the trigger on PR and leave only the trigger on pushes?

dgkoch commented 4 months ago

Is there a good reason not to just remove the trigger on PR and leave only the trigger on pushes?

It wouldn't run CI on PRs, which are the only way non-project members can propose changes.

charles-lunarg commented 4 months ago

If a PR is coming from a fork rather than a branch, then only the 'pull_request' trigger activates. This workflow is what LunarG typically uses, and also allows for users to push branches up in their own fork with CI active without creating PR's to main.

Also, because forks pull CI runners from a separate pool from the KhronosGroup, CI jobs in forks often start much sooner thank KhronosGroup.

Unfortunately, I do not have a good solution for slow CI startup times.