git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Patrick Steinhardt <ps@pks.im>
Cc: Taylor Blau <me@ttaylorr.com>,  git@vger.kernel.org
Subject: Re: [PATCH 0/5] ci: add GitLab CI definition
Date: Wed, 01 Nov 2023 09:15:51 +0900	[thread overview]
Message-ID: <xmqqttq6xr9k.fsf@gitster.g> (raw)
In-Reply-To: <ZUCw1B6oQaDWKx3O@tanuki> (Patrick Steinhardt's message of "Tue, 31 Oct 2023 08:46:28 +0100")

Patrick Steinhardt <ps@pks.im> writes:

>> So I have some hesitation about trying to mirror this rather complicated
>> set of build rules in another CI environment. My primary concern would
>> be that the two might fall out of sync and a series that is green on
>> GitHub would be red on GitLab, or vice-versa. Importantly, this can
>> happen even without changes to the build definitions, since (AFAICT)
>> both forges distribute new images automatically, so the set of packages
>> installed in GitHub may not exactly match what's in GitLab (and
>> vice-versa).
>
> Yup, that's a valid concern.

Is it?

I rather naïvely think different set of build options and tools
running the tests would mean we gain wider test coverage.  Even with
the current setup that relies on whatever GitHub offers, we already
see "this version passes all tests except for the job on macOS" and
"the version that was passing yesterday is not broken today---perhas
the image of the test environment has been updated and we need to
adjust to it" every once in a while.

> As mentioned, this patch series does not have the intent to make
> GitLab CI a second authoritative CI platform.  GitHub Actions
> should remain the source of truth of whether a pipeline passes or
> not.

I am not sure I follow.  Often we take a version that happened to
have failed Actions tests when we know the reason of the failure
has nothing to do with the new code.  From time to time people help
to make CI tests less flakey, but flakes are expected.

> Most importantly, I do not want to require the maintainer
> to now watch both pipelines on GitHub and GitLab.

I don't even make tests by GitHub Actions force me to do anything,
so there is no worry here.

> This might be another indicator that the pipeline should rather be
> in "contrib/", so that people don't start to treat it as
> authoritative.

Let me step back and as more basic questions.

 - What do you mean by "authoritative"?  For an authoritative CI
   test, contributors whose changes do not pass it should take it as
   a sign that their changes need more work?  If so, isn't it a
   natural expectation and a good thing?  Unless you expect the CI
   tests to be extra flakey, that is.

 - Are there reasons why you do not trust the CI tests at GitLab
   more than those run at GitHub?

> Last but not least, I actually think that having multiple supported CI
> platforms also has the benefit that people can more readily set it up
> for themselves. In theory, this has the potential to broaden the set of
> people willing to contribute to our `ci/` scripts, which would in the
> end also benefit GitHub Actions.

Yes, assuming that we can do so without much cutting and pasting but
with a clear sharing of the infrastructure code, and the multiple
supported CI environments are not too flakey, I am with this rather
naïve worldview that the more we have the merrier we would be.

> I understand your points, and especially the point about not having a
> second authoritative CI platform. I'm very much on the same page as you
> are here, and would be happy to move the definitions to "contrib/" if
> you want me to.
>
> But I think we should also see the potential benefit of having a second
> CI platform, as it enables a more diverse set of people to contribute.
> which can ultimately end up benefitting our CI infra for both GitHub
> Actions and GitLab CI.

I do *not* want to add new things, if we were to use them ourselves,
to "contrib/".  We have passed that stage long time ago that keeping
everything in my tree gives wider exposure and foster cooperation.

Thanks.

  parent reply	other threads:[~2023-11-01  0:15 UTC|newest]

