modules/nixos/buildbot: add stylix#2027
Conversation
Stylix overlays are generally not cached by https://cache.nixos.org and may consume arbitrary disk space:
For improved CI time, overlays should ideally be cached. Might be good to know how much invalid cache Stylix currently requires in total.
Cross-posting the potential CI time concern:
|
|
Disk space shouldn't be an issue, the darwin runner has 1TB and linux runners are >= 2TB. We only has one darwin runner to handle both darwin arches so may need to only run tests on aarch64-darwin like home-manger and nixvim. I've triggered a CI run manually, once it is finished I'll trigger another so we can see a cached CI run. |
For reference, nix-community/stylix#1968 attempts to fix the legitimately broken CI. In nix-community/stylix#1969, I am experimenting with increasing nothing-but-nix's aggressiveness, otherwise removing the aarch64-linux runner successfully (nix-community/stylix@5602d1a) avoids running out of space and should make our CI pass again. I will continue investigating nix-community/stylix#1969 tomorrow. |
|
I think the first CI run crashed. Buildbot doesn't really do well handling repos with hundreds of CI checks. home-manager and nixvim group the checks to reduce the overall number. Here is the cached run: https://buildbot.nix-community.org/#/builders/6570/builds/6 |
Grouping the checks for each application would reduce the total number by about 5×. Would that be enough? |
Yes, that should work well. |
trueNAHO
left a comment
There was a problem hiding this comment.
With nix-community/stylix#1985 merged, I suppose this here can be merged as well.
|
@zowoq is there anything we (stylix committers) need to do so buildbot status will be displayed by github? |
|
No. If you rebase a PR or add a commit you'll see it. |
See nix-community/stylix#1961.
In short, there isn't enough disk space on a standard GitHub Actions runner to build all of our checks, especially when starting from an empty cache. This is because each testbed depends on the application it's theming, some of which are quite large. We also can't use a separate runner for each check because there are more checks than the maximum number of parallel jobs.
How much local disk space does BuildBot have? Cache space shouldn't be an issue because most of our dependencies are already on https://cache.nixos.org, so wouldn't need to be uploaded to Cachix.