Skip to content

Commit bc83be3

Browse files
committed
correct renovate config for go modules >= v2
1 parent b07aa26 commit bc83be3

File tree

5 files changed

+41
-1
lines changed

5 files changed

+41
-1
lines changed

pkg/makefile/.toolbox.mk.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ TB_{{.UpperName}} ?= $(TB_LOCALBIN)/{{.Name}}
1717
{{- range .Tools }}
1818
{{- if .Version }}
1919
{{- if $.Renovate }}
20-
# renovate: packageName={{.ToolName}}
20+
# renovate: packageName={{.GoModule}}
2121
{{- end }}
2222
TB_{{.UpperName}}_VERSION ?= {{.Version}}
2323
{{- end }}

pkg/makefile/make.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ func dataForArg(client *resty.Client, tool string) (toolData, error) {
113113
if len(match) != 2 {
114114
return td, fmt.Errorf("invalid tool %q", tool)
115115
}
116+
116117
ghr, err := getRelease(client, match[1], true)
117118
if err != nil {
118119
return td, err
@@ -138,13 +139,32 @@ func dataForTool(fromToolsGo bool, toolName string, fullTool ...string) toolData
138139
}
139140
td.UpperName = strings.ReplaceAll(strings.ToUpper(td.Name), "-", "_")
140141
td.FromToolsGo = fromToolsGo
142+
td.GoModule = extractModulePath(td.ToolName)
141143
return td
142144
}
143145

