-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathrenovate-config.json5
More file actions
120 lines (120 loc) · 4.35 KB
/
renovate-config.json5
File metadata and controls
120 lines (120 loc) · 4.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
{
// see https://docs.renovatebot.com/configuration-options
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"branchNameStrict": true, // remove special characters from branch names
"configMigration": true, // allow renovate to open PRs to update config
"constraintsFiltering": "strict", // ensure dependencies are compatible with dependency constraints
"description": "Default renovate configuration for LizardByte repositories",
"dependencyDashboard": true, // Creates an issue with a "dashboard" of dependencies
"dependencyDashboardLabels": [
"dependencies"
],
"extends": [
"config:recommended",
"group:recommended",
":semanticCommits",
":semanticCommitTypeAll(chore)",
],
"forkProcessing": "enabled",
"labels": [
"dependencies",
"{{category}}"
],
"prConcurrentLimit": 10,
"rebaseWhen": "never", // to reduce CI load, do not auto rebase PRs
"rollbackPrs": true, // create a rollback PR when a dependency is yanked
"schedule": [
"after 1am",
"before 8am"
],
"semanticCommitScope": "deps",
"semanticCommitType": "chore",
"semanticCommits": "enabled",
"separateMultipleMajor": true, // create separate PRs for major updates
"timezone": "America/New_York",
"updatePinnedDependencies": true,
// beta features
"git-submodules": {
"enabled": false // renovate cannot update to tagged submodules, so keep using dependabot for this
},
// group/package rules
"packageRules": [
// Keep Debian Docker tags on plain codenames or major versions, not dated rebuild tags.
{
"matchDatasources": ["docker"],
"matchPackageNames": [
"debian",
],
"matchCurrentValue": "/^(?:[a-z]+|\\d+)(?:-[a-z]+)?$/",
"allowedVersions": "/^(?:[a-z]+|\\d+)(?:-[a-z]+)?$/"
},
// Group GitHub maintained actions
{
"groupName": "Official GitHub Actions",
"groupSlug": "github-actions",
"matchManagers": [
"github-actions"
],
"matchPackageNames": [
"actions/**",
"github/**"
],
},
// Group docker actions
{
"groupName": "Docker Actions",
"groupSlug": "docker-actions",
"matchManagers": [
"github-actions"
],
"matchPackageNames": [
"docker/**",
],
},
// Group pytest
{
"groupName": "pytest",
"matchCategories": [
"python",
],
"matchPackageNames": [
"pytest*",
],
},
// combine oddstr13/jellyfin-plugin-repository-manager and pypi jprm into a single group
{
"groupName": "jprm",
"matchCategories": [
"ci",
"python",
],
"matchPackageNames": [
"oddstr13/jellyfin-plugin-repository-manager",
"jprm",
],
},
],
"customManagers": [
// CPM Package Lock
{
"customType": "regex",
"managerFilePatterns": ["/(^|\/)package-lock.cmake$/"],
"matchStrings": [
"# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\s]+?)(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)packageName=(?<packageName>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)versioning=(?<versioning>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)extractVersion=(?<extractVersion>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)registryUrl=(?<registryUrl>[^\\s]+?))?\\s+set\\([A-Za-z0-9_]+?_(?:VERSION|TAG)\\s+\\\"?(?<currentValue>[^\\\"\\s\\)]+)\\\"?\\s*\\)",
"# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\s]+?)(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)packageName=(?<packageName>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)versioning=(?<versioning>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)extractVersion=(?<extractVersion>[^\\s]+?))?(?:(?:[ \\t]+|\\s*\\r?\\n#\\s*)registryUrl=(?<registryUrl>[^\\s]+?))?\\s+set\\([A-Za-z0-9_]+?_(?:VERSION|TAG)\\s+\\\"?(?<currentValue>[^\\\"\\s\\)]+)\\\"?\\s*\\)\\s+set\\([A-Za-z0-9_]+?_SHA256\\s+(?<currentDigest>[a-fA-F0-9]{64})\\s*\\)",
],
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{/if}}"
},
// Rust toolchain
{
"customType": "regex",
"managerFilePatterns": ["/(^|\/)rust-toolchain.toml$/"],
"matchStrings": [
"channel[ \\t]*=[ \\t]*\"(?<currentValue>[^\"\\r\\n]+)\"",
],
"datasourceTemplate": "github-tags",
"depNameTemplate": "rust-lang/rust",
"versioningTemplate": "rust-release-channel"
},
],
}