Git Mailing List Archive mirror
 help / color / mirror / Atom feed
From: Justin Tobler <jltobler@gmail.com>
To: git@vger.kernel.org
Cc: Justin Tobler <jltobler@gmail.com>, ps@pks.im
Subject: [PATCH v2 0/5] Add GitLab CI to check for whitespace errors
Date: Thu,  2 May 2024 14:38:34 -0500	[thread overview]
Message-ID: <20240502193840.105355-1-jltobler@gmail.com> (raw)
In-Reply-To: <20240430003323.6210-1-jltobler@gmail.com>

Hello again,

This is the second version of my patch series to add a GitLab CI job to
check for whitespace errors. The main differnece with this version is
that it first generalizes the existing GitHub whitespace check CI job
allowing the GitLab one to reuse it.

To validate that these changes do not break the existing GitHub CI, here
are some links to a successful run and a failed run:

- https://github.com/gitgitgadget/git/actions/runs/8929081916
- https://github.com/gitgitgadget/git/actions/runs/8928887225

To validate that these changes also work on GitLab CI, here some
additional links to a succdessful run and a failed run:

- https://gitlab.com/gitlab-org/git/-/jobs/6768304381
- https://gitlab.com/gitlab-org/git/-/jobs/6768282645

Thanks,
-Justin

Justin Tobler (5):
  ci: pre-collapse GitLab CI sections
  github-ci: fix link to whitespace error
  ci: separate whitespace check script
  ci: make the whitespace report optional
  gitlab-ci: add whitespace error check

 .github/workflows/check-whitespace.yml | 67 ++----------------
 .gitlab-ci.yml                         |  9 +++
 ci/check-whitespace.sh                 | 95 ++++++++++++++++++++++++++
 ci/lib.sh                              |  2 +-
 4 files changed, 109 insertions(+), 64 deletions(-)
 create mode 100755 ci/check-whitespace.sh

Range-diff against v1:
1:  924d3eb23c = 1:  924d3eb23c ci: pre-collapse GitLab CI sections
-:  ---------- > 2:  c8d8b444dc github-ci: fix link to whitespace error
-:  ---------- > 3:  6b44b21dda ci: separate whitespace check script
-:  ---------- > 4:  87dfd1d5a9 ci: make the whitespace report optional
2:  624e68a8d2 ! 5:  175b300e91 gitlab-ci: add whitespace error check
    @@ Metadata
      ## Commit message ##
         gitlab-ci: add whitespace error check
     
    -    To check for whitespace errors introduced by a set of changes, there is
    -    the `.github/workflows/check-whitespace.yml` GitHub action. This script
    -    executes `git log --check` over a range containing the new commits and
    -    parses the output to generate a markdown formatted artifact that
    -    summarizes detected errors with GitHub links to the affected commits and
    -    blobs.
    -
    -    Since this script is rather specific to GitHub actions, a more general
    -    and simple `ci/check-whitespace.sh` is added instead that functions the
    -    same, but does not generate the markdown file for the action summary.
    -    From this, a new GitLab CI job is added to support the whitespace error
    -    check.
    +    GitLab CI does not have a job to check for whitespace errors introduced
    +    by a set of changes. Reuse the existing generic `whitespace-check.sh` to
    +    create the job for GitLab pipelines.
     
         Note that the `$CI_MERGE_REQUEST_TARGET_BRANCH_SHA` variable is only
         available in GitLab merge request pipelines and therefore the CI job is
    @@ .gitlab-ci.yml: static-analysis:
     +  before_script:
     +    - ./ci/install-docker-dependencies.sh
     +  script:
    -+    - ./ci/check-whitespace.sh $CI_MERGE_REQUEST_TARGET_BRANCH_SHA
    ++    - ./ci/check-whitespace.sh "$CI_MERGE_REQUEST_TARGET_BRANCH_SHA"
     +  rules:
     +    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
    -
    - ## ci/check-whitespace.sh (new) ##
    -@@
    -+#! /bin/sh
    -+#
    -+# Check that commits after a specified point do not contain new or modified
    -+# lines with whitespace errors.
    -+#
    -+
    -+baseSha=${1}
    -+
    -+git log --check --pretty=format:"---% h% s" ${baseSha}..
    -+if test $? -ne 0
    -+then
    -+	echo "A whitespace issue was found in one or more of the commits."
    -+	echo "Run the following command to resolve whitespace issues:"
    -+	echo "\tgit rebase --whitespace=fix ${baseSha}"
    -+	exit 2
    -+fi
