From: Patrick Steinhardt <ps@pks.im>
To: Victoria Dye <vdye@github.com>
Cc: git@vger.kernel.org, Taylor Blau <me@ttaylorr.com>,
Junio C Hamano <gitster@pobox.com>,
Phillip Wood <phillip.wood123@gmail.com>,
Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Subject: Re: [PATCH v4 8/8] ci: add support for GitLab CI
Date: Wed, 1 Nov 2023 12:44:54 +0100 [thread overview]
Message-ID: <ZUI6Nv-HIxXuPMVC@tanuki> (raw)
In-Reply-To: <4c8c2f19-1a7e-4524-81e7-c74091e88edf@github.com>
[-- Attachment #1: Type: text/plain, Size: 4427 bytes --]
On Tue, Oct 31, 2023 at 10:47:44AM -0700, Victoria Dye wrote:
> Patrick Steinhardt wrote:> diff --git a/ci/install-docker-dependencies.sh b/ci/install-docker-dependencies.sh
> > index 6e845283680..48cb2e735b5 100755
> > --- a/ci/install-docker-dependencies.sh
> > +++ b/ci/install-docker-dependencies.sh
> > @@ -7,6 +7,9 @@
> >
> > begin_group "Install dependencies"
> >
> > +# Required so that apt doesn't wait for user input on certain packages.
> > +export DEBIAN_FRONTEND=noninteractive
> > +
> > case "$jobname" in
> > linux32)
> > linux32 --32bit i386 sh -c '
> > @@ -16,11 +19,19 @@ linux32)
> > '
> > ;;
> > linux-musl)
> > - apk add --update build-base curl-dev openssl-dev expat-dev gettext \
> > + apk add --update shadow sudo build-base curl-dev openssl-dev expat-dev gettext \
> > pcre2-dev python3 musl-libintl perl-utils ncurses \
> > apache2 apache2-http2 apache2-proxy apache2-ssl apache2-webdav apr-util-dbd_sqlite3 \
> > bash cvs gnupg perl-cgi perl-dbd-sqlite >/dev/null
> > ;;
> > +linux-*)
> > + apt update -q &&
> > + apt install -q -y sudo git make language-pack-is libsvn-perl apache2 libssl-dev \
> > + libcurl4-openssl-dev libexpat-dev tcl tk gettext zlib1g-dev \
> > + perl-modules liberror-perl libauthen-sasl-perl libemail-valid-perl \
> > + libdbd-sqlite3-perl libio-socket-ssl-perl libnet-smtp-ssl-perl ${CC_PACKAGE:-${CC:-gcc}} \
> > + apache2 cvs cvsps gnupg libcgi-pm-perl subversion
> > + ;;
> > pedantic)
> > dnf -yq update >/dev/null &&
> > dnf -yq install make gcc findutils diffutils perl python3 gettext zlib-devel expat-devel openssl-devel curl-devel pcre2-devel >/dev/null
>
> ...
>
> > diff --git a/ci/lib.sh b/ci/lib.sh
> > index e14b1029fad..6e3d64004ec 100755
> > --- a/ci/lib.sh
> > +++ b/ci/lib.sh
> > @@ -208,6 +224,7 @@ then
> > cache_dir="$HOME/test-cache/$SYSTEM_PHASENAME"
> >
> > GIT_TEST_OPTS="--write-junit-xml"
> > + JOBS=10
> > elif test true = "$GITHUB_ACTIONS"
> > then
> > CI_TYPE=github-actions
>
> ...
>
> > -MAKEFLAGS="$MAKEFLAGS --jobs=10"
> > -GIT_PROVE_OPTS="--timer --jobs 10 --state=failed,slow,save"
> > +MAKEFLAGS="$MAKEFLAGS --jobs=${JOBS}"
> > +GIT_PROVE_OPTS="--timer --jobs ${JOBS} --state=failed,slow,save"
> >
>
> Organizationally, this commit seems to be doing two things at once:
>
> - Adding GitLab-specific CI setup (either in the new .gitlab-ci.yml or in
> conditions gated on "gitlab-ci").
> - Updating the common CI scripts with things that are needed for GitLab CI,
> but aren't conditioned on it (i.e. the patch excerpts I've included
> above).
>
> I'd prefer these being separated into two patches, mainly to isolate "things
> that affect all CI" from "things that affect only GitLab CI". This is
> ultimately a pretty minor nit, though; if you're not planning on re-rolling
> (or just disagree with what I'm suggesting :) ), I'm okay with leaving it
> as-is.
Yeah, the JOBS refactoring can certainly be split out into a preparatory
commit where we unify the envvars (currently patch 5). But for the other
changes it makes a bit less sense to do so, in my opinion:
- The DEBIAN_FRONTEND variable isn't needed before as the there are
no Docker-based CI jobs that use apt.
- Adding the shadow and sudo packages to the linux-musl job wouldn't
be needed either as there are no cases yet where we run
unprivileged CI builds via Docker.
- Adding the apt packages as a preparatory step doesn't make much
sense either as there is no Docker job using it.
But anyway. I will:
- Move around the JOBS variable refactoring to a preparatory patch,
which feels sensible to me.
- Move the `DEBIAN_FRONTEND` varible into the "linux-*" case, which
should further clarify that this only impacts the newly added and
thus GitLab-specific infrastructure.
With these changes, the only thing left in this commit that is not
guarded by a GitLab CI specific condition is the change to the
"linux-musl" case where we install shadow and sudo now. But I don't feel
like it makes sense to move them into a standalone preparatory commit.
Thanks!
Patrick
> Otherwise, I can't comment on the correctness of the GitLab CI definition (I
> assume you've tested it anyway), but AFAICT the changes above shouldn't break
> GitHub CI.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2023-11-01 11:45 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
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 [this message]
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=ZUI6Nv-HIxXuPMVC@tanuki \
--to=ps@pks.im \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=me@ttaylorr.com \
--cc=oswald.buddenhagen@gmx.de \
--cc=phillip.wood123@gmail.com \
--cc=vdye@github.com \
/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).