Skip to content

Commit e00985b

Browse files
authored
Merge pull request #773 from mcristina422/moreLinters
🏃 Update linter and lint fixes
2 parents 8975354 + fd19c6a commit e00985b

File tree

14 files changed

+60
-67
lines changed

14 files changed

+60
-67
lines changed

.golangci.yml

+22
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,27 @@
1+
linters:
2+
disable-all: true
3+
enable:
4+
- misspell
5+
- structcheck
6+
- golint
7+
- deadcode
8+
- errcheck
9+
- varcheck
10+
- goconst
11+
- unparam
12+
- ineffassign
13+
- nakedret
14+
- interfacer
15+
- gocyclo
16+
- lll
17+
- dupl
18+
- goimports
19+
120
linters-settings:
221
lll:
322
line-length: 170
423
dupl:
524
threshold: 400
25+
26+
run:
27+
timeout: 5m

hack/check-everything.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ function golangci_lint_has_version {
7878

7979
function fetch_go_tools {
8080
header_text "Checking for golangci-lint"
81-
local golangci_lint_version="v1.21.0"
81+
local golangci_lint_version="v1.23.6"
8282
if ! is_installed golangci-lint || ! golangci_lint_has_version "${golangci_lint_version}"; then
8383
header_text "Installing golangci-lint"
8484
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin "${golangci_lint_version}"

hack/verify.sh

+1-25
Original file line numberDiff line numberDiff line change
@@ -24,30 +24,6 @@ go vet ${MOD_OPT} ./...
2424

2525
header_text "running golangci-lint"
2626

27-
golangci-lint run --disable-all \
28-
--deadline 5m \
29-
--enable=misspell \
30-
--enable=structcheck \
31-
--enable=golint \
32-
--enable=deadcode \
33-
--enable=errcheck \
34-
--enable=varcheck \
35-
--enable=goconst \
36-
--enable=unparam \
37-
--enable=ineffassign \
38-
--enable=nakedret \
39-
--enable=interfacer \
40-
--enable=misspell \
41-
--enable=gocyclo \
42-
--enable=lll \
43-
--enable=dupl \
44-
--enable=goimports \
45-
--enable=bodyclose \
46-
./pkg/... ./examples/... .
47-
48-
# TODO: Enable these as we fix them to make them pass
49-
# --enable=gosec \
50-
# --enable=maligned \
51-
# --enable=safesql \
27+
golangci-lint run ./pkg/... ./examples/... .
5228

5329
GO111MODULES=on go list -mod=readonly ./...

pkg/client/client_cache.go

+2-4
Original file line numberDiff line numberDiff line change
@@ -124,10 +124,8 @@ type resourceMeta struct {
124124

125125
// isNamespaced returns true if the type is namespaced
126126
func (r *resourceMeta) isNamespaced() bool {
127-
if r.mapping.Scope.Name() == meta.RESTScopeNameRoot {
128-
return false
129-
}
130-
return true
127+
return r.mapping.Scope.Name() != meta.RESTScopeNameRoot
128+
131129
}
132130

133131
// resource returns the resource name of the type

pkg/client/fake/client_test.go

+20-19
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ limitations under the License.
1717
package fake
1818

1919
import (
20+
"context"
2021
"encoding/json"
2122

2223
. "github.com/onsi/ginkgo"
@@ -85,7 +86,7 @@ var _ = Describe("Fake client", func() {
8586
Namespace: "ns1",
8687
}
8788
obj := &appsv1.Deployment{}
88-
err := cl.Get(nil, namespacedName, obj)
89+
err := cl.Get(context.Background(), namespacedName, obj)
8990
Expect(err).To(BeNil())
9091
Expect(obj).To(Equal(dep))
9192
})
@@ -99,14 +100,14 @@ var _ = Describe("Fake client", func() {
99100
obj := &unstructured.Unstructured{}
100101
obj.SetAPIVersion("apps/v1")
101102
obj.SetKind("Deployment")
102-
err := cl.Get(nil, namespacedName, obj)
103+
err := cl.Get(context.Background(), namespacedName, obj)
103104
Expect(err).To(BeNil())
104105
})
105106

106107
It("should be able to List", func() {
107108
By("Listing all deployments in a namespace")
108109
list := &appsv1.DeploymentList{}
109-
err := cl.List(nil, list, client.InNamespace("ns1"))
110+
err := cl.List(context.Background(), list, client.InNamespace("ns1"))
110111
Expect(err).To(BeNil())
111112
Expect(list.Items).To(HaveLen(2))
112113
Expect(list.Items).To(ConsistOf(*dep, *dep2))
@@ -117,15 +118,15 @@ var _ = Describe("Fake client", func() {
117118
list := &unstructured.UnstructuredList{}
118119
list.SetAPIVersion("apps/v1")
119120
list.SetKind("DeploymentList")
120-
err := cl.List(nil, list, client.InNamespace("ns1"))
121+
err := cl.List(context.Background(), list, client.InNamespace("ns1"))
121122
Expect(err).To(BeNil())
122123
Expect(list.Items).To(HaveLen(2))
123124
})
124125

125126
It("should support filtering by labels and their values", func() {
126127
By("Listing deployments with a particular label and value")
127128
list := &appsv1.DeploymentList{}
128-
err := cl.List(nil, list, client.InNamespace("ns1"),
129+
err := cl.List(context.Background(), list, client.InNamespace("ns1"),
129130
client.MatchingLabels(map[string]string{
130131
"test-label": "label-value",
131132
}))
@@ -156,7 +157,7 @@ var _ = Describe("Fake client", func() {
156157
Namespace: "ns2",
157158
},
158159
}
159-
err := cl.Create(nil, newcm)
160+
err := cl.Create(context.Background(), newcm)
160161
Expect(err).To(BeNil())
161162

162163
By("Getting the new configmap")
@@ -165,7 +166,7 @@ var _ = Describe("Fake client", func() {
165166
Namespace: "ns2",
166167
}
167168
obj := &corev1.ConfigMap{}
168-
err = cl.Get(nil, namespacedName, obj)
169+
err = cl.Get(context.Background(), namespacedName, obj)
169170
Expect(err).To(BeNil())
170171
Expect(obj).To(Equal(newcm))
171172
Expect(obj.ObjectMeta.ResourceVersion).To(Equal("1"))
@@ -187,7 +188,7 @@ var _ = Describe("Fake client", func() {
187188
"test-key": "new-value",
188189
},
189190
}
190-
err := cl.Update(nil, newcm)
191+
err := cl.Update(context.Background(), newcm)
191192
Expect(err).To(BeNil())
192193

193194
By("Getting the new configmap")
@@ -196,33 +197,33 @@ var _ = Describe("Fake client", func() {
196197
Namespace: "ns2",
197198
}
198199
obj := &corev1.ConfigMap{}
199-
err = cl.Get(nil, namespacedName, obj)
200+
err = cl.Get(context.Background(), namespacedName, obj)
200201
Expect(err).To(BeNil())
201202
Expect(obj).To(Equal(newcm))
202203
Expect(obj.ObjectMeta.ResourceVersion).To(Equal("2"))
203204
})
204205

205206
It("should be able to Delete", func() {
206207
By("Deleting a deployment")
207-
err := cl.Delete(nil, dep)
208+
err := cl.Delete(context.Background(), dep)
208209
Expect(err).To(BeNil())
209210

210211
By("Listing all deployments in the namespace")
211212
list := &appsv1.DeploymentList{}
212-
err = cl.List(nil, list, client.InNamespace("ns1"))
213+
err = cl.List(context.Background(), list, client.InNamespace("ns1"))
213214
Expect(err).To(BeNil())
214215
Expect(list.Items).To(HaveLen(1))
215216
Expect(list.Items).To(ConsistOf(*dep2))
216217
})
217218

218219
It("should be able to Delete a Collection", func() {
219220
By("Deleting a deploymentList")
220-
err := cl.DeleteAllOf(nil, &appsv1.Deployment{}, client.InNamespace("ns1"))
221+
err := cl.DeleteAllOf(context.Background(), &appsv1.Deployment{}, client.InNamespace("ns1"))
221222
Expect(err).To(BeNil())
222223

223224
By("Listing all deployments in the namespace")
224225
list := &appsv1.DeploymentList{}
225-
err = cl.List(nil, list, client.InNamespace("ns1"))
226+
err = cl.List(context.Background(), list, client.InNamespace("ns1"))
226227
Expect(err).To(BeNil())
227228
Expect(list.Items).To(BeEmpty())
228229
})
@@ -236,7 +237,7 @@ var _ = Describe("Fake client", func() {
236237
Namespace: "ns2",
237238
},
238239
}
239-
err := cl.Create(nil, newcm, client.CreateDryRunAll)
240+
err := cl.Create(context.Background(), newcm, client.DryRunAll)
240241
Expect(err).To(BeNil())
241242

242243
By("Getting the new configmap")
@@ -245,7 +246,7 @@ var _ = Describe("Fake client", func() {
245246
Namespace: "ns2",
246247
}
247248
obj := &corev1.ConfigMap{}
248-
err = cl.Get(nil, namespacedName, obj)
249+
err = cl.Get(context.Background(), namespacedName, obj)
249250
Expect(err).To(HaveOccurred())
250251
Expect(errors.IsNotFound(err)).To(BeTrue())
251252
Expect(obj).NotTo(Equal(newcm))
@@ -263,7 +264,7 @@ var _ = Describe("Fake client", func() {
263264
"test-key": "new-value",
264265
},
265266
}
266-
err := cl.Update(nil, newcm, client.UpdateDryRunAll)
267+
err := cl.Update(context.Background(), newcm, client.DryRunAll)
267268
Expect(err).To(BeNil())
268269

269270
By("Getting the new configmap")
@@ -272,7 +273,7 @@ var _ = Describe("Fake client", func() {
272273
Namespace: "ns2",
273274
}
274275
obj := &corev1.ConfigMap{}
275-
err = cl.Get(nil, namespacedName, obj)
276+
err = cl.Get(context.Background(), namespacedName, obj)
276277
Expect(err).To(BeNil())
277278
Expect(obj).To(Equal(cm))
278279
Expect(obj.ObjectMeta.ResourceVersion).To(Equal(""))
@@ -289,7 +290,7 @@ var _ = Describe("Fake client", func() {
289290
},
290291
})
291292
Expect(err).NotTo(HaveOccurred())
292-
err = cl.Patch(nil, dep, client.RawPatch(types.StrategicMergePatchType, mergePatch))
293+
err = cl.Patch(context.Background(), dep, client.RawPatch(types.StrategicMergePatchType, mergePatch))
293294
Expect(err).NotTo(HaveOccurred())
294295

295296
By("Getting the patched deployment")
@@ -298,7 +299,7 @@ var _ = Describe("Fake client", func() {
298299
Namespace: "ns1",
299300
}
300301
obj := &appsv1.Deployment{}
301-
err = cl.Get(nil, namespacedName, obj)
302+
err = cl.Get(context.Background(), namespacedName, obj)
302303
Expect(err).NotTo(HaveOccurred())
303304
Expect(obj.Annotations["foo"]).To(Equal("bar"))
304305
Expect(obj.ObjectMeta.ResourceVersion).To(Equal("1"))

pkg/controller/controller_integration_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ var _ = Describe("controller", func() {
122122
By("Invoking Reconciling for Update")
123123
newDeployment := deployment.DeepCopy()
124124
newDeployment.Labels = map[string]string{"foo": "bar"}
125-
newDeployment, err = clientset.AppsV1().Deployments("default").Update(newDeployment)
125+
_, err = clientset.AppsV1().Deployments("default").Update(newDeployment)
126126
Expect(err).NotTo(HaveOccurred())
127127
Expect(<-reconciled).To(Equal(expectedReconcileRequest))
128128

@@ -152,7 +152,7 @@ var _ = Describe("controller", func() {
152152
By("Invoking Reconciling for an OwnedObject when it is updated")
153153
newReplicaset := replicaset.DeepCopy()
154154
newReplicaset.Labels = map[string]string{"foo": "bar"}
155-
newReplicaset, err = clientset.AppsV1().ReplicaSets("default").Update(newReplicaset)
155+
_, err = clientset.AppsV1().ReplicaSets("default").Update(newReplicaset)
156156
Expect(err).NotTo(HaveOccurred())
157157
Expect(<-reconciled).To(Equal(expectedReconcileRequest))
158158

pkg/handler/eventhandler_test.go

-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ var _ = Describe("Eventhandler", func() {
4242
t := true
4343
BeforeEach(func() {
4444
q = controllertest.Queue{Interface: workqueue.New()}
45-
instance = handler.EnqueueRequestForObject{}
4645
pod = &corev1.Pod{
4746
ObjectMeta: metav1.ObjectMeta{Namespace: "biz", Name: "baz"},
4847
}

pkg/internal/controller/controller.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,7 @@ func (c *Controller) reconcileHandler(obj interface{}) bool {
236236
// Update metrics after processing each item
237237
reconcileStartTS := time.Now()
238238
defer func() {
239-
c.updateMetrics(time.Now().Sub(reconcileStartTS))
239+
c.updateMetrics(time.Since(reconcileStartTS))
240240
}()
241241

242242
var req reconcile.Request

pkg/leaderelection/fake/leader_election.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ func (f *ResourceLock) Update(ler resourcelock.LeaderElectionRecord) error {
8181

8282
// RecordEvent implements the ResourceLockInterface.
8383
func (f *ResourceLock) RecordEvent(s string) {
84-
return
84+
8585
}
8686

8787
// Identity implements the ResourceLockInterface.

pkg/log/zap/zap_test.go

+2
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ type fakeLoggerRoot struct {
5858
messages []logInfo
5959
}
6060

61+
var _ logr.Logger = &fakeLogger{}
62+
6163
// fakeLogger is a fake implementation of logr.Logger that records
6264
// messages, tags, and names,
6365
// just records the name.

pkg/manager/internal.go

+6-10
Original file line numberDiff line numberDiff line change
@@ -360,11 +360,9 @@ func (cm *controllerManager) serveMetrics(stop <-chan struct{}) {
360360
}()
361361

362362
// Shutdown the server when stop is closed
363-
select {
364-
case <-stop:
365-
if err := server.Shutdown(context.Background()); err != nil {
366-
cm.errSignal.SignalError(err)
367-
}
363+
<-stop
364+
if err := server.Shutdown(context.Background()); err != nil {
365+
cm.errSignal.SignalError(err)
368366
}
369367
}
370368

@@ -392,11 +390,9 @@ func (cm *controllerManager) serveHealthProbes(stop <-chan struct{}) {
392390
cm.mu.Unlock()
393391

394392
// Shutdown the server when stop is closed
395-
select {
396-
case <-stop:
397-
if err := server.Shutdown(context.Background()); err != nil {
398-
cm.errSignal.SignalError(err)
399-
}
393+
<-stop
394+
if err := server.Shutdown(context.Background()); err != nil {
395+
cm.errSignal.SignalError(err)
400396
}
401397
}
402398

pkg/manager/signals/signal_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ var _ = Describe("runtime signal", func() {
3636
task := &Task{
3737
ticker: time.NewTicker(time.Second * 2),
3838
}
39-
c := make(chan os.Signal)
39+
c := make(chan os.Signal, 1)
4040
signal.Notify(c, os.Interrupt)
4141
task.wg.Add(1)
4242
go func(c chan os.Signal) {

pkg/reconcile/example_test.go

-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ import (
2626

2727
// This example implements a simple no-op reconcile function that prints the object to be Reconciled.
2828
func ExampleFunc() {
29-
type Reconciler struct{}
3029

3130
r := reconcile.Func(func(o reconcile.Request) (reconcile.Result, error) {
3231
// Create your business logic to create, update, delete objects here.

pkg/webhook/server.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ func (s *Server) Register(path string, hook http.Handler) {
119119
func instrumentedHook(path string, hookRaw http.Handler) http.Handler {
120120
return http.HandlerFunc(func(resp http.ResponseWriter, req *http.Request) {
121121
startTS := time.Now()
122-
defer func() { metrics.RequestLatency.WithLabelValues(path).Observe(time.Now().Sub(startTS).Seconds()) }()
122+
defer func() { metrics.RequestLatency.WithLabelValues(path).Observe(time.Since(startTS).Seconds()) }()
123123
hookRaw.ServeHTTP(resp, req)
124124

125125
// TODO(directxman12): add back in metric about total requests broken down by result?

0 commit comments

Comments
 (0)