I noticed that the continuous integration builds are frequently failing on GitHub: master builds · julia-master. I flipped through the last 20 pages there and saw a significant percentage of failed builds.
Further, even in the builds that pass, it seems there are failed tests. For example, in the “coverage” box for this build, I see failed tests: julia-master #12619.
What’s going on here? I have no professional experience in software development, but my amateur understanding is that failing tests ought to make the build fail, and failed builds should be rare. Probably there’s a good reason things are they way they are, I’m just curious what that is.
(Also, are questions like this better for the Slack?)
Coverage job specifically, it is known that some tests are expected to fail when code coverage emission is enabled. So we allow the
Coverage job to pass even if some of the tests don’t pass. This is perfectly fine; the purpose of the
Coverage job is not to determine whether or not the tests passed, but rather to determine the code coverage.
On the other hand, the purpose of the
Test group is indeed to know whether or not our tests are passing, so failures of jobs in the
Test group is bad. As you noticed, we have several non-deterministic failures that occur in jobs within the
Test group. We’re working on fixing those, and eventually we’d like Buildkite to be consistently green on master, but we’re not there yet.
If anyone is interested in helping out, please join us in the
#ci-dev channel on Slack.