-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrenovate.json5
More file actions
76 lines (70 loc) · 2.5 KB
/
Copy pathrenovate.json5
File metadata and controls
76 lines (70 loc) · 2.5 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
// Renovate configuration file
// This configuration file is used by Renovate Bot to automate dependency updates in the project
// Renovate Bot is configured to run on the self-hosted git repository (Forgejo)
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base",
":timezone(Europe/Madrid)",
":semanticCommits"
],
"prHourlyLimit": 0,
"prConcurrentLimit": 0,
"includePaths": [
"home-lab/**/*.yml",
"home-lab/**/*.yaml"
],
"prCreation": "immediate",
"rebaseWhen": "behind-base-branch",
"labels": [
"renovate"
],
"enabledManagers": ["regex"],
"regexManagers": [
{
"description": "Update image versions inside host-specific apps.yml files",
"fileMatch": [
"home-lab/ansible/inventory/host_vars/[^/]+/apps?\\.ya?ml$"
],
"matchStrings": [
"(?m)^\\s*(?<variableName>\\w+_image):\\s*['\"]?(?<depName>[^:'\"\\s]+):\\s*(?<currentValue>[^\"'\\s]+)['\"]?"
],
"datasourceTemplate": "docker",
"versioningTemplate": "docker"
}
],
"packageRules": [
{
"description": "Group minor and patch updates per server and enable automerge",
"matchFileNames": [
"home-lab/ansible/inventory/host_vars/**/apps.yml",
"home-lab/ansible/inventory/host_vars/**/app.yml"
],
"matchUpdateTypes": ["minor", "patch"],
"matchCurrentVersion": "/^v?[1-9]/",
"groupName": "Update applications on {{{replace 'home-lab/ansible/inventory/host_vars/' '' packageFileDir}}}",
"automerge": false,
},
{
"description": "Separate minor updates for 0.x.y versions into individual PRs per application and per file",
"matchFileNames": [
"home-lab/ansible/inventory/host_vars/**/apps.yml",
"home-lab/ansible/inventory/host_vars/**/app.yml"
],
"matchUpdateTypes": ["minor"],
"matchCurrentVersion": "< 1.0.0",
"groupName": "Update {{{depName}}} to minor version on {{{replace 'home-lab/ansible/inventory/host_vars/' '' packageFileDir}}}",
"automerge": false
},
{
"description": "Ensure major updates create separate PRs per application AND per file",
"matchFileNames": [
"home-lab/ansible/inventory/host_vars/**/apps.yml",
"home-lab/ansible/inventory/host_vars/**/app.yml"
],
"matchUpdateTypes": ["major"],
"groupName": "Update {{{depName}}} to major version on {{{replace 'home-lab/ansible/inventory/host_vars/' '' packageFileDir}}}",
"automerge": false
}
]
}