mirror of
https://github.com/maxlerebourg/crowdsec-bouncer-traefik-plugin.git
synced 2026-09-02 12:28:50 +02:00
* ✨ cicd: bump the version before tagging instead of after The version reported to the Crowdsec LAPI lives in version.go, so it must be correct in the very commit the tag points at. Every mechanism so far updated it *after* the tag existed, which cannot work: - release.yml ran on `release: published` and force-moved the tag. It also failed on all four of its runs and was removed in #360. - The Renovate customManager on version.go uses the github-tags datasource, so it can only propose vX once vX is already tagged. The bump always lands after the tag. Result: v1.7.0 is tagged at a commit reading v1.6.0 (#363), same shape as the earlier #322. Replace both with a two-step flow that bumps first and tags last, so the released source always matches its tag. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * 🍱 reduce loc + remove claude code comment * 🍱 remove useless spellcheck disable --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> Co-authored-by: maxlerebourg <maxlerebourg@gmail.com>
78 lines
3.1 KiB
JSON
78 lines
3.1 KiB
JSON
{
|
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
"extends": ["config:recommended"],
|
|
"gitAuthor": "Renovate Bot <22881669+maxlerebourg@users.noreply.github.com>",
|
|
"fetchChangeLogs": "off",
|
|
"labels": ["dependencies"],
|
|
"ignorePaths": ["**/vendor/**", "**/node_modules/**"],
|
|
"rangeStrategy": "bump",
|
|
"prConcurrentLimit": 1,
|
|
"branchPrefix": "renovate/",
|
|
"commitMessagePrefix": "⬆️ renovate: ",
|
|
"groupName": "all",
|
|
"dependencyDashboard": false,
|
|
"packageRules": [
|
|
{
|
|
"description": "Cap the Go version at what yaegi supports. The plugin is interpreted by yaegi (bundled in Traefik), and even Traefik v3.7.1 ships yaegi v0.16.1 = Go 1.22. A newer Go would break the plugin on every current Traefik. Raise this only once Traefik ships a yaegi supporting a newer Go.",
|
|
"matchManagers": ["gomod"],
|
|
"matchDepNames": ["go", "toolchain"],
|
|
"allowedVersions": "<1.23"
|
|
},
|
|
{
|
|
"description": "whoami is a throwaway demo backend; leave it on latest",
|
|
"matchPackageNames": ["traefik/whoami"],
|
|
"enabled": false
|
|
}
|
|
],
|
|
"customManagers": [
|
|
{
|
|
"description": "Plugin self-pin in docker-compose CLI args (--experimental.plugins.bouncer.version=vX)",
|
|
"customType": "regex",
|
|
"managerFilePatterns": ["/(^|/)docker-compose[^/]*\\.ya?ml$/"],
|
|
"matchStrings": [
|
|
"experimental\\.plugins\\.bouncer\\.version=(?<currentValue>v[0-9]+\\.[0-9]+\\.[0-9]+)"
|
|
],
|
|
"depNameTemplate": "maxlerebourg/crowdsec-bouncer-traefik-plugin",
|
|
"datasourceTemplate": "github-tags"
|
|
},
|
|
{
|
|
"description": "Plugin self-pin in the Traefik Helm values (version: \"vX\")",
|
|
"customType": "regex",
|
|
"managerFilePatterns": ["/^examples/kubernetes/traefik/values\\.ya?ml$/"],
|
|
"matchStrings": [
|
|
"version:\\s*\"(?<currentValue>v[0-9]+\\.[0-9]+\\.[0-9]+)\""
|
|
],
|
|
"depNameTemplate": "maxlerebourg/crowdsec-bouncer-traefik-plugin",
|
|
"datasourceTemplate": "github-tags"
|
|
},
|
|
{
|
|
"description": "Traefik image tag in the Traefik Helm values (no repository key, so match by file)",
|
|
"customType": "regex",
|
|
"managerFilePatterns": ["/^examples/kubernetes/traefik/values\\.ya?ml$/"],
|
|
"matchStrings": ["tag:\\s*(?<currentValue>v[0-9]+\\.[0-9]+\\.[0-9]+)"],
|
|
"depNameTemplate": "traefik",
|
|
"datasourceTemplate": "docker"
|
|
},
|
|
{
|
|
"description": "Crowdsec image tag in the Crowdsec Helm values (no repository key, so match by file)",
|
|
"customType": "regex",
|
|
"managerFilePatterns": [
|
|
"/^examples/kubernetes/crowdsec/values\\.ya?ml$/"
|
|
],
|
|
"matchStrings": ["tag:\\s*(?<currentValue>v[0-9]+\\.[0-9]+\\.[0-9]+)"],
|
|
"depNameTemplate": "crowdsecurity/crowdsec",
|
|
"datasourceTemplate": "docker"
|
|
},
|
|
{
|
|
"description": "Pinned Traefik binary in the e2e mock suite (TRAEFIK_VERSION:-vX in common.sh)",
|
|
"customType": "regex",
|
|
"managerFilePatterns": ["/^tests/e2e/mock/lib/common\\.sh$/"],
|
|
"matchStrings": [
|
|
"TRAEFIK_VERSION:-(?<currentValue>v[0-9]+\\.[0-9]+\\.[0-9]+)"
|
|
],
|
|
"depNameTemplate": "traefik/traefik",
|
|
"datasourceTemplate": "github-releases"
|
|
}
|
|
]
|
|
}
|