Skip to content

Commit 050b1a3

Browse files
fix: linting errors
1 parent 93c2f45 commit 050b1a3

File tree

6 files changed

+16
-9
lines changed

6 files changed

+16
-9
lines changed

pkg/kind/networking.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ func getDockerContainerIP(containerName string) (net.IP, error) {
4747
return parsed, nil
4848
}
4949

50+
// GetDockerV4Network retrieves the IPv4 network configuration of the Docker network named "kind".
5051
func GetDockerV4Network(ctx context.Context) (net.IPNet, error) {
5152
cmd := exec.CommandContext(ctx, "docker", "network", "inspect", "-f", "json", networkName)
5253
cmdOut, err := cmd.Output()
@@ -81,6 +82,7 @@ func isIPv4(ipNet *net.IPNet) bool {
8182
return ipNet.IP.To4() != nil
8283
}
8384

85+
// NextAvailableLBNetwork finds the next available subnet for MetalLB in the Docker network.
8486
func NextAvailableLBNetwork(ctx context.Context, c client.Client) (net.IPNet, error) {
8587
lockListClusters.Lock()
8688
defer lockListClusters.Unlock()
@@ -101,7 +103,7 @@ func NextAvailableLBNetwork(ctx context.Context, c client.Client) (net.IPNet, er
101103
return net.IPNet{}, err
102104
}
103105

104-
taken, err := isIpNetTaken(subnet, clusters)
106+
taken, err := isIPNetTaken(subnet, clusters)
105107
if err != nil {
106108
return net.IPNet{}, err
107109
}
@@ -120,6 +122,7 @@ func calculateV4Subnet(input net.IPNet, offset int) (net.IPNet, error) {
120122
ones, bits := input.Mask.Size()
121123

122124
// Subnet mask should be either 8 or 16 out of 32
125+
// nolint:staticcheck
123126
if !(ones == 8 || ones == 16) || bits != 32 {
124127
return net.IPNet{}, errUnsupportedNetwork
125128
}
@@ -133,7 +136,7 @@ func calculateV4Subnet(input net.IPNet, offset int) (net.IPNet, error) {
133136
}, nil
134137
}
135138

136-
func isIpNetTaken(ipnet net.IPNet, clusters *clustersv1alpha1.ClusterList) (bool, error) {
139+
func isIPNetTaken(ipnet net.IPNet, clusters *clustersv1alpha1.ClusterList) (bool, error) {
137140
for _, c := range clusters.Items {
138141
cNet, err := SubnetFromCluster(&c)
139142
if err != nil {
@@ -149,6 +152,7 @@ func isIpNetTaken(ipnet net.IPNet, clusters *clustersv1alpha1.ClusterList) (bool
149152
return false, nil
150153
}
151154

155+
// SubnetFromCluster extracts the assigned subnet from the cluster annotations.
152156
func SubnetFromCluster(c *clustersv1alpha1.Cluster) (*net.IPNet, error) {
153157
ipNetStr, ok := c.Annotations[AnnotationAssignedSubnet]
154158
if !ok {

pkg/kind/networking_model.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ type ConfigFrom struct {
3030
// Network represents the network configuration struct.
3131
type Network struct {
3232
Name string `json:"Name"`
33-
Id string `json:"Id"`
33+
ID string `json:"ID"`
3434
Created string `json:"Created"`
3535
Scope string `json:"Scope"`
3636
Driver string `json:"Driver"`

pkg/kind/networking_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ func Test_parseDockerV4Network(t *testing.T) {
1616
}{
1717
{
1818
desc: "should find v4 network",
19-
jsonData: `[{"Name":"kind","Id":"12da2f79f0833bc2f200a19430f0681ebcb34172f31c4e36be5fc1b98baa0cbc","Created":"2023-05-30T11:29:09.1977428+02:00","Scope":"local","Driver":"bridge","EnableIPv6":true,"IPAM":{"Driver":"default","Options":{},"Config":[{"Subnet":"172.19.0.0/16","Gateway":"172.19.0.1"},{"Subnet":"fc00:f853:ccd:e793::/64","Gateway":"fc00:f853:ccd:e793::1"}]},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{"6f2a311eac05dd159140c280f38b28f4af5fac24966619ae67351a04ac0b0872":{"Name":"kube-system.three-control-plane","EndpointID":"49c7b225fd21d6103458cb44fdbba915eaf078ff87f8721c88bee5048c404e58","MacAddress":"02:42:ac:13:00:04","IPv4Address":"172.19.0.4/16","IPv6Address":"fc00:f853:ccd:e793::4/64"},"9ac1ca74027bed08fd22d325352d1d5fa65478912c98de9c3e322ccaacd5ac2d":{"Name":"default.one-control-plane","EndpointID":"bb99a7571e0d0e6e8ae39c9c2b1e7649f766872035668665e5465d8b3d72aaa7","MacAddress":"02:42:ac:13:00:03","IPv4Address":"172.19.0.3/16","IPv6Address":"fc00:f853:ccd:e793::3/64"},"af9a154989d0ce28dfcf9fc38a9f377fcb9cdd8d0d74ba92260ed2e2bcb43e0e":{"Name":"kind-control-plane","EndpointID":"f70b3da9503ff6abae8a8e51fa7eabf20ca764012bf2a5d20ce1b82a2d928195","MacAddress":"02:42:ac:13:00:05","IPv4Address":"172.19.0.5/16","IPv6Address":"fc00:f853:ccd:e793::5/64"},"fc752ade5c09e3d4f45f2bf498a7ed4c2a06dc451be417ebda109f862317293a":{"Name":"default.two-control-plane","EndpointID":"8fcd5372145cfe0a7705a9e0d8bafa1fa9c5fdaed94528434e6a74a3f09733bd","MacAddress":"02:42:ac:13:00:02","IPv4Address":"172.19.0.2/16","IPv6Address":"fc00:f853:ccd:e793::2/64"}},"Options":{"com.docker.network.bridge.enable_ip_masquerade":"true","com.docker.network.driver.mtu":"1500"},"Labels":{}}]`,
19+
jsonData: `[{"Name":"kind","ID":"12da2f79f0833bc2f200a19430f0681ebcb34172f31c4e36be5fc1b98baa0cbc","Created":"2023-05-30T11:29:09.1977428+02:00","Scope":"local","Driver":"bridge","EnableIPv6":true,"IPAM":{"Driver":"default","Options":{},"Config":[{"Subnet":"172.19.0.0/16","Gateway":"172.19.0.1"},{"Subnet":"fc00:f853:ccd:e793::/64","Gateway":"fc00:f853:ccd:e793::1"}]},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{"6f2a311eac05dd159140c280f38b28f4af5fac24966619ae67351a04ac0b0872":{"Name":"kube-system.three-control-plane","EndpointID":"49c7b225fd21d6103458cb44fdbba915eaf078ff87f8721c88bee5048c404e58","MacAddress":"02:42:ac:13:00:04","IPv4Address":"172.19.0.4/16","IPv6Address":"fc00:f853:ccd:e793::4/64"},"9ac1ca74027bed08fd22d325352d1d5fa65478912c98de9c3e322ccaacd5ac2d":{"Name":"default.one-control-plane","EndpointID":"bb99a7571e0d0e6e8ae39c9c2b1e7649f766872035668665e5465d8b3d72aaa7","MacAddress":"02:42:ac:13:00:03","IPv4Address":"172.19.0.3/16","IPv6Address":"fc00:f853:ccd:e793::3/64"},"af9a154989d0ce28dfcf9fc38a9f377fcb9cdd8d0d74ba92260ed2e2bcb43e0e":{"Name":"kind-control-plane","EndpointID":"f70b3da9503ff6abae8a8e51fa7eabf20ca764012bf2a5d20ce1b82a2d928195","MacAddress":"02:42:ac:13:00:05","IPv4Address":"172.19.0.5/16","IPv6Address":"fc00:f853:ccd:e793::5/64"},"fc752ade5c09e3d4f45f2bf498a7ed4c2a06dc451be417ebda109f862317293a":{"Name":"default.two-control-plane","EndpointID":"8fcd5372145cfe0a7705a9e0d8bafa1fa9c5fdaed94528434e6a74a3f09733bd","MacAddress":"02:42:ac:13:00:02","IPv4Address":"172.19.0.2/16","IPv6Address":"fc00:f853:ccd:e793::2/64"}},"Options":{"com.docker.network.bridge.enable_ip_masquerade":"true","com.docker.network.driver.mtu":"1500"},"Labels":{}}]`,
2020
expectedNet: mustParseCIDR("172.19.0.0/16"),
2121
expectedErr: nil,
2222
},

pkg/kind/provider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ var (
3232
kubeconfigPath = path.Join(os.TempDir(), "cluster-provider-kind.kubeconfig")
3333
)
3434

35-
// KindProvider returns a new instance of the kind provider for managing Kubernetes clusters.
35+
// NewKindProvider returns a new instance of the kind provider for managing Kubernetes clusters.
3636
// It uses the default Docker-based kind provider configuration.
3737
func NewKindProvider() Provider {
3838
return &kindProvider{

pkg/metallb/install.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,13 @@ var (
2727
)
2828

2929
const (
30-
Namespace = "metallb-system"
30+
namespace = "metallb-system"
3131

3232
resourceBaseYAML = "metallb-native.yaml"
3333
resourceKustomization = "kustomization.yaml"
3434
)
3535

36+
// Install installs the MetalLB components in the cluster.
3637
func Install(ctx context.Context, c client.Client) error {
3738
r, err := build()
3839
if err != nil {
@@ -47,6 +48,7 @@ func Install(ctx context.Context, c client.Client) error {
4748
return createObjects(ctx, c, objs)
4849
}
4950

51+
// ConfigureSubnet configures the MetalLB subnet for the cluster.
5052
func ConfigureSubnet(ctx context.Context, c client.Client, subnet net.IPNet) error {
5153
return errors.Join(
5254
configureIPAddressPool(ctx, c, subnet),
@@ -62,7 +64,7 @@ func configureIPAddressPool(ctx context.Context, c client.Client, subnet net.IPN
6264
Kind: "IPAddressPool",
6365
})
6466
pool.SetName("kind")
65-
pool.SetNamespace(Namespace)
67+
pool.SetNamespace(namespace)
6668

6769
_, err := controllerutil.CreateOrUpdate(ctx, c, pool, func() error {
6870
pool.Object["spec"] = map[string]any{
@@ -84,7 +86,7 @@ func configureL2Advertisement(ctx context.Context, c client.Client) error {
8486
Kind: "L2Advertisement",
8587
})
8688
l2a.SetName("kind")
87-
l2a.SetNamespace(Namespace)
89+
l2a.SetNamespace(namespace)
8890

8991
_, err := controllerutil.CreateOrUpdate(ctx, c, l2a, func() error {
9092
// nothing to update
@@ -165,7 +167,7 @@ func getKustomization(images []types.Image) *types.Kustomization {
165167
Kind: types.KustomizationKind,
166168
APIVersion: types.KustomizationVersion,
167169
},
168-
Namespace: Namespace,
170+
Namespace: namespace,
169171
Resources: []string{
170172
resourceBaseYAML,
171173
},

pkg/metallb/status.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"sigs.k8s.io/controller-runtime/pkg/client"
99
)
1010

11+
// IsReady checks if the MetalLB components are ready.
1112
func IsReady(ctx context.Context, c client.Client) (bool, error) {
1213
pods := &corev1.PodList{}
1314
if err := c.List(ctx, pods, client.MatchingLabels{"app": "metallb"}); err != nil {

0 commit comments

Comments
 (0)