Skip to content

Commit cea3d94

Browse files
committed
lower minimum Go version to 1.24, improve Go version check
On-behalf-of: @SAP christoph.mewes@sap.com
1 parent df7cc9e commit cea3d94

7 files changed

Lines changed: 60 additions & 58 deletions

File tree

cli/go.mod

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/kube-bind/kube-bind/cli
22

3-
go 1.25.4
3+
go 1.24.0
44

55
replace (
66
github.com/kube-bind/kube-bind => ../
@@ -10,9 +10,6 @@ replace (
1010
require (
1111
github.com/MakeNowJust/heredoc v1.0.0
1212
github.com/blang/semver/v4 v4.0.0
13-
github.com/charmbracelet/bubbles v0.21.0
14-
github.com/charmbracelet/bubbletea v1.3.10
15-
github.com/charmbracelet/lipgloss v1.1.0
1613
github.com/docker/docker v28.5.2+incompatible
1714
github.com/fatih/color v1.18.0
1815
github.com/kube-bind/kube-bind v0.0.0-00010101000000-000000000000
@@ -44,14 +41,9 @@ require (
4441
github.com/Masterminds/squirrel v1.5.4 // indirect
4542
github.com/Microsoft/go-winio v0.6.2 // indirect
4643
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
47-
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
4844
github.com/beorn7/perks v1.0.1 // indirect
4945
github.com/cespare/xxhash/v2 v2.3.0 // indirect
5046
github.com/chai2010/gettext-go v1.0.2 // indirect
51-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc // indirect
52-
github.com/charmbracelet/x/ansi v0.10.1 // indirect
53-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd // indirect
54-
github.com/charmbracelet/x/term v0.2.1 // indirect
5547
github.com/containerd/containerd v1.7.28 // indirect
5648
github.com/containerd/errdefs v0.3.0 // indirect
5749
github.com/containerd/errdefs/pkg v0.3.0 // indirect
@@ -63,7 +55,6 @@ require (
6355
github.com/docker/go-connections v0.6.0 // indirect
6456
github.com/docker/go-units v0.5.0 // indirect
6557
github.com/emicklei/go-restful/v3 v3.12.2 // indirect
66-
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
6758
github.com/evanphx/json-patch v5.9.11+incompatible // indirect
6859
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
6960
github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect
@@ -97,11 +88,9 @@ require (
9788
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
9889
github.com/lib/pq v1.10.9 // indirect
9990
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
100-
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
10191
github.com/mailru/easyjson v0.9.0 // indirect
10292
github.com/mattn/go-colorable v0.1.13 // indirect
10393
github.com/mattn/go-isatty v0.0.20 // indirect
104-
github.com/mattn/go-localereader v0.0.1 // indirect
10594
github.com/mattn/go-runewidth v0.0.16 // indirect
10695
github.com/mitchellh/copystructure v1.2.0 // indirect
10796
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
@@ -114,9 +103,6 @@ require (
114103
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
115104
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
116105
github.com/morikuni/aec v1.0.0 // indirect
117-
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect
118-
github.com/muesli/cancelreader v0.2.2 // indirect
119-
github.com/muesli/termenv v0.16.0 // indirect
120106
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
121107
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect
122108
github.com/onsi/gomega v1.36.2 // indirect
@@ -139,7 +125,6 @@ require (
139125
github.com/spf13/cast v1.7.0 // indirect
140126
github.com/x448/float16 v0.8.4 // indirect
141127
github.com/xlab/treeprint v1.2.0 // indirect
142-
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
143128
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
144129
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 // indirect
145130
go.opentelemetry.io/otel v1.35.0 // indirect

cli/go.sum

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd
2828
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
2929
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so=
3030
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
31-
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
32-
github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
3331
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
3432
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
3533
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
@@ -42,20 +40,6 @@ github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UF
4240
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
4341
github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk=
4442
github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA=
45-
github.com/charmbracelet/bubbles v0.21.0 h1:9TdC97SdRVg/1aaXNVWfFH3nnLAwOXr8Fn6u6mfQdFs=
46-
github.com/charmbracelet/bubbles v0.21.0/go.mod h1:HF+v6QUR4HkEpz62dx7ym2xc71/KBHg+zKwJtMw+qtg=
47-
github.com/charmbracelet/bubbletea v1.3.10 h1:otUDHWMMzQSB0Pkc87rm691KZ3SWa4KUlvF9nRvCICw=
48-
github.com/charmbracelet/bubbletea v1.3.10/go.mod h1:ORQfo0fk8U+po9VaNvnV95UPWA1BitP1E0N6xJPlHr4=
49-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs=
50-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc/go.mod h1:X4/0JoqgTIPSFcRA/P6INZzIuyqdFY5rm8tb41s9okk=
51-
github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY=
52-
github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30=
53-
github.com/charmbracelet/x/ansi v0.10.1 h1:rL3Koar5XvX0pHGfovN03f5cxLbCF2YvLeyz7D2jVDQ=
54-
github.com/charmbracelet/x/ansi v0.10.1/go.mod h1:3RQDQ6lDnROptfpWuUVIUG64bD2g2BgntdxH0Ya5TeE=
55-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd h1:vy0GVL4jeHEwG5YOXDmi86oYw2yuYUGqz6a8sLwg0X8=
56-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd/go.mod h1:xe0nKWGd3eJgtqZRaN9RjMtK7xUYchjzPr7q6kcvCCs=
57-
github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ=
58-
github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg=
5943
github.com/containerd/containerd v1.7.28 h1:Nsgm1AtcmEh4AHAJ4gGlNSaKgXiNccU270Dnf81FQ3c=
6044
github.com/containerd/containerd v1.7.28/go.mod h1:azUkWcOvHrWvaiUjSQH0fjzuHIwSPg1WL5PshGP4Szs=
6145
github.com/containerd/errdefs v0.3.0 h1:FSZgGOeK4yuT/+DnF07/Olde/q4KBoMsaamhXxIMDp4=
@@ -99,8 +83,6 @@ github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4
9983
github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
10084
github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf9B/a0/xU=
10185
github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
102-
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4=
103-
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM=
10486
github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8=
10587
github.com/evanphx/json-patch v5.9.11+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
10688
github.com/evanphx/json-patch/v5 v5.9.11 h1:/8HVnzMq13/3x9TPvjG08wUGqBTmZBsCWzjTM0wiaDU=
@@ -206,17 +188,13 @@ github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw=
206188
github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
207189
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de h1:9TO3cAIGXtEhnIaL+V+BEER86oLrvS+kWobKpbJuye0=
208190
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de/go.mod h1:zAbeS9B/r2mtpb6U+EI2rYA5OAXxsYw6wTamcNW+zcE=
209-
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
210-
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
211191
github.com/mailru/easyjson v0.9.0 h1:PrnmzHw7262yW8sTBwxi1PdJA3Iw/EKBa8psRf7d9a4=
212192
github.com/mailru/easyjson v0.9.0/go.mod h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU=
213193
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
214194
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
215195
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
216196
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
217197
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
218-
github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4=
219-
github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88=
220198
github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
221199
github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc=
222200
github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
@@ -250,14 +228,8 @@ github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/
250228
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4=
251229
github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A=
252230
github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc=
253-
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI=
254-
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo=
255-
github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA=
256-
github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo=
257231
github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s=
258232
github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8=
259-
github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc=
260-
github.com/muesli/termenv v0.16.0/go.mod h1:ZRfOIKPFDYQoDFF4Olj7/QJbW60Ol/kL1pU3VfY/Cnk=
261233
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
262234
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
263235
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus=
@@ -334,8 +306,6 @@ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
334306
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
335307
github.com/xlab/treeprint v1.2.0 h1:HzHnuAF1plUN2zGlAFHbSQP2qJ0ZAD3XF5XD7OesXRQ=
336308
github.com/xlab/treeprint v1.2.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0=
337-
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no=
338-
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
339309
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
340310
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
341311
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
@@ -399,8 +369,6 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
399369
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
400370
golang.org/x/crypto v0.41.0 h1:WKYxWedPGCTVVl5+WHSSrOBT0O8lx32+zxmHxijgXp4=
401371
golang.org/x/crypto v0.41.0/go.mod h1:pO5AFd7FA68rFak7rOAGVuygIISepHftHnr8dr6+sUc=
402-
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 h1:R84qjqJb5nVJMxqWYb3np9L5ZsaDtB+a39EqjV0JSUM=
403-
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0/go.mod h1:S9Xr4PYopiDyqSyp5NjCrhFrqg6A5zA2E/iPHPhqnS8=
404372
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
405373
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
406374
golang.org/x/mod v0.26.0 h1:EGMPT//Ezu+ylkCijjPc+f4Aih7sZvaAr+O3EHBxvZg=
@@ -422,7 +390,6 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h
422390
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
423391
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
424392
golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
425-
golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
426393
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
427394
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
428395
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=

contrib/kcp/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/kube-bind/kube-bind/contrib/kcp
22

3-
go 1.25.4
3+
go 1.24.0
44

55
replace (
66
github.com/kube-bind/kube-bind => ../../

docs/generators/cli-doc/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/kube-bind/kube-bind/docs/generators/cli-doc
22

3-
go 1.25.4
3+
go 1.24.0
44

55
replace (
66
github.com/kube-bind/kube-bind => ../../../

go.mod

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
module github.com/kube-bind/kube-bind
22

3-
go 1.25.4
3+
// Two Go versions are maintained - the minimum supported Go version as
4+
// noted in the go directive and the build version used in PROW and GHA
5+
// jobs and Docker builds as noted in the comment.
6+
// The script hack/verify-go-versions.sh checks that all version
7+
// references across the codebase are consistent with the versions
8+
// maintained here.
9+
// go-build-version 1.25.4
10+
go 1.24.0
411

512
replace (
613
github.com/kube-bind/kube-bind => ./
@@ -29,6 +36,7 @@ require (
2936
github.com/spf13/cobra v1.10.1
3037
github.com/spf13/pflag v1.0.9
3138
github.com/stretchr/testify v1.11.1
39+
github.com/tidwall/gjson v1.18.0
3240
github.com/vmihailenco/msgpack/v4 v4.3.12
3341
github.com/xrstf/mockoidc v0.0.0-20251110222947-8618052ad848
3442
golang.org/x/oauth2 v0.30.0
@@ -115,7 +123,6 @@ require (
115123
github.com/prometheus/procfs v0.15.1 // indirect
116124
github.com/sirupsen/logrus v1.9.3 // indirect
117125
github.com/stoewer/go-strcase v1.3.0 // indirect
118-
github.com/tidwall/gjson v1.18.0 // indirect
119126
github.com/tidwall/match v1.1.1 // indirect
120127
github.com/tidwall/pretty v1.2.0 // indirect
121128
github.com/vmihailenco/tagparser v0.1.1 // indirect

hack/verify-go-versions.sh

Lines changed: 47 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,51 @@
1717
set -e
1818
set -o pipefail
1919

20-
VERSION=$(grep "go 1." go.mod | sed 's/go //' | sed 's/.0$//')
20+
gomod_version() {
21+
awk '/^go / { print $2 }' "$1" | sed 's/.0$//'
22+
}
2123

22-
grep "FROM golang:" Dockerfile | { ! grep -v "${VERSION}"; } || { echo "Wrong go version in Dockerfile, expected ${VERSION}"; exit 1; }
23-
grep "go-version:" .github/workflows/*.yaml | { ! grep -v "go-version: v${VERSION}"; } || { echo "Wrong go version in .github/workflows/*.yaml, expected ${VERSION}"; exit 1; }
24-
grep "golang:" .ko.yaml | { ! grep -v "golang:${VERSION}"; } || { echo "Wrong go version in .ko.yaml, expected ${VERSION}"; exit 1; }
24+
minimum_go_version="$(gomod_version go.mod)"
25+
build_go_version="$(awk '/go-build-version/ { print $3 }' go.mod)"
26+
errors=0
27+
28+
echo "Verifying minimum Go version: $minimum_go_version"
29+
30+
for gomod in $(git ls-files '**/go.mod'); do
31+
if [[ "$(gomod_version $gomod)" != "$minimum_go_version" ]]; then
32+
echo " Wrong go version in $gomod, expected $minimum_go_version"
33+
errors=$((errors + 1))
34+
fi
35+
done
36+
37+
echo "Verifying build Go version: $build_go_version"
38+
39+
for dockerfile in $(git ls-files Dockerfile '**/Dockerfile'); do
40+
for version in $(sed -nE -e '/^FROM .*golang:/ s#^.*:([1-9.-rc]+).*$#\1#p' "$dockerfile"); do
41+
if [[ "$version" != "$build_go_version" ]]; then
42+
echo " Wrong go version in $dockerfile, expected $build_go_version, found $version"
43+
errors=$((errors + 1))
44+
fi
45+
done
46+
done
47+
48+
for workflow in $(git ls-files '.github/workflows/*.yaml' '.github/workflows/*.yml'); do
49+
if grep -q 'go-version-file:' "$workflow"; then
50+
echo " Workflow $workflow uses go-version-file, should use go-version instead"
51+
errors=$((errors + 1))
52+
fi
53+
54+
for version in $(sed -nE -e '/go-version:/ s#^.*v([1-9.-rc]+)$#\1#p' "$workflow"); do
55+
if [[ "$version" != "$build_go_version" ]]; then
56+
echo " Wrong go version in $workflow, expected v${build_go_version}, found v${version}"
57+
errors=$((errors + 1))
58+
fi
59+
done
60+
done
61+
62+
if [[ "$CI" == true ]] && ! go version | grep -q "go${build_go_version}"; then
63+
echo " Wrong go version detected, expected ${build_go_version}"
64+
errors=$((errors + 1))
65+
fi
66+
67+
exit $errors

sdk/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/kube-bind/kube-bind/sdk
22

3-
go 1.25.4
3+
go 1.24.0
44

55
require (
66
github.com/google/go-cmp v0.7.0

0 commit comments

Comments
 (0)