-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrenovate.json5
119 lines (119 loc) · 3.63 KB
/
renovate.json5
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
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base"
],
"enabled": true,
"semanticCommits": "enabled",
"dependencyDashboard": true,
"dependencyDashboardTitle": "Renovate Dashboard 🤖",
"suppressNotifications": ["prIgnoreNotification"],
"rebaseWhen": "conflicted",
"pre-commit": {
"enabled": true
},
"flux": {
"fileMatch": [".+\\.ya?ml$"]
},
"helm-values": {
"fileMatch": [".+\\.ya?ml$"]
},
"kubernetes": {
"fileMatch": [
".+\\.ya?ml$",
"provision/ansible/.+\\.ya?ml.j2$"
]
},
"regexManagers": [
{
"description": "Process CRD dependencies",
"fileMatch": ["crds/.+\\.ya?ml$"],
"matchStrings": [
// GitRepository and Flux Kustomization where 'Git release/tag' matches 'Helm' version
"registryUrl=(?<registryUrl>\\S+) chart=(?<depName>\\S+)\n.*?(?<currentValue>[^-\\s]*)\n",
// Kustomization where 'GitHub release artifact URL' matches 'Docker image' version
"datasource=(?<datasource>\\S+) image=(?<depName>\\S+)\n.*?-\\s(.*?)\/(?<currentValue>[^/]+)\/[^/]+\n"
],
"datasourceTemplate": "{{#if datasource}}{{{datasource}}}{{else}}helm{{/if}}"
},
{
"description": "Process various other dependencies",
"fileMatch": [
"provision/ansible/.+\\.ya?ml$",
".+\\.ya?ml$"
],
"matchStrings": [
"datasource=(?<datasource>\\S+) depName=(?<depName>\\S+)( versioning=(?<versioning>\\S+))?\n.*?\"(?<currentValue>.*)\"\n"
],
"datasourceTemplate": "{{#if datasource}}{{{datasource}}}{{else}}github-releases{{/if}}",
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
}
],
"packageRules": [
//automerge
{
"matchUpdateTypes": ["minor", "patch"],
"matchCurrentVersion": "!/^0/",
"automerge": true
},
{
"description": "Disable kubernetes-api",
"matchManagers": ["kubernetes"],
"matchDatasources": ["kubernetes-api"],
"enabled": false
},
// setup datasources
{
"matchDatasources": ["helm"],
"separateMinorPatch": true,
"ignoreDeprecated": true
},
// global docker datasource settings
{
"matchDatasources": ["docker"],
"enabled": true,
"commitMessageTopic": "container image {{depName}}",
"commitMessageExtra": "to {{#if isSingleVersion}}v{{{newVersion}}}{{else}}{{{newValue}}}{{/if}}",
"matchUpdateTypes": ["major", "minor", "patch"]
},
{
"description": "Group Cert-Manager image (for CRDs) and chart",
"groupName": "Cert-Manager",
"matchPackagePatterns": ["cert-manager"],
"matchDatasources": ["docker", "helm"],
"group": { "commitMessageTopic": "{{{groupName}}} group" },
"separateMinorPatch": true
},
// add labels according to package and update types
{
"matchDatasources": ["docker"],
"matchUpdateTypes": ["major"],
"labels": ["renovate/image", "dep/major"]
},
{
"matchDatasources": ["docker"],
"matchUpdateTypes": ["minor"],
"labels": ["renovate/image", "dep/minor"]
},
{
"matchDatasources": ["docker"],
"matchUpdateTypes": ["patch"],
"labels": ["renovate/image", "dep/patch"]
},
{
"matchDatasources": ["helm"],
"matchUpdateTypes": ["major"],
"labels": ["renovate/helm", "dep/major"]
},
{
"matchDatasources": ["helm"],
"matchUpdateTypes": ["minor"],
"labels": ["renovate/helm", "dep/minor"]
},
{
"matchDatasources": ["helm"],
"matchUpdateTypes": ["patch"],
"labels": ["renovate/helm", "dep/patch"]
}
]
}