tech-pkg archive
[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index][
Old Index]
Re: C99 (was: Re: CVS commit: pkgsrc)
* On 2025年03月07日 at 11:05 GMT, Benny Siegert wrote:
At the macro level, what would help with this is if pkgsrc had CI. CI
that is more granular than running full bulk builds and seeing that
things started failing. Some system that would check each commit for
breakage, with some sort of consequences. But that would require a
very different development model. Something like each commit being on
a branch and only being merged after testing.
Something like this? https://github.com/drecklypkg/dreckly/actions
Here's briefly how it works:
- Every push to trunk (as well as manual triggers) builds any requested
packages on all systems, provides build logs on failure, and saves
the binary packages to a server I've set up. If any files in the
bootstrap path are touched, we also perform a fresh bootstrap.
- Every push to a branch named ci/*, or a pull-request, triggers a
build for any touched packages, using BINPKG_SITES and
DEPENDS_TARGET=bin-install to speed things up. These builds are
not saved (important, we don't want them overwriting trunk).
- Builds on macOS, Ubuntu, Linux and Cygwin (yes, really) are performed
on native GitHub runners. These are the fastest and can be spun up
in parallel to handle multiple commits at once.
- FreeBSD and OpenBSD are done in qemu sessions on Ubuntu on GitHub
runners. While these can run in parallel, they are quite a bit
slower and less manageable.
- I've written up a Jenkins integration so that for any other builds
that aren't supported by GitHub runners, a build is triggered on the
instance I've set up at https://ci.dreckly.dev/ which will then build
the commit on any arbitrary OS I can run in MNX (currently CentOS,
SmartOS, and NetBSD).
It's not perfect, and I'm still improving it, but yes we test every
single commit to dreckly on macOS (arm64 and x86_64), Ubuntu, Cygwin,
FreeBSD, OpenBSD, SmartOS, CentOS and NetBSD. And of course I'm still
running my daily bulk builds on NetBSD, SmartOS and macOS to find any
wider issues.
--
Jonathan Perkin pkgsrc.smartos.org
Open Source Complete Cloud www.tritondatacenter.com
Home |
Main Index |
Thread Index |
Old Index