On Sat, Jun 6, 2026 at 8:09 AM Andres Freund <[email protected]> wrote: > With cirrus-ci all branches shared one cache, but that's not the case with > github actions. Except for being able to read caches from the default branch > (master in our case), other branches have completely separate cache > namespaces. That's probably the right call, safety wise, but makes our ccache > approach .. not great.
For the record: based on what Andres explained about how GHA cache sharing works, I taught cfbot to mirror the master branch in its postgresql-cfbot/postgresql account, and use the latest successful CI run from there to select the base commit for the cf/XXX branches it maintains. IIUC that should work well for this cache sharing policy, since master's cache should be uploaded and ready to reuse at that point. Perhaps we'll also get some data on how successful these new heuristics are? https://github.com/postgresql-cfbot/postgresql/commits/master/ I also taught cfbot to delete old cf/XXX branches with no builds in over 90 days (we went from over 9000 to 376...). That matches Github's own retention period for logs, artefacts etc, so stale branches are not very interesting and it seemed like a good idea not to waste resources or clutter the UI with junk.
