Skip to content

Commit 32e08de

Browse files
committed
ci: add release config, contributors and dependabot auto-merge workflows
1 parent c3cfff4 commit 32e08de

3 files changed

Lines changed: 98 additions & 0 deletions

File tree

.github/release.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# GitHub auto-generated release notes configuration
2+
# Categorizes merged PRs by label in release notes
3+
changelog:
4+
categories:
5+
- title: "Features"
6+
labels: [enhancement, feature]
7+
- title: "Bug Fixes"
8+
labels: [bug, fix]
9+
- title: "Documentation"
10+
labels: [documentation, docs]
11+
- title: "Maintenance"
12+
labels: [chore, refactor, dependencies]
13+
- title: "Testing"
14+
labels: [test, testing]
15+
- title: "Other Changes"
16+
labels: ["*"]
17+
exclude:
18+
labels: [skip-changelog]

.github/workflows/contributors.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Generator Contributors
2+
on:
3+
workflow_dispatch:
4+
workflow_run:
5+
workflows: ["Generate changelog"]
6+
types:
7+
- completed
8+
9+
permissions:
10+
contents: write
11+
12+
jobs:
13+
update_contributors:
14+
name: Update Contributors
15+
runs-on: ubuntu-latest
16+
if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'workflow_dispatch' }}
17+
18+
steps:
19+
- uses: actions/checkout@v6
20+
with:
21+
token: ${{ secrets.PAT_TOKEN }}
22+
fetch-depth: 0
23+
24+
- name: Pull latest changes
25+
run: git pull origin main
26+
27+
- name: Get contributors
28+
run: |
29+
{
30+
echo "# Contributors"
31+
echo ""
32+
echo "Contributions are welcome! Please feel free to submit a Pull Request."
33+
echo ""
34+
echo "## Contributors List"
35+
echo ""
36+
echo "Thanks goes to these wonderful people:"
37+
echo ""
38+
curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
39+
-H "Accept: application/vnd.github.v3+json" \
40+
"https://api.github.com/repos/${{ github.repository }}/contributors" | \
41+
jq -r '.[] | select(.type != "Bot" and .login != "github-actions[bot]" and .login != "actions-user" and .login != "somaz94") | "- [@\(.login)](\(.html_url))"' | \
42+
sort
43+
} > CONTRIBUTORS.md
44+
45+
- name: Commit changes
46+
uses: somaz94/go-git-commit-action@v1
47+
with:
48+
user_email: actions@github.com
49+
user_name: GitHub Actions
50+
commit_message: "docs: update CONTRIBUTORS.md"
51+
branch: main
52+
file_pattern: "CONTRIBUTORS.md"
53+
github_token: ${{ secrets.PAT_TOKEN }}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Dependabot auto-merge
2+
3+
on:
4+
pull_request:
5+
types: [opened, synchronize, reopened]
6+
7+
permissions:
8+
contents: write
9+
pull-requests: write
10+
11+
jobs:
12+
auto-merge:
13+
runs-on: ubuntu-latest
14+
if: github.actor == 'dependabot[bot]'
15+
steps:
16+
- name: Dependabot metadata
17+
id: metadata
18+
uses: dependabot/fetch-metadata@v2
19+
with:
20+
github-token: "${{ secrets.GITHUB_TOKEN }}"
21+
22+
- name: Auto-merge minor and patch updates
23+
if: steps.metadata.outputs.update-type == 'version-update:semver-minor' || steps.metadata.outputs.update-type == 'version-update:semver-patch'
24+
run: gh pr merge --auto --squash "$PR_URL"
25+
env:
26+
PR_URL: ${{ github.event.pull_request.html_url }}
27+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)