Skip to content

Commit f67e4e2

Browse files
committed
renovate setup
1 parent 2b5331e commit f67e4e2

3 files changed

Lines changed: 71 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
push:
55
branches:
66
- main
7+
- 'renovate/**'
78
pull_request:
89
branches:
910
- main

.github/workflows/renovate.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Renovate
2+
3+
on:
4+
# Run once per day at 6 AM UTC
5+
schedule:
6+
- cron: '0 6 * * *'
7+
# Allow manual trigger
8+
workflow_dispatch:
9+
inputs:
10+
dry_run:
11+
description: 'Run in dry-run mode (no PRs created)'
12+
required: false
13+
default: 'false'
14+
type: boolean
15+
16+
jobs:
17+
renovate:
18+
runs-on: ubuntu-latest
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@v4
22+
23+
- name: Run Renovate
24+
uses: renovatebot/github-action@v41.0.21
25+
with:
26+
configurationFile: renovate.json
27+
token: ${{ secrets.GITHUB_TOKEN }}
28+
env:
29+
LOG_LEVEL: info
30+
RENOVATE_DRY_RUN: ${{ inputs.dry_run == true && 'full' || '' }}

renovate.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [
4+
"config:recommended",
5+
":dependencyDashboard",
6+
":semanticCommits",
7+
"group:allNonMajor"
8+
],
9+
"labels": ["dependencies"],
10+
"rangeStrategy": "bump",
11+
"packageRules": [
12+
{
13+
"description": "Group all non-major updates together",
14+
"matchUpdateTypes": ["minor", "patch"],
15+
"groupName": "all non-major dependencies"
16+
},
17+
{
18+
"description": "Group all major updates together",
19+
"matchUpdateTypes": ["major"],
20+
"groupName": "all major dependencies"
21+
},
22+
{
23+
"description": "Group TypeScript ecosystem",
24+
"matchPackagePatterns": ["^typescript", "^@types/"],
25+
"groupName": "typescript"
26+
},
27+
{
28+
"description": "Group ESLint ecosystem",
29+
"matchPackagePatterns": ["eslint"],
30+
"groupName": "eslint"
31+
},
32+
{
33+
"description": "Group testing tools",
34+
"matchPackagePatterns": ["mocha", "chai", "sinon", "c8", "msw"],
35+
"groupName": "testing"
36+
}
37+
],
38+
"ignoreDeps": [],
39+
"schedule": ["before 6am on monday"]
40+
}

0 commit comments

Comments
 (0)