ci, go.mod: bump to go 1.23 (#1094)
* ci, go.mod: bump to go 1.23 Now that go.mod matches our go version, we can stop setting go version in CI separately. Signed-off-by: Casey Callendrello <c1@caseyc.net> * minor: fix lint errors Bumping golangci-lint to v1.61 introduced some new reasonable checks; fix the errors they found. Signed-off-by: Casey Callendrello <c1@caseyc.net> * ci: bump golangci-lint to v1.61.0 Also, fix some deprecated config directives. Signed-off-by: Casey Callendrello <c1@caseyc.net> --------- Signed-off-by: Casey Callendrello <c1@caseyc.net>
This commit is contained in:
parent
cc8b1bd80c
commit
e5df283ab3
16
.github/workflows/release.yaml
vendored
16
.github/workflows/release.yaml
vendored
@ -13,13 +13,13 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
goarch: [amd64, arm, arm64, mips64le, ppc64le, riscv64, s390x]
|
goarch: [amd64, arm, arm64, mips64le, ppc64le, riscv64, s390x]
|
||||||
steps:
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install Go
|
- name: Install Go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: 1.22
|
go-version-file: go.mod
|
||||||
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
env:
|
env:
|
||||||
@ -68,13 +68,13 @@ jobs:
|
|||||||
- name: Install dos2unix
|
- name: Install dos2unix
|
||||||
run: sudo apt-get install dos2unix
|
run: sudo apt-get install dos2unix
|
||||||
|
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install Go
|
- name: Install Go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: 1.21
|
go-version-file: go.mod
|
||||||
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
env:
|
env:
|
||||||
|
15
.github/workflows/test.yaml
vendored
15
.github/workflows/test.yaml
vendored
@ -5,8 +5,6 @@ on:
|
|||||||
pull_request: {}
|
pull_request: {}
|
||||||
|
|
||||||
env:
|
env:
|
||||||
# be sure to update the version in release.yaml too
|
|
||||||
GO_VERSION: "1.22"
|
|
||||||
LINUX_ARCHES: "amd64 386 arm arm64 s390x mips64le ppc64le riscv64"
|
LINUX_ARCHES: "amd64 386 arm arm64 s390x mips64le ppc64le riscv64"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
@ -18,15 +16,14 @@ jobs:
|
|||||||
- name: setup go
|
- name: setup go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: ${{ env.GO_VERSION }}
|
go-version-file: go.mod
|
||||||
- uses: ibiqlik/action-yamllint@v3
|
- uses: ibiqlik/action-yamllint@v3
|
||||||
with:
|
with:
|
||||||
format: auto
|
format: auto
|
||||||
- uses: golangci/golangci-lint-action@v6
|
- uses: golangci/golangci-lint-action@v6
|
||||||
with:
|
with:
|
||||||
version: v1.55.2
|
version: v1.61.0
|
||||||
args: -v
|
args: -v
|
||||||
skip-cache: true
|
|
||||||
verify-vendor:
|
verify-vendor:
|
||||||
name: Verify vendor directory
|
name: Verify vendor directory
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@ -35,7 +32,7 @@ jobs:
|
|||||||
- name: Install Go
|
- name: Install Go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: ${{ env.GO_VERSION }}
|
go-version-file: go.mod
|
||||||
- name: Check module vendoring
|
- name: Check module vendoring
|
||||||
run: |
|
run: |
|
||||||
go mod tidy
|
go mod tidy
|
||||||
@ -50,7 +47,7 @@ jobs:
|
|||||||
- name: setup go
|
- name: setup go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: ${{ env.GO_VERSION }}
|
go-version-file: go.mod
|
||||||
- name: Build on all supported architectures
|
- name: Build on all supported architectures
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
@ -74,7 +71,7 @@ jobs:
|
|||||||
- name: setup go
|
- name: setup go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: ${{ env.GO_VERSION }}
|
go-version-file: go.mod
|
||||||
- name: Set up Go for root
|
- name: Set up Go for root
|
||||||
run: |
|
run: |
|
||||||
sudo ln -sf `which go` `sudo which go` || true
|
sudo ln -sf `which go` `sudo which go` || true
|
||||||
@ -105,6 +102,6 @@ jobs:
|
|||||||
- name: setup go
|
- name: setup go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
go-version: ${{ env.GO_VERSION }}
|
go-version-file: go.mod
|
||||||
- name: test
|
- name: test
|
||||||
run: bash ./test_windows.sh
|
run: bash ./test_windows.sh
|
||||||
|
@ -40,6 +40,5 @@ linters-settings:
|
|||||||
- prefix(github.com/containernetworking)
|
- prefix(github.com/containernetworking)
|
||||||
|
|
||||||
run:
|
run:
|
||||||
skip-dirs:
|
|
||||||
- vendor
|
|
||||||
timeout: 5m
|
timeout: 5m
|
||||||
|
modules-download-mode: vendor
|
||||||
|
2
go.mod
2
go.mod
@ -1,6 +1,6 @@
|
|||||||
module github.com/containernetworking/plugins
|
module github.com/containernetworking/plugins
|
||||||
|
|
||||||
go 1.21
|
go 1.23
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/Microsoft/hcsshim v0.12.6
|
github.com/Microsoft/hcsshim v0.12.6
|
||||||
|
@ -43,7 +43,7 @@ func TestAnnotate(t *testing.T) {
|
|||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
t.Run(test.name, func(t *testing.T) {
|
t.Run(test.name, func(t *testing.T) {
|
||||||
if !reflect.DeepEqual(Annotatef(test.existingErr, test.contextMessage), test.expectedErr) {
|
if !reflect.DeepEqual(Annotate(test.existingErr, test.contextMessage), test.expectedErr) {
|
||||||
t.Errorf("test case %s fails", test.name)
|
t.Errorf("test case %s fails", test.name)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
package link_test
|
package link_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/networkplumbing/go-nft/nft"
|
"github.com/networkplumbing/go-nft/nft"
|
||||||
@ -301,10 +302,10 @@ type configurerStub struct {
|
|||||||
func (a *configurerStub) Apply(c *nft.Config) (*nft.Config, error) {
|
func (a *configurerStub) Apply(c *nft.Config) (*nft.Config, error) {
|
||||||
a.applyCounter++
|
a.applyCounter++
|
||||||
if a.failFirstApplyConfig && a.applyCounter == 1 {
|
if a.failFirstApplyConfig && a.applyCounter == 1 {
|
||||||
return nil, fmt.Errorf(errorFirstApplyText)
|
return nil, errors.New(errorFirstApplyText)
|
||||||
}
|
}
|
||||||
if a.failSecondApplyConfig && a.applyCounter == 2 {
|
if a.failSecondApplyConfig && a.applyCounter == 2 {
|
||||||
return nil, fmt.Errorf(errorSecondApplyText)
|
return nil, errors.New(errorSecondApplyText)
|
||||||
}
|
}
|
||||||
a.applyConfig = append(a.applyConfig, c)
|
a.applyConfig = append(a.applyConfig, c)
|
||||||
if a.applyReturnNil {
|
if a.applyReturnNil {
|
||||||
@ -316,7 +317,7 @@ func (a *configurerStub) Apply(c *nft.Config) (*nft.Config, error) {
|
|||||||
func (a *configurerStub) Read(_ ...string) (*nft.Config, error) {
|
func (a *configurerStub) Read(_ ...string) (*nft.Config, error) {
|
||||||
a.readCalled = true
|
a.readCalled = true
|
||||||
if a.failReadConfig {
|
if a.failReadConfig {
|
||||||
return nil, fmt.Errorf(errorReadText)
|
return nil, errors.New(errorReadText)
|
||||||
}
|
}
|
||||||
return a.readConfig, nil
|
return a.readConfig, nil
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"net"
|
"net"
|
||||||
"strings"
|
"strings"
|
||||||
@ -130,7 +131,7 @@ func cmdAdd(args *skel.CmdArgs) error {
|
|||||||
for _, ip := range requestedIPs {
|
for _, ip := range requestedIPs {
|
||||||
errstr = errstr + " " + ip.String()
|
errstr = errstr + " " + ip.String()
|
||||||
}
|
}
|
||||||
return fmt.Errorf(errstr)
|
return errors.New(errstr)
|
||||||
}
|
}
|
||||||
|
|
||||||
result.Routes = ipamConf.Routes
|
result.Routes = ipamConf.Routes
|
||||||
@ -151,18 +152,18 @@ func cmdDel(args *skel.CmdArgs) error {
|
|||||||
defer store.Close()
|
defer store.Close()
|
||||||
|
|
||||||
// Loop through all ranges, releasing all IPs, even if an error occurs
|
// Loop through all ranges, releasing all IPs, even if an error occurs
|
||||||
var errors []string
|
var errs []string
|
||||||
for idx, rangeset := range ipamConf.Ranges {
|
for idx, rangeset := range ipamConf.Ranges {
|
||||||
ipAllocator := allocator.NewIPAllocator(&rangeset, store, idx)
|
ipAllocator := allocator.NewIPAllocator(&rangeset, store, idx)
|
||||||
|
|
||||||
err := ipAllocator.Release(args.ContainerID, args.IfName)
|
err := ipAllocator.Release(args.ContainerID, args.IfName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errors = append(errors, err.Error())
|
errs = append(errs, err.Error())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if errors != nil {
|
if errs != nil {
|
||||||
return fmt.Errorf(strings.Join(errors, ";"))
|
return errors.New(strings.Join(errs, ";"))
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -393,7 +393,6 @@ func moveLinkOut(containerNs ns.NetNS, ifName string) error {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -117,7 +117,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
@ -166,7 +166,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
@ -216,7 +216,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
@ -264,7 +264,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
@ -312,7 +312,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
@ -371,7 +371,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
r, out, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
r, out, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
Expect(err).NotTo(HaveOccurred(), string(out))
|
Expect(err).NotTo(HaveOccurred(), string(out))
|
||||||
@ -454,7 +454,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
// Container ingress (host egress)
|
// Container ingress (host egress)
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
vethLink, err := netlink.LinkByName(hostIfname)
|
vethLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -520,7 +520,7 @@ var _ = Describe("bandwidth config test", func() {
|
|||||||
StdinData: []byte(conf),
|
StdinData: []byte(conf),
|
||||||
}
|
}
|
||||||
|
|
||||||
Expect(hostNs.Do(func(netNS ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
_, _, err := testutils.CmdAdd(containerNs.Path(), args.ContainerID, "", []byte(conf), func() error { return cmdAdd(args) })
|
||||||
|
@ -179,7 +179,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
// Container ingress (host egress)
|
// Container ingress (host egress)
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
vethLink, err := netlink.LinkByName(hostIfname)
|
vethLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -381,7 +381,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
// Container ingress (host egress)
|
// Container ingress (host egress)
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
vethLink, err := netlink.LinkByName(hostIfname)
|
vethLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -638,7 +638,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
// Container ingress (host egress)
|
// Container ingress (host egress)
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
vethLink, err := netlink.LinkByName(hostIfname)
|
vethLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -888,7 +888,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
|
|
||||||
// check container ingress side / host egress side, we should not have any htb qdisc/classes/filters defined for the host veth
|
// check container ingress side / host egress side, we should not have any htb qdisc/classes/filters defined for the host veth
|
||||||
// only the qdisc ingress + a noqueue qdisc
|
// only the qdisc ingress + a noqueue qdisc
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
containerIfLink, err := netlink.LinkByName(hostIfname)
|
containerIfLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -957,7 +957,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
return nil
|
return nil
|
||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
containerIfLink, err := netlink.LinkByName(hostIfname)
|
containerIfLink, err := netlink.LinkByName(hostIfname)
|
||||||
@ -1133,7 +1133,7 @@ var _ = Describe("bandwidth test", func() {
|
|||||||
})).To(Succeed())
|
})).To(Succeed())
|
||||||
|
|
||||||
// Container ingress (host egress)
|
// Container ingress (host egress)
|
||||||
Expect(hostNs.Do(func(n ns.NetNS) error {
|
Expect(hostNs.Do(func(_ ns.NetNS) error {
|
||||||
defer GinkgoRecover()
|
defer GinkgoRecover()
|
||||||
|
|
||||||
vethLink, err := netlink.LinkByName(hostIfname)
|
vethLink, err := netlink.LinkByName(hostIfname)
|
||||||
|
@ -319,7 +319,7 @@ func restoreBackup(ifName, containerID, backupPath string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(errStr) > 0 {
|
if len(errStr) > 0 {
|
||||||
return fmt.Errorf(strings.Join(errStr, "; "))
|
return errors.New(strings.Join(errStr, "; "))
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = os.Remove(filePath); err != nil {
|
if err = os.Remove(filePath); err != nil {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user