renovate.json 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. {
  2. "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  3. "extends": [
  4. "config:recommended",
  5. ":dependencyDashboard",
  6. ":enableVulnerabilityAlertsWithLabel('security')",
  7. ":preserveSemverRanges",
  8. ":rebaseStalePrs",
  9. "group:recommended"
  10. ],
  11. "labels": [
  12. "renovate"
  13. ],
  14. "ignorePaths": [],
  15. "useBaseBranchConfig": "merge",
  16. "packageRules": [
  17. {
  18. "groupName": "devDependencies (non-major)",
  19. "matchDepTypes": [
  20. "devDependencies",
  21. "require-dev"
  22. ],
  23. "matchUpdateTypes": [
  24. "digest",
  25. "minor",
  26. "patch"
  27. ]
  28. },
  29. {
  30. "description": "Update MariaDB or MySQL on a patch level only, bumps to major and minor versions might break compatibility with an application",
  31. "enabled": false,
  32. "matchManagers": [
  33. "custom.regex"
  34. ],
  35. "matchUpdateTypes": [
  36. "major",
  37. "minor"
  38. ],
  39. "matchPackageNames": [
  40. "/^([^/]+\\/)*(mariadb|mysql)(:.+)?$/"
  41. ]
  42. },
  43. {
  44. "description": "Update PostgreSQL on a minor version or patch level only, bumps to major versions might break compatibility with an application",
  45. "enabled": false,
  46. "matchManagers": [
  47. "custom.regex"
  48. ],
  49. "matchUpdateTypes": [
  50. "major"
  51. ],
  52. "matchPackageNames": [
  53. "/^([^/]+\\/)*postgres(:.+)?$/"
  54. ]
  55. },
  56. {
  57. "description": "Update MariaDB or PostgreSQL to the most recent release if they are standalone and not part of an application stack",
  58. "enabled": true,
  59. "matchManagers": [
  60. "custom.regex"
  61. ],
  62. "matchFileNames": [
  63. "library/compose/mariadb/**",
  64. "library/compose/postgres/**"
  65. ],
  66. "matchUpdateTypes": [
  67. "major",
  68. "minor",
  69. "patch"
  70. ],
  71. "matchPackageNames": [
  72. "/^([^/]+\\/)*(mariadb|postgres)(:.+)?$/"
  73. ]
  74. },
  75. {
  76. "description": "Do not match Canonical's Ubuntu version suffix as a compatibility hint",
  77. "matchManagers": [
  78. "custom.regex"
  79. ],
  80. "versioning": "regex:^(?<major>\\d+)\\.(?<minor>\\d+)(\\.(?<patch>\\d+))?(?:-\\d+(?:\\.\\d+)+_edge)?$",
  81. "matchPackageNames": [
  82. "/^([^/]+\\/)*ubuntu/bind9(:.+)?$/"
  83. ]
  84. },
  85. {
  86. "description": "Catch a potential `security` suffix as part of the patch release as Grafana does not follow semver for security releases",
  87. "matchManagers": [
  88. "custom.regex"
  89. ],
  90. "versioning": "regex:^(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+(?:-security-\\d+)?)$",
  91. "matchPackageNames": [
  92. "/^([^/]+\\/)*grafana/grafana-oss(:.+)?$/"
  93. ]
  94. },
  95. {
  96. "description": "Over time Heimdall changed its versioning schema several times, ensure we only consider the current style",
  97. "matchManagers": [
  98. "custom.regex"
  99. ],
  100. "versioning": "regex:^(?<major>\\d{1,2})\\.(?<minor>\\d+)(\\.(?<patch>\\d+))?$",
  101. "matchPackageNames": [
  102. "/^([^/]+\\/)*heimdall(:.+)?$/"
  103. ]
  104. },
  105. {
  106. "description": "Track stable releases of Nginx only",
  107. "matchManagers": [
  108. "custom.regex"
  109. ],
  110. "versioning": "regex:^(?<major>\\d+)\\.(?<minor>\\d*[02468])(\\.(?<patch>\\d+))?(?:-(?<compatibility>.*))?$",
  111. "matchPackageNames": [
  112. "/^([^/]+\\/)*nginx(:.+)?$/"
  113. ]
  114. },
  115. {
  116. "description": "Ignore erroneous version tags of Semaphore",
  117. "matchManagers": [
  118. "custom.regex"
  119. ],
  120. "allowedVersions": "!/^v?2\\.19\\.10$/",
  121. "matchPackageNames": [
  122. "/^([^/]+\\/)*semaphore(:.+)?$/"
  123. ]
  124. }
  125. ],
  126. "customManagers": [
  127. {
  128. "customType": "regex",
  129. "description": "Update Docker images in Jinja2 compose templates",
  130. "fileMatch": [
  131. "^library/compose/.+\\.j2$"
  132. ],
  133. "matchStrings": [
  134. "image:\\s*(?<depName>[^:\\s]+):(?<currentValue>[^\\s\\n{]+)"
  135. ],
  136. "datasourceTemplate": "docker"
  137. },
  138. {
  139. "customType": "regex",
  140. "description": "Update Docker images in Helm values.yaml (repository + tag pattern)",
  141. "fileMatch": [
  142. "^library/kubernetes/.+/helm/values\\.ya?ml$",
  143. "^library/kubernetes/.+\\.j2$"
  144. ],
  145. "matchStrings": [
  146. "repository:\\s*[\"']?(?<depName>[^:\\s\"']+)[\"']?\\s*\\n\\s*tag:\\s*[\"']?(?<currentValue>[^\\s\"']+)[\"']?"
  147. ],
  148. "datasourceTemplate": "docker"
  149. },
  150. {
  151. "customType": "regex",
  152. "description": "Update Terraform/OpenTofu providers and modules in templates",
  153. "fileMatch": [
  154. "^library/terraform/.+\\.tf$",
  155. "^library/terraform/.+\\.j2$"
  156. ],
  157. "matchStrings": [
  158. "(?:source|module)\\s*=\\s*[\"'](?<depName>[^\"']+)[\"'](?:[\\s\\S]*?)version\\s*=\\s*[\"'](?<currentValue>[^\"']+)[\"']"
  159. ],
  160. "datasourceTemplate": "terraform-provider"
  161. }
  162. ],
  163. "gitAuthor": "github-actions[bot] <github-actions[bot]@users.noreply.github.com>",
  164. "separateMinorPatch": true,
  165. "stopUpdatingLabel": "renovate/stop_updating"
  166. }