146+
func extractModulePath(importPath string) string {
147+
// Remove quotes if present
148+
importPath = strings.Trim(importPath, `"`)
149+
150+
re := regexp.MustCompile(`^(.*)(/v\d+)(/.*)?$`)
151+
152+
matches := re.FindStringSubmatch(importPath)
153+
if matches == nil {
154+
return importPath
155+
}
156+
157+
base := matches[1]
158+
version := matches[2]
159+
160+
return base + version
161+
}
162+
144163
type toolData struct {
145164
Name string `json:"Name"`
146165
UpperName string `json:"UpperName"`
147166
Version string `json:"Version"`
167+
GoModule string `json:"GoModule"`
148168
Tool string `json:"Tool"`
149169
ToolName string `json:"ToolName"`
150170
FromToolsGo bool `json:"FromToolsGo"`

pkg/makefile/make_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ var _ = Describe("Make", func() {
4242
It("should generateForTools a correct output", func() {
4343
err := Generate(resty.New(), makeFilePath, false, "",
4444
"sigs.k8s.io/controller-tools/cmd/controller-gen@github.com/kubernetes-sigs/controller-tools",
45+
"github.com/golangci/golangci-lint/v2/cmd/golangci-lint",
4546
"github.com/bakito/semver",
4647
"github.com/bakito/toolbox",
4748
)
@@ -54,6 +55,7 @@ var _ = Describe("Make", func() {
5455
makeFilePath = copyFile("Makefile.content.migrate", tempDir)
5556
err := Generate(resty.New(), makeFilePath, false, "",
5657
"sigs.k8s.io/controller-tools/cmd/controller-gen@github.com/kubernetes-sigs/controller-tools",
58+
"github.com/golangci/golangci-lint/v2/cmd/golangci-lint",
5759
"github.com/bakito/semver",
5860
"github.com/bakito/toolbox",
5961
)
@@ -75,6 +77,7 @@ var _ = Describe("Make", func() {
7577
It("should generateForTools a correct output with renovate enabled", func() {
7678
err := Generate(resty.New(), makeFilePath, true, "",
7779
"sigs.k8s.io/controller-tools/cmd/controller-gen@github.com/kubernetes-sigs/controller-tools",
80+
"github.com/golangci/golangci-lint/v2/cmd/golangci-lint",
7881
"github.com/bakito/semver",
7982
"github.com/bakito/toolbox",
8083
)

testdata/.toolbox.mk.content.expected

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,13 @@ $(TB_LOCALBIN):
1010

1111
## Tool Binaries
1212
TB_CONTROLLER_GEN ?= $(TB_LOCALBIN)/controller-gen
13+
TB_GOLANGCI_LINT ?= $(TB_LOCALBIN)/golangci-lint
1314
TB_SEMVER ?= $(TB_LOCALBIN)/semver
1415
TB_TOOLBOX ?= $(TB_LOCALBIN)/toolbox
1516

1617
## Tool Versions
1718
TB_CONTROLLER_GEN_VERSION ?= v0.2.1
19+
TB_GOLANGCI_LINT_VERSION ?= v0.2.1
1820
TB_SEMVER_VERSION ?= v0.2.1
1921
TB_TOOLBOX_VERSION ?= v0.2.1
2022

@@ -23,6 +25,10 @@ TB_TOOLBOX_VERSION ?= v0.2.1
2325
tb.controller-gen: $(TB_CONTROLLER_GEN) ## Download controller-gen locally if necessary.
2426
$(TB_CONTROLLER_GEN): $(TB_LOCALBIN)
2527
test -s $(TB_LOCALBIN)/controller-gen || GOBIN=$(TB_LOCALBIN) go install sigs.k8s.io/controller-tools/cmd/controller-gen@$(TB_CONTROLLER_GEN_VERSION)
28+
.PHONY: tb.golangci-lint
29+
tb.golangci-lint: $(TB_GOLANGCI_LINT) ## Download golangci-lint locally if necessary.
30+
$(TB_GOLANGCI_LINT): $(TB_LOCALBIN)
31+
test -s $(TB_LOCALBIN)/golangci-lint || GOBIN=$(TB_LOCALBIN) go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@$(TB_GOLANGCI_LINT_VERSION)
2632
.PHONY: tb.semver
2733
tb.semver: $(TB_SEMVER) ## Download semver locally if necessary.
2834
$(TB_SEMVER): $(TB_LOCALBIN)
@@ -37,6 +43,7 @@ $(TB_TOOLBOX): $(TB_LOCALBIN)
3743
tb.reset:
3844
@rm -f \
3945
$(TB_LOCALBIN)/controller-gen \
46+
$(TB_LOCALBIN)/golangci-lint \
4047
$(TB_LOCALBIN)/semver \
4148
$(TB_LOCALBIN)/toolbox
4249

@@ -45,6 +52,7 @@ tb.reset:
4552
tb.update: tb.reset
4653
toolbox makefile -f $(TB_LOCALDIR)/Makefile \
4754
sigs.k8s.io/controller-tools/cmd/controller-gen@github.com/kubernetes-sigs/controller-tools \
55+
github.com/golangci/golangci-lint/v2/cmd/golangci-lint \
4856
github.com/bakito/semver \
4957
github.com/bakito/toolbox
5058
## toolbox - end

testdata/.toolbox.mk.renovate.expected

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,15 @@ $(TB_LOCALBIN):
1010

1111
## Tool Binaries
1212
TB_CONTROLLER_GEN ?= $(TB_LOCALBIN)/controller-gen
13+
TB_GOLANGCI_LINT ?= $(TB_LOCALBIN)/golangci-lint
1314
TB_SEMVER ?= $(TB_LOCALBIN)/semver
1415
TB_TOOLBOX ?= $(TB_LOCALBIN)/toolbox
1516

1617
## Tool Versions
1718
# renovate: packageName=sigs.k8s.io/controller-tools/cmd/controller-gen
1819
TB_CONTROLLER_GEN_VERSION ?= v0.2.1
20+
# renovate: packageName=github.com/golangci/golangci-lint/v2
21+
TB_GOLANGCI_LINT_VERSION ?= v0.2.1
1922
# renovate: packageName=github.com/bakito/semver
2023
TB_SEMVER_VERSION ?= v0.2.1
2124
# renovate: packageName=github.com/bakito/toolbox
@@ -26,6 +29,10 @@ TB_TOOLBOX_VERSION ?= v0.2.1
2629
tb.controller-gen: $(TB_CONTROLLER_GEN) ## Download controller-gen locally if necessary.
2730
$(TB_CONTROLLER_GEN): $(TB_LOCALBIN)
2831
test -s $(TB_LOCALBIN)/controller-gen || GOBIN=$(TB_LOCALBIN) go install sigs.k8s.io/controller-tools/cmd/controller-gen@$(TB_CONTROLLER_GEN_VERSION)
32+
.PHONY: tb.golangci-lint
33+
tb.golangci-lint: $(TB_GOLANGCI_LINT) ## Download golangci-lint locally if necessary.
34+
$(TB_GOLANGCI_LINT): $(TB_LOCALBIN)
35+
test -s $(TB_LOCALBIN)/golangci-lint || GOBIN=$(TB_LOCALBIN) go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@$(TB_GOLANGCI_LINT_VERSION)
2936
.PHONY: tb.semver
3037
tb.semver: $(TB_SEMVER) ## Download semver locally if necessary.
3138
$(TB_SEMVER): $(TB_LOCALBIN)
@@ -40,6 +47,7 @@ $(TB_TOOLBOX): $(TB_LOCALBIN)
4047
tb.reset:
4148
@rm -f \
4249
$(TB_LOCALBIN)/controller-gen \
50+
$(TB_LOCALBIN)/golangci-lint \
4351
$(TB_LOCALBIN)/semver \
4452
$(TB_LOCALBIN)/toolbox
4553

@@ -48,6 +56,7 @@ tb.reset:
4856
tb.update: tb.reset
4957
toolbox makefile --renovate -f $(TB_LOCALDIR)/Makefile \
5058
sigs.k8s.io/controller-tools/cmd/controller-gen@github.com/kubernetes-sigs/controller-tools \
59+
github.com/golangci/golangci-lint/v2/cmd/golangci-lint \
5160
github.com/bakito/semver \
5261
github.com/bakito/toolbox
5362
## toolbox - end

0 commit comments

Comments
 (0)