KhronosGroup / Vulkan-Site

Vulkan Documentation Project framework for integrated documentation site with spec, proposals, guide, and more
Other
25 stars 2 forks source link

Run CI in individual component repositories #82

Closed oddhack closed 5 months ago

oddhack commented 6 months ago

Something we suffer from pretty frequently is a site build failure due to something minor, but hard to diagnose in a component. Vulkan-Samples seems particularly prone to this, probably because it has dozens of third-party submodules. This is a problem when I'm trying to do a spec release and want to keep the docs site current with the registry specs as I see errors in repositories I don't understand and can't easily fix myself.

I see two plausible solutions:

I think the second is better, if repo owners are willing to live with it, and defer merging things to main until they pass CI. At minimum myself, @gpx1000, @SaschaWillems (whom I just added as a user to this repo so I could @-tag), and myself would need to align. A risk is that if there is some sort of meta-problem, like #81 with our UI repository, that would block CI in all repos doing a build.

SaschaWillems commented 6 months ago

I'm more than fine with the second solution. Very few contributors know about Antora, and as you noticed Antora builds break of this if we don't catch those problems during our review process.

So having a CI step that builds the Antora part of e.g. the samples repo and then fails if not successful would also help us in the samples review process.

Adding a minimal playbook is exactly what I do locally. I have a light-weight Antora project that has minimal playbooks for the repos I work on (Guide, Tutorial, Samples) so I can easily see if Antora builds are okay :)

gpx1000 commented 6 months ago

I tend to agree I think the second path is the right one.