You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by kw...@apache.org on 2025/01/02 10:17:54 UTC

(jackrabbit-oak) branch trunk updated: OAK-11269 Commit Message Check (#1913)

This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 26e6eeb249 OAK-11269 Commit Message Check (#1913)
26e6eeb249 is described below

commit 26e6eeb24914003028971e759beaac58e05b6a2a
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Thu Jan 2 11:17:48 2025 +0100

    OAK-11269 Commit Message Check (#1913)
    
    Revert "Revert "OAK-11269 add dedicated workflow for checking commit messages (#1865)"
    Add license headers to newly added files
---
 .commit-check.yml                  | 32 +++++++++++++++++++++++++
 .github/workflows/build.yml        |  2 +-
 .github/workflows/commit-check.yml | 49 ++++++++++++++++++++++++++++++++++++++
 .github/workflows/stale.yml        |  2 +-
 4 files changed, 83 insertions(+), 2 deletions(-)

diff --git a/.commit-check.yml b/.commit-check.yml
new file mode 100644
index 0000000000..a322982e55
--- /dev/null
+++ b/.commit-check.yml
@@ -0,0 +1,32 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# format as outlined in https://github.com/commit-check/commit-check/blob/main/.commit-check.yml
+# further information in https://github.com/commit-check/commit-check/blob/main/README.rst
+checks:
+  - check: message
+    regex: '^OAK-\d+\s\S+.*'
+    error: "The commit message must start with 'OAK-<ID> ' followed by some descriptive text"
+    suggest: Please check your commit message whether it matches above regex
+
+  - check: author_name
+    regex: ^[A-Za-z ,.\'-]+$|.*(\[bot])
+    error: The committer name seems invalid
+    suggest: run command `git config user.name "Your Name"`
+
+  - check: author_email
+    regex: ^.+@.+$
+    error: The committer email seems invalid
+    suggest: run command `git config user.email yourname@example.com`
\ No newline at end of file
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 1248deb89b..59f24c8ad8 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -1,4 +1,4 @@
-#   ~ Licensed to the Apache Software Foundation (ASF) under one
+#  ~ Licensed to the Apache Software Foundation (ASF) under one
 #  ~ or more contributor license agreements.  See the NOTICE file
 #  ~ distributed with this work for additional information
 #  ~ regarding copyright ownership.  The ASF licenses this file
diff --git a/.github/workflows/commit-check.yml b/.github/workflows/commit-check.yml
new file mode 100644
index 0000000000..1274e20d90
--- /dev/null
+++ b/.github/workflows/commit-check.yml
@@ -0,0 +1,49 @@
+#  ~ Licensed to the Apache Software Foundation (ASF) under one
+#  ~ or more contributor license agreements.  See the NOTICE file
+#  ~ distributed with this work for additional information
+#  ~ regarding copyright ownership.  The ASF licenses this file
+#  ~ to you under the Apache License, Version 2.0 (the
+#  ~ "License"); you may not use this file except in compliance
+#  ~ with the License.  You may obtain a copy of the License at
+#  ~
+#  ~   http://www.apache.org/licenses/LICENSE-2.0
+#  ~
+#  ~ Unless required by applicable law or agreed to in writing,
+#  ~ software distributed under the License is distributed on an
+#  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  ~ KIND, either express or implied.  See the License for the
+#  ~ specific language governing permissions and limitations
+#  ~ under the License.
+
+name: Commit Check
+
+on:
+  pull_request:
+    branches: 'trunk'
+
+jobs:
+  commit-check:
+    runs-on: ubuntu-latest
+    permissions:  # use permissions because of use pr-comments
+      contents: read
+      pull-requests: write
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          ref: ${{ github.event.pull_request.head.sha }}  # checkout PR HEAD commit
+          fetch-depth: 0  # required for merge-base check
+      # https://github.com/commit-check
+      # must be pinned due to https://infra.apache.org/github-actions-policy.html
+      - uses: commit-check/commit-check-action@8d507e12899a9feb405c3ed546252ff9508724e0
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # use GITHUB_TOKEN because of use pr-comments
+        with:
+          # check commit message formatting convention
+          message: true
+          branch: true
+          author-name: true
+          author-email: true
+          commit-signoff: false
+          merge-base: false
+          job-summary: true
+          pr-comments: ${{ github.event_name == 'pull_request' }}
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
index df6c193b09..68925cd7f6 100644
--- a/.github/workflows/stale.yml
+++ b/.github/workflows/stale.yml
@@ -1,4 +1,4 @@
-#   ~ Licensed to the Apache Software Foundation (ASF) under one
+#  ~ Licensed to the Apache Software Foundation (ASF) under one
 #  ~ or more contributor license agreements.  See the NOTICE file
 #  ~ distributed with this work for additional information
 #  ~ regarding copyright ownership.  The ASF licenses this file