forked from mason-org/mason-registry
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrenovate.json5
107 lines (107 loc) · 4.45 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
{
automerge: true,
dependencyDashboard: true,
platformAutomerge: true,
automergeType: "pr",
commitMessage: "bump({{decodeURIComponent depName}}): update {{commitMessageExtra}}",
separateMajorMinor: false,
prHourlyLimit: 0,
prConcurrentLimit: 0,
branchConcurrentLimit: 0,
rebaseWhen: "conflicted",
enabledManagers: ["regex"],
regexManagers: [
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\n id:\\s+pkg:github\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
"\nname: (?<depName>.+)",
"# renovate:datasource=git-refs[\\s\\S]*pkg:github\\/(?<packageName>.+)@(?<currentDigest>[^\\s\\?#]+)",
"# renovate:.*versioning=(?<versioning>[^,\n]+)",
"# renovate:.*datasource=(?<datasource>[^,\n]+)",
],
datasourceTemplate: "{{#if datasource}}{{{datasource}}}{{else}}github-releases{{/if}}",
versioningTemplate: "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}",
packageNameTemplate: "{{#if (containsString datasource 'git-refs')}}https://github.com/{{{packageName}}}{{else}}{{{packageName}}}{{/if}}",
currentValueTemplate: "{{#if (containsString datasource 'git-refs')}}{{else}}{{{decodeURIComponent currentValue}}}{{/if}}",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:cargo\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
"\\?.*repository_url=(?<githubRepo>https:\\/\\/github\\.com)\\/(?<packageName>[^\\s&]+)",
"# renovate:.*versioning=(?<versioning>[^,\n]+)",
],
datasourceTemplate: "{{#if githubRepo}}github-tags{{else}}crate{{/if}}",
// In cargo versioning, "1.2.3" doesn't mean "exactly 1.2.3" but rather ">=1.2.3 <2.0.0".
// We on the other hand do want to treat versions as fixed - so we change versioning strategy.
versioningTemplate: "semver",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:golang\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
],
datasourceTemplate: "go",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:gem\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
],
datasourceTemplate: "rubygems",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:composer\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
],
datasourceTemplate: "packagist",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:(?<datasource>npm|pypi|nuget)\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
],
datasourceTemplate: "{{datasource}}",
},
{
fileMatch: "package\\.yaml$",
matchStringsStrategy: "combination",
matchStrings: [
"\nname: (?<depName>.+)",
"\n id:\\s+pkg:generic\\/(?<packageName>.+)@(?<currentValue>[^\\s\\?#]+)",
"# renovate:.*versioning=(?<versioning>[^,\n]+)",
"# renovate:.*datasource=(?<datasource>[^,\n]+)",
],
datasourceTemplate: "{{{datasource}}}",
versioningTemplate: "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}",
currentValueTemplate: "{{{decodeURIComponent currentValue}}}",
},
],
packageRules: [
{
matchDepNames: ["cucumber-language-server"],
allowedVersions: "!/^1\\.[34]\\.0/"
},
{
matchDepNames: ["rustfmt"],
allowedVersions: "<=1.5.1"
},
{
matchDepNames: ["tectonic"],
allowedVersions: "^tectonic@"
}
]
}