Auto-tester CI transition
Seb
seb at wilzba.ch
Sun Aug 30 22:16:00 UTC 2020
Hi all,
I'm sure anyone who has ever contributed to D on GitHub is
familar with the auto-tester (https://auto-tester.puremagic.com)
and has been a crucial piece in D's build infrastructure.
I think all core and casual contributors have their own horror
stories about the auto-tester to share, so I'm just giving a
high-level overview that while Brad did a fantastic job by
creating this custom-made tool for the D community, it's also a
lot harder to work with than any third-party CI solution as no D
contributor has access to it (e.g. to install/update software,
ssh-ing to debug failures, ...). Moreover, maintaining a reliable
CI is a difficult job and many companies have full-time
engineering teams dedicated to this and we had our more than fair
share of problems with the auto-tester.
It has long been discussed and decided that we should move to a
different CI solution over which contributors have more control
and as we're yet again struggling with it (see e.g. [2]), we are
finally trying to make this happen:
https://github.com/dlang/dmd/pull/11653.
Hence, anyone who objects to this transition should speak up now.
Plan
----
1) The first step is to disable the Windows builds as they are
already fully replicated by Azure pipelines (or will be with the
proposed PR). This is the most important step as we want to
"unbreak" the PR queues.
2) Move Linux + OSX builds to e.g. Travis, CircleCi or Buildkite
3) Move FreeBSD builds. Historically, this has been the blocker
for the migration. However, LDC is using CirrusCI successfully
and if this doesn't work out for DMD, we can always run FreeBSD
VMs with Buildkite agents installed.
Best,
Seb
PS: auto-tester is about to celebrate its tenth birthday in a few
days [2].
[1] https://github.com/dlang/druntime/pull/3202
[2]
https://github.com/braddr/at-client/commit/b81de1ab2059c45c18dc2b83eb60712b83a8c134
More information about the Digitalmars-d
mailing list