|
1 | 1 | {
|
2 |
| - "$schema": "https://docs.renovatebot.com/renovate-schema.json", |
3 |
| - "extends": ["group:monorepos"], |
4 |
| - "dependencyDashboard": true, |
5 |
| - "rangeStrategy": "replace", |
| 2 | + '$schema': 'https://docs.renovatebot.com/renovate-schema.json', |
| 3 | + 'extends': ['group:monorepos'], |
| 4 | + 'dependencyDashboard': true, |
| 5 | + 'rangeStrategy': 'replace', |
6 | 6 |
|
7 | 7 | // Schedule Renovate to run during off-peak hours
|
8 |
| - "schedule": [ |
9 |
| - "after 10:00pm every weekday", |
10 |
| - "before 5:00am every weekday", |
11 |
| - "every weekend" |
12 |
| - ], |
13 |
| - "prConcurrentLimit": 8, |
14 |
| - "prHourlyLimit": 4, |
15 |
| - "timezone": "America/Tijuana", |
| 8 | + 'schedule': ['after 10:00pm every weekday', 'before 5:00am every weekday', 'every weekend'], |
| 9 | + 'prConcurrentLimit': 8, |
| 10 | + 'prHourlyLimit': 4, |
| 11 | + 'timezone': 'America/Tijuana', |
16 | 12 |
|
17 | 13 | // Commit and PR customization
|
18 |
| - "commitBody": "See associated pull request for more information.", |
19 |
| - "semanticCommits": "enabled", |
20 |
| - "semanticCommitScope": "", |
21 |
| - "semanticCommitType": "build", |
22 |
| - "labels": ["area: build & ci", "action: review"], |
23 |
| - |
24 |
| - "lockFileMaintenance": { |
25 |
| - "enabled": true |
| 14 | + 'commitBody': 'See associated pull request for more information.', |
| 15 | + 'semanticCommits': 'enabled', |
| 16 | + 'semanticCommitScope': '', |
| 17 | + 'semanticCommitType': 'build', |
| 18 | + 'labels': ['area: build & ci', 'action: review'], |
| 19 | + |
| 20 | + 'lockFileMaintenance': { |
| 21 | + 'enabled': true, |
26 | 22 | },
|
27 | 23 |
|
28 | 24 | // Ignored dependencies in all repositories
|
29 |
| - "ignoreDeps": [ |
30 |
| - "build_bazel_rules_nodejs", |
31 |
| - "rules_pkg" |
| 25 | + 'ignoreDeps': [ |
| 26 | + 'build_bazel_rules_nodejs', |
| 27 | + 'rules_pkg', |
| 28 | + 'yarn', // Yarn is copied locally in all repositories where needed. |
32 | 29 | ],
|
33 | 30 |
|
34 |
| - "packageRules": [ |
| 31 | + 'packageRules': [ |
35 | 32 | // ============================================================================
|
36 | 33 | // GENERAL GROUPING & UPDATE BEHAVIOR
|
37 | 34 | // ============================================================================
|
38 | 35 |
|
39 | 36 | // Group all non-major updates (minor and patch) together
|
40 | 37 | {
|
41 |
| - "groupName": "all non-major dependencies", |
42 |
| - "matchPackageNames": [ |
43 |
| - "*", |
44 |
| - "!node", |
45 |
| - "!pnpm", |
46 |
| - "!npm", |
47 |
| - "!yarn" |
48 |
| - ], |
49 |
| - "matchUpdateTypes": ["digest", "patch", "minor"] |
| 38 | + 'groupName': 'all non-major dependencies', |
| 39 | + 'matchPackageNames': ['*', '!node', '!pnpm', '!npm', '!yarn'], |
| 40 | + 'matchUpdateTypes': ['digest', 'patch', 'minor'], |
50 | 41 | },
|
51 | 42 |
|
52 | 43 | // ============================================================================
|
|
55 | 46 |
|
56 | 47 | // Group Bazel updates
|
57 | 48 | {
|
58 |
| - "groupName": "bazel dependencies", |
59 |
| - "matchManagers": ["bazel"] |
| 49 | + 'groupName': 'bazel dependencies', |
| 50 | + 'matchManagers': ['bazel'], |
60 | 51 | },
|
61 | 52 |
|
62 | 53 | // ============================================================================
|
|
65 | 56 |
|
66 | 57 | // Group updates related to Angular ecosystem across repositories
|
67 | 58 | {
|
68 |
| - "groupName": "cross-repo angular dependencies", |
69 |
| - "followTag": "next", |
70 |
| - "separateMajorMinor": false, |
71 |
| - "schedule": ["at any time"], |
72 |
| - "matchPackageNames": [ |
73 |
| - "@angular-devkit/**", |
74 |
| - "@angular/**", |
75 |
| - "@schematics/**", |
76 |
| - "angular/**", |
77 |
| - "ng-packagr" |
78 |
| - ] |
| 59 | + 'groupName': 'cross-repo angular dependencies', |
| 60 | + 'followTag': 'next', |
| 61 | + 'separateMajorMinor': false, |
| 62 | + 'schedule': ['at any time'], |
| 63 | + 'matchPackageNames': [ |
| 64 | + '@angular-devkit/**', |
| 65 | + '@angular/**', |
| 66 | + '@schematics/**', |
| 67 | + 'angular/**', |
| 68 | + 'ng-packagr', |
| 69 | + ], |
79 | 70 | },
|
80 | 71 |
|
81 | 72 | // Disable 'next' tag tracking on non-main branches
|
82 | 73 | {
|
83 |
| - "matchBaseBranches": ["!main"], |
84 |
| - "followTag": null |
| 74 | + 'matchBaseBranches': ['!main'], |
| 75 | + 'followTag': null, |
85 | 76 | },
|
86 | 77 |
|
87 | 78 | // Keep minor and patch updates separate for TypeScript
|
88 | 79 | {
|
89 |
| - "matchPackageNames": ["typescript"], |
90 |
| - "separateMinorPatch": true |
| 80 | + 'matchPackageNames': ['typescript'], |
| 81 | + 'separateMinorPatch': true, |
91 | 82 | },
|
92 | 83 |
|
93 | 84 | // Group TypeScript-related packages
|
94 | 85 | {
|
95 |
| - "groupName": "typescript dependencies", |
96 |
| - "matchPackageNames": ["typescript", "tslib"] |
| 86 | + 'groupName': 'typescript dependencies', |
| 87 | + 'matchPackageNames': ['typescript', 'tslib'], |
97 | 88 | },
|
98 | 89 |
|
99 | 90 | // Limit how many times these packages get updated (They deploy each merged PR)
|
100 | 91 | {
|
101 |
| - "matchPackageNames": ["renovate", "quicktype-core"], |
102 |
| - "schedule": ["on sunday and wednesday"] |
| 92 | + 'matchPackageNames': ['renovate', 'quicktype-core'], |
| 93 | + 'schedule': ['on sunday and wednesday'], |
103 | 94 | },
|
104 | 95 |
|
105 | 96 | // ============================================================================
|
|
108 | 99 |
|
109 | 100 | // Group dependencies in the scorecard GitHub Actions workflow
|
110 | 101 | {
|
111 |
| - "groupName": "scorecard action dependencies", |
112 |
| - "matchFileNames": [".github/workflows/scorecard.yml"], |
113 |
| - "matchPackageNames": ["*"] |
| 102 | + 'groupName': 'scorecard action dependencies', |
| 103 | + 'matchFileNames': ['.github/workflows/scorecard.yml'], |
| 104 | + 'matchPackageNames': ['*'], |
114 | 105 | },
|
115 | 106 |
|
116 | 107 | // ============================================================================
|
|
119 | 110 |
|
120 | 111 | // Disable updates for placeholder or 0.0.0-style versions
|
121 | 112 | {
|
122 |
| - "enabled": false, |
123 |
| - "matchCurrentVersion": "/^[~^]?0\\.0\\.0-/" |
| 113 | + 'enabled': false, |
| 114 | + 'matchCurrentVersion': '/^[~^]?0\\.0\\.0-/', |
124 | 115 | },
|
125 | 116 |
|
126 | 117 | // Disable major updates for specified dependencies
|
127 | 118 | {
|
128 |
| - "enabled": false, |
129 |
| - "matchPackageNames": [ |
130 |
| - "@types/node", |
131 |
| - "node", |
132 |
| - "npm", |
133 |
| - "pnpm", |
134 |
| - "rxjs", |
135 |
| - "tslib", |
136 |
| - "yarn" |
| 119 | + 'enabled': false, |
| 120 | + 'matchDepNames': [ |
| 121 | + 'bazel', // bazelisk bazel verison |
137 | 122 | ],
|
138 |
| - "matchUpdateTypes": ["major"] |
| 123 | + 'matchPackageNames': [ |
| 124 | + '@types/node', |
| 125 | + 'node', |
| 126 | + 'npm', |
| 127 | + 'pnpm', |
| 128 | + 'rxjs', |
| 129 | + 'tslib', |
| 130 | + 'yarn', |
| 131 | + ], |
| 132 | + 'matchUpdateTypes': ['major'], |
139 | 133 | },
|
140 | 134 |
|
141 | 135 | // Disable TypeScript major and minor updates
|
142 | 136 | {
|
143 |
| - "enabled": false, |
144 |
| - "matchPackageNames": ["typescript"], |
145 |
| - "matchUpdateTypes": ["major", "minor"] |
146 |
| - } |
147 |
| - ] |
| 137 | + 'enabled': false, |
| 138 | + 'matchPackageNames': ['typescript'], |
| 139 | + 'matchUpdateTypes': ['major', 'minor'], |
| 140 | + }, |
| 141 | + ], |
148 | 142 | }
|
0 commit comments