Thread overview: 101+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-26  7:59 [PATCH 0/5] ci: add GitLab CI definition Patrick Steinhardt
2023-10-26  8:00 ` [PATCH 1/5] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-10-26  8:26   ` Oswald Buddenhagen
2023-10-27  8:17     ` Patrick Steinhardt
2023-10-26  8:00 ` [PATCH 2/5] ci: make grouping setup more generic Patrick Steinhardt
2023-10-26  8:00 ` [PATCH 3/5] ci: group installation of Docker dependencies Patrick Steinhardt
2023-10-26  8:34   ` Oswald Buddenhagen
2023-10-27  8:17     ` Patrick Steinhardt
2023-10-26  8:00 ` [PATCH 4/5] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-10-26  8:35   ` Oswald Buddenhagen
2023-11-03 22:35   ` Christian Couder
2023-11-06  7:16     ` Patrick Steinhardt
2023-10-26  8:00 ` [PATCH 5/5] ci: add support for GitLab CI Patrick Steinhardt
2023-10-26  9:07   ` Oswald Buddenhagen
2023-10-27  8:17     ` Patrick Steinhardt
2023-10-27 10:22       ` Phillip Wood
2023-10-27 10:43         ` Oswald Buddenhagen
2023-10-27 14:32           ` Phillip Wood
2023-10-27 17:47             ` Oswald Buddenhagen
2023-10-30  9:49               ` Phillip Wood
2023-10-30 14:04                 ` Dragan Simic
2023-10-27 10:49       ` Oswald Buddenhagen
2023-10-27 11:11         ` Patrick Steinhardt
2023-10-27  9:25 ` [PATCH v2 0/5] ci: add GitLab CI definition Patrick Steinhardt
2023-10-27  9:25   ` [PATCH v2 1/5] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-10-27  9:25   ` [PATCH v2 2/5] ci: make grouping setup more generic Patrick Steinhardt
2023-10-27  9:25   ` [PATCH v2 3/5] ci: group installation of Docker dependencies Patrick Steinhardt
2023-10-27  9:25   ` [PATCH v2 4/5] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-10-27  9:25   ` [PATCH v2 5/5] ci: add support for GitLab CI Patrick Steinhardt
2023-10-27 10:19     ` Phillip Wood
2023-10-27 11:19       ` Patrick Steinhardt
2023-10-27 11:57         ` Patrick Steinhardt
2023-10-27 13:02           ` Phillip Wood
2023-10-29 16:13             ` Phillip Wood
2023-10-30 10:46               ` Patrick Steinhardt
2023-10-29 16:27         ` Phillip Wood
2023-10-30 10:45           ` Patrick Steinhardt
2023-10-30  0:22       ` Junio C Hamano
2023-10-27 11:01     ` Oswald Buddenhagen
2023-10-27 13:17       ` Phillip Wood
2023-10-27 15:53         ` Oswald Buddenhagen
2023-10-31 19:36         ` Jeff King
2023-11-01  3:33           ` Junio C Hamano
2023-10-30 12:14 ` [PATCH v3 0/8] ci: add GitLab CI definition Patrick Steinhardt
2023-10-30 12:14   ` [PATCH v3 1/8] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-10-30 12:14   ` [PATCH v3 2/8] ci: make grouping setup more generic Patrick Steinhardt
2023-10-30 12:14   ` [PATCH v3 3/8] ci: group installation of Docker dependencies Patrick Steinhardt
2023-10-30 12:14   ` [PATCH v3 4/8] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-10-30 12:15   ` [PATCH v3 5/8] ci: unify setup of some environment variables Patrick Steinhardt
2023-10-30 15:09     ` Phillip Wood
2023-10-30 15:19       ` Patrick Steinhardt
2023-10-30 18:22       ` Dragan Simic
2023-10-30 12:15   ` [PATCH v3 6/8] ci: squelch warnings when testing with unusable Git repo Patrick Steinhardt
2023-10-30 12:15   ` [PATCH v3 7/8] ci: install test dependencies for linux-musl Patrick Steinhardt
2023-10-30 12:47     ` Patrick Steinhardt
2023-10-30 13:22       ` Patrick Steinhardt
2023-10-30 15:13       ` Phillip Wood
2023-10-30 15:23         ` Patrick Steinhardt
2023-10-30 16:09           ` Phillip Wood
2023-10-30 12:15   ` [PATCH v3 8/8] ci: add support for GitLab CI Patrick Steinhardt
2023-10-30 15:46 ` [PATCH 0/5] ci: add GitLab CI definition Taylor Blau
2023-10-31  7:46   ` Patrick Steinhardt
2023-10-31 19:12     ` Taylor Blau
2023-11-01  0:15     ` Junio C Hamano [this message]
2023-11-01 11:56       ` Patrick Steinhardt
2023-10-31  9:04 ` [PATCH v4 0/8] " Patrick Steinhardt
2023-10-31  9:04   ` [PATCH v4 1/8] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-10-31  9:04   ` [PATCH v4 2/8] ci: make grouping setup more generic Patrick Steinhardt
2023-10-31  9:04   ` [PATCH v4 3/8] ci: group installation of Docker dependencies Patrick Steinhardt
2023-10-31  9:04   ` [PATCH v4 4/8] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-10-31  9:04   ` [PATCH v4 5/8] ci: unify setup of some environment variables Patrick Steinhardt
2023-10-31 17:06     ` Victoria Dye
2023-11-01  3:14       ` Junio C Hamano
2023-11-01 11:44       ` Patrick Steinhardt
2023-10-31  9:05   ` [PATCH v4 6/8] ci: squelch warnings when testing with unusable Git repo Patrick Steinhardt
2023-10-31  9:05   ` [PATCH v4 7/8] ci: install test dependencies for linux-musl Patrick Steinhardt
2023-10-31  9:05   ` [PATCH v4 8/8] ci: add support for GitLab CI Patrick Steinhardt
2023-10-31 17:47     ` Victoria Dye
2023-11-01 11:44       ` Patrick Steinhardt
2023-10-31 18:22   ` [PATCH v4 0/8] ci: add GitLab CI definition Victoria Dye
2023-11-01  3:22     ` Junio C Hamano
2023-11-01 11:44       ` Patrick Steinhardt
2023-11-01 13:02 ` [PATCH v5 0/8] ci: add support for GitLab CI Patrick Steinhardt
2023-11-01 13:02   ` [PATCH v5 1/8] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-11-01 13:02   ` [PATCH v5 2/8] ci: make grouping setup more generic Patrick Steinhardt
2023-11-01 13:02   ` [PATCH v5 3/8] ci: group installation of Docker dependencies Patrick Steinhardt
2023-11-01 13:02   ` [PATCH v5 4/8] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-11-01 13:03   ` [PATCH v5 5/8] ci: unify setup of some environment variables Patrick Steinhardt
2023-11-01 13:03   ` [PATCH v5 6/8] ci: squelch warnings when testing with unusable Git repo Patrick Steinhardt
2023-11-01 13:03   ` [PATCH v5 7/8] ci: install test dependencies for linux-musl Patrick Steinhardt
2023-11-01 13:03   ` [PATCH v5 8/8] ci: add support for GitLab CI Patrick Steinhardt
2023-11-09  8:05 ` [PATCH v6 0/8] ci: add GitLab CI definition Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 1/8] ci: reorder definitions for grouping functions Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 2/8] ci: make grouping setup more generic Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 3/8] ci: group installation of Docker dependencies Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 4/8] ci: split out logic to set up failed test artifacts Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 5/8] ci: unify setup of some environment variables Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 6/8] ci: squelch warnings when testing with unusable Git repo Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 7/8] ci: install test dependencies for linux-musl Patrick Steinhardt
2023-11-09  8:05   ` [PATCH v6 8/8] ci: add support for GitLab CI Patrick Steinhardt
2023-11-09 10:06   ` [PATCH v6 0/8] ci: add GitLab CI definition Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqttq6xr9k.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=me@ttaylorr.com \
    --cc=ps@pks.im \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).