{ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "description": ["Preset for use with golang repositories"], "extends": [ "github>thegeeklab/renovate-presets:base", "github>thegeeklab/renovate-presets:docker" ], "gomod": { "postUpdateOptions": ["gomodUpdateImportPaths", "gomodTidy"] }, "packageRules": [ { "description": "Automerge golang dev dependencies", "groupName": "golang devDeps non-major", "extends": ["schedule:weekly"], "matchDatasources": ["github-releases"], "matchPackageNames": ["mvdan/gofumpt", "golangci/golangci-lint"], "matchUpdateTypes": ["pin", "digest", "patch", "minor"], "automerge": true }, { "description": "Schedule high frequency packages", "groupName": "golang highFeq non-major", "extends": ["schedule:weekly"], "matchDatasources": ["go"], "matchPackagePatterns": ["urfave/cli"], "matchUpdateTypes": ["pin", "digest", "patch", "minor"] }, { "description": "Enable golang version updates", "matchDatasources": ["golang-version"], "rangeStrategy": "bump" }, { "description": "Disable golang toolchain updates", "matchManagers": ["gomod"], "matchDepTypes": ["toolchain"], "enabled": false }, { "description": "Extract version from xgo container tags", "matchDatasources": ["docker"], "matchPackagePatterns": ["techknowlogick/xgo"], "versioning": "regex:^go-(?\\d+)\\.(?\\d+)\\.(?\\d+)$" }, { "description": "Group golang version updates", "groupName": "golang version", "matchDatasources": ["docker", "golang-version"], "matchUpdateTypes": ["minor", "major"], "matchPackagePatterns": ["techknowlogick/xgo", "golang", "go"] }, { "description": "Automerge go patch version updates", "extends": ["schedule:weekly"], "groupName": "golang patch version", "matchDatasources": ["docker", "golang-version"], "matchUpdateTypes": ["patch"], "matchPackagePatterns": ["techknowlogick/xgo", "golang", "go"], "automerge": true } ] }