-- 
2.45.0


  parent reply	other threads:[~2024-05-02 19:41 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-30  0:33 [PATCH 0/2] Add GitLab CI to check for whitespace errors Justin Tobler
2024-04-30  0:33 ` [PATCH 1/2] ci: pre-collapse GitLab CI sections Justin Tobler
2024-04-30  0:33 ` [PATCH 2/2] gitlab-ci: add whitespace error check Justin Tobler
2024-04-30  1:59   ` James Liu
2024-04-30  3:01     ` Justin Tobler
2024-04-30  5:04       ` Patrick Steinhardt
2024-04-30  5:04   ` Patrick Steinhardt
2024-04-30 12:14     ` Taylor Blau
2024-04-30 14:00     ` Justin Tobler
2024-04-30 14:05       ` Patrick Steinhardt
2024-04-30 14:41         ` Justin Tobler
2024-04-30 14:45           ` Patrick Steinhardt
2024-04-30 14:58             ` Justin Tobler
2024-05-02 19:38 ` Justin Tobler [this message]
2024-05-02 19:38   ` [PATCH v2 1/5] ci: pre-collapse GitLab CI sections Justin Tobler
2024-05-02 19:38   ` [PATCH v2 2/5] github-ci: fix link to whitespace error Justin Tobler
2024-05-02 19:38   ` [PATCH v2 3/5] ci: separate whitespace check script Justin Tobler
2024-05-03  6:56     ` Patrick Steinhardt
2024-05-03 15:27       ` Justin Tobler
2024-05-03 16:49         ` Junio C Hamano
2024-05-03 17:59           ` Patrick Steinhardt
2024-05-04  6:51             ` Chris Torek
2024-05-02 19:38   ` [PATCH v2 4/5] ci: make the whitespace report optional Justin Tobler
2024-05-03  6:56     ` Patrick Steinhardt
2024-05-03 15:35       ` Justin Tobler
2024-05-02 19:38   ` [PATCH v2 5/5] gitlab-ci: add whitespace error check Justin Tobler
2024-05-03  6:56     ` Patrick Steinhardt
2024-05-02 21:45   ` [PATCH v2 0/5] Add GitLab CI to check for whitespace errors Junio C Hamano
2024-05-03 15:39     ` Justin Tobler
2024-05-03 17:21   ` [PATCH v3 " Justin Tobler
2024-05-03 17:21     ` [PATCH v3 1/5] ci: pre-collapse GitLab CI sections Justin Tobler
2024-05-03 17:21     ` [PATCH v3 2/5] github-ci: fix link to whitespace error Justin Tobler
2024-05-03 17:21     ` [PATCH v3 3/5] ci: separate whitespace check script Justin Tobler
2024-05-03 17:21     ` [PATCH v3 4/5] ci: make the whitespace report optional Justin Tobler
2024-05-03 17:21     ` [PATCH v3 5/5] gitlab-ci: add whitespace error check Justin Tobler
2024-05-06  6:55       ` Patrick Steinhardt
2024-05-06 13:59         ` Justin Tobler
2024-05-06 17:17         ` Junio C Hamano
2024-05-06 19:21           ` Justin Tobler
2024-05-07  4:12             ` Patrick Steinhardt
2024-05-07 18:06               ` Justin Tobler
2024-05-07 18:12                 ` Patrick Steinhardt

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=20240502193840.105355-1-jltobler@gmail.com \
    --to=jltobler@gmail.com \
    --cc=git@vger.kernel.org \
    --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 read-only IMAP folder(s) and NNTP newsgroup(s).