Renovate는 프로젝트의 의존성을 자동으로 탐지하고 업데이트 PR을 생성하는 도구다. npm, pip, Maven, Docker, GitHub Actions 등 수십 개의 패키지 매니저를 지원한다.
| 항목 | Renovate | Dependabot |
|---|
| 플랫폼 | GitHub/GitLab/Bitbucket 등 | GitHub |
| 그루핑 | 지원 (패키지 그룹화) | 제한적 |
| 스케줄 | 세밀한 설정 | 기본 설정 |
| 자동 머지 | 지원 | 지원 |
| 모노레포 | 우수한 지원 | 기본 |
| 설정 유연성 | 매우 높음 | 낮음 |
renovate.json 설정
json
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:base"],
"timezone": "Asia/Seoul",
"schedule": ["after 9pm on monday"],
"prConcurrentLimit": 5,
"automerge": true,
"automergeType": "pr",
"packageRules": [
{
"matchDepTypes": ["devDependencies"],
"matchUpdateTypes": ["minor", "patch"],
"automerge": true,
"groupName": "dev dependencies"
},
{
"matchPackagePatterns": ["^@types/"],
"automerge": true,
"groupName": "TypeScript types"
},
{
"matchPackageNames": ["node"],
"matchDepTypes": ["engines"],
"enabled": false
}
],
"vulnerabilityAlerts": {
"enabled": true,
"automerge": true
}
}
관련 문서