This is an automated email from the ASF dual-hosted git repository.
jiacai2050 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-horaedb.git
The following commit(s) were added to refs/heads/main by this push:
new ebca8a78 chore: add auto-label-pr action (#1520)
ebca8a78 is described below
commit ebca8a7855d3001301cd14ef21521eacb8efac28
Author: chunshao.rcs <[email protected]>
AuthorDate: Fri Apr 26 11:45:07 2024 +0800
chore: add auto-label-pr action (#1520)
## Rationale
Automatically label the pr based on the pr title.
## Detailed Changes
Automatically label the pr based on the pr title.
## Test Plan
Manual test.
---
.github/workflows/auto-label-pr.yml | 60 +++++++++++++++++++++++++++++++++++++
1 file changed, 60 insertions(+)
diff --git a/.github/workflows/auto-label-pr.yml
b/.github/workflows/auto-label-pr.yml
new file mode 100644
index 00000000..c334e377
--- /dev/null
+++ b/.github/workflows/auto-label-pr.yml
@@ -0,0 +1,60 @@
+# 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: Auto Label PRs Based on Title
+
+on:
+ pull_request_target:
+ types: [opened, edited, synchronize]
+
+permissions:
+ pull-requests: write
+ contents: read
+
+jobs:
+ label:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v2
+
+ - name: Add Label Based on PR Title
+ uses: actions/github-script@v4
+ with:
+ github-token: ${{secrets.GITHUB_TOKEN}}
+ script: |
+ const patternMap = {
+ '!:': 'breaking-change',
+ 'feat:': 'feature',
+ 'fix:': 'bug',
+ 'docs:': 'docs',
+ 'refactor:': 'refactor',
+ 'chore:': 'chore'
+ };
+ const title = context.payload.pull_request.title.toLowerCase();
+ const labelsToAdd = Object.entries(patternMap)
+ .filter(([key, ]) => title.includes(key))
+ .map(([, label]) => label);
+
+ if (labelsToAdd.length > 0) {
+ await github.issues.addLabels({
+ issue_number: context.issue.number,
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ labels: labelsToAdd
+ });
+ }
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]