Skip to content
This repository was archived by the owner on Nov 14, 2024. It is now read-only.

Commit 5549210

Browse files
author
Jonathan Yu
authored
chore: use regex for importas rules (#22)
Simplify the list of importas rules by using regular expressions to match import paths.
1 parent 9f0d14b commit 5549210

File tree

2 files changed

+8
-50
lines changed

2 files changed

+8
-50
lines changed

.golangci.yml

Lines changed: 6 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -49,60 +49,18 @@ linters-settings:
4949

5050
importas:
5151
no-unaliased: true
52-
# These primarily come from clientset.go in k8s.io/client-go. Even the
53-
# official Kubernetes codebase has conflicts, though.
5452
alias:
55-
- pkg: k8s.io/api/core/(v[\w\d]+)
56-
alias: core$1
57-
- pkg: k8s.io/api/authorization/(v[\w\d]+)
58-
alias: authorization$1
53+
- pkg: k8s.io/api/(\w+)/(v[\w\d]+)
54+
alias: ${1}${2}
5955

6056
- pkg: k8s.io/apimachinery/pkg/apis/meta/(v[\w\d]+)
61-
alias: meta$1
57+
alias: meta${1}
6258

63-
- pkg: k8s.io/client-go/kubernetes/typed/admissionregistration/(v[\w\d]+)
64-
alias: admissionregistration$1
65-
- pkg: k8s.io/client-go/kubernetes/typed/apps/(v[\w\d]+)
66-
alias: apps$1
67-
- pkg: k8s.io/client-go/kubernetes/typed/authentication/(v[\w\d]+)
68-
alias: authentication$1
69-
- pkg: k8s.io/client-go/kubernetes/typed/authorization/(v[\w\d]+)
70-
alias: authorizationclient$1
71-
- pkg: k8s.io/client-go/kubernetes/typed/autoscaling/(v[\w\d]+)
72-
alias: autoscaling$1
73-
- pkg: k8s.io/client-go/kubernetes/typed/batch/(v[\w\d]+)
74-
alias: batch$1
75-
- pkg: k8s.io/client-go/kubernetes/typed/certificates/(v[\w\d]+)
76-
alias: certificates$1
77-
- pkg: k8s.io/client-go/kubernetes/typed/coordination/(v[\w\d]+)
78-
alias: coordination$1
79-
- pkg: k8s.io/client-go/kubernetes/typed/discovery/(v[\w\d]+)
80-
alias: discovery$1
81-
- pkg: k8s.io/client-go/kubernetes/typed/events/(v[\w\d]+)
82-
alias: events$1
83-
- pkg: k8s.io/client-go/kubernetes/typed/extensions/(v[\w\d]+)
84-
alias: extensions$1
85-
- pkg: k8s.io/client-go/kubernetes/typed/flowcontrol/(v[\w\d]+)
86-
alias: flowcontrol$1
87-
- pkg: k8s.io/client-go/kubernetes/typed/apiserverinternal/(v[\w\d]+)
88-
alias: internal$1
89-
- pkg: k8s.io/client-go/kubernetes/typed/networking/(v[\w\d]+)
90-
alias: networking$1
91-
- pkg: k8s.io/client-go/kubernetes/typed/node/(v[\w\d]+)
92-
alias: node$1
93-
- pkg: k8s.io/client-go/kubernetes/typed/policy/(v[\w\d]+)
94-
alias: policy$1
95-
- pkg: k8s.io/client-go/kubernetes/typed/rbac/(v[\w\d]+)
96-
alias: rbac$1
97-
- pkg: k8s.io/client-go/kubernetes/typed/scheduling/(v[\w\d]+)
98-
alias: scheduling$1
99-
- pkg: k8s.io/client-go/kubernetes/typed/storage/(v[\w\d]+)
100-
alias: storage$1
101-
- pkg: k8s.io/client-go/kubernetes/typed/core/(v[\w\d]+)
102-
alias: typedcore$1
59+
- pkg: k8s.io/client-go/kubernetes/typed/(\w+)/(v[\w\d]+)
60+
alias: ${1}${2}client
10361

10462
- pkg: k8s.io/metrics/pkg/apis/metrics/(v[\w\d]+)
105-
alias: metrics$1
63+
alias: metrics${1}
10664

10765
revive:
10866
# see https://github.com/mgechev/revive#available-rules for details.

internal/checks/kube/rbac.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717
authorizationv1 "k8s.io/api/authorization/v1"
1818
rbacv1 "k8s.io/api/rbac/v1"
1919
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
20-
authorizationclientv1 "k8s.io/client-go/kubernetes/typed/authorization/v1"
20+
authorizationv1client "k8s.io/client-go/kubernetes/typed/authorization/v1"
2121
rbacutil "k8s.io/kubectl/pkg/util/rbac"
2222
"k8s.io/kubectl/pkg/util/slice"
2323
)
@@ -194,7 +194,7 @@ func (k *KubernetesChecker) checkRBACFallback(ctx context.Context) []*api.CheckR
194194
return results
195195
}
196196

197-
func (k *KubernetesChecker) checkOneRBACSSAR(ctx context.Context, authClient authorizationclientv1.AuthorizationV1Interface, req *ResourceRequirement, reqVerbs ResourceVerbs) error {
197+
func (k *KubernetesChecker) checkOneRBACSSAR(ctx context.Context, authClient authorizationv1client.AuthorizationV1Interface, req *ResourceRequirement, reqVerbs ResourceVerbs) error {
198198
have := make([]string, 0, len(reqVerbs))
199199
for _, verb := range reqVerbs {
200200
sar := &authorizationv1.SelfSubjectAccessReview{

0 commit comments

Comments
 (0)