All of lore.kernel.org
 help / color / mirror / Atom feed
From: Patrick Steinhardt <ps@pks.im>
To: Christian Couder <christian.couder@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 4/5] ci: split out logic to set up failed test artifacts
Date: Mon, 6 Nov 2023 08:16:50 +0100	[thread overview]
Message-ID: <ZUiS0llx6juV_1M7@tanuki> (raw)
In-Reply-To: <CAP8UFD25O9D1WL+CAQOcdqwuPsgdd6qOMNWuVtAw18U3RccYZQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2191 bytes --]

On Fri, Nov 03, 2023 at 11:35:01PM +0100, Christian Couder wrote:
> On Thu, Oct 26, 2023 at 10:01 AM Patrick Steinhardt <ps@pks.im> wrote:
> >
> > We have some logic in place to create a directory with the output from
> > failed tests, which will then subsequently be uploaded as CI artifact.
> > We're about to add support for GitLab CI, which will want to reuse the
> > logic.
> >
> > Split the logic into a separate function so that it is reusable.
> >
> > Signed-off-by: Patrick Steinhardt <ps@pks.im>
> > ---
> >  ci/lib.sh | 40 ++++++++++++++++++++++------------------
> >  1 file changed, 22 insertions(+), 18 deletions(-)
> >
> > diff --git a/ci/lib.sh b/ci/lib.sh
> > index 957fd152d9c..33005854520 100755
> > --- a/ci/lib.sh
> > +++ b/ci/lib.sh
> > @@ -137,6 +137,27 @@ handle_failed_tests () {
> >         return 1
> >  }
> >
> > +create_failed_test_artifacts () {
> > +       mkdir -p t/failed-test-artifacts
> > +
> > +       for test_exit in t/test-results/*.exit
> > +       do
> > +               test 0 != "$(cat "$test_exit")" || continue
> > +
> > +               test_name="${test_exit%.exit}"
> > +               test_name="${test_name##*/}"
> > +               printf "\\e[33m\\e[1m=== Failed test: ${test_name} ===\\e[m\\n"
> > +               echo "The full logs are in the 'print test failures' step below."
> > +               echo "See also the 'failed-tests-*' artifacts attached to this run."
> > +               cat "t/test-results/$test_name.markup"
> > +
> > +               trash_dir="t/trash directory.$test_name"
> > +               cp "t/test-results/$test_name.out" t/failed-test-artifacts/
> > +               tar czf t/failed-test-artifacts/"$test_name".trash.tar.gz "$trash_dir"
> > +       done
> > +       return 1
> 
> Nit: I think it's more the responsibility of handle_failed_tests() to
> `return 1` than of create_failed_test_artifacts(). I understand that
> putting it into this new function means one more line that is common
> to several CI tools though.
> 
> Otherwise everything in this series LGTM. Thanks!

Good point indeed. Not sure whether this is worth a reroll though?

Patrick

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2023-11-06  7:17 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 [this message]
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
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=ZUiS0llx6juV_1M7@tanuki \
    --to=ps@pks.im \
    --cc=christian.couder@gmail.com \
    --cc=git@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.