mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 11:21:47 +00:00
Merge pull request #67675 from cblecker/fix-golint
Automatic merge from submit-queue (batch tested with PRs 67378, 67675, 67654). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Pass files to golint one at a time **What this PR does / why we need it**: When we pass multiple files into golint at once, and golint detects a fatal error in one of them, it will actually exit and not process any more of the files passed. For large packages, this increases the chance that golint will exit. This change will, instead of golinting once per package, will use xargs to run each file through golint individually. **Special notes for your reviewer**: Out of interest, I timed the difference between using find and a regex to exclude the generated files, but `ls | grep` was about 15-20 seconds faster throughout the entire duration of the run (about 2 minutes). **Release note**: ```release-note NONE ```
This commit is contained in:
commit
0c75bf6e4b
@ -23,6 +23,8 @@ pkg/api/v1/pod
|
||||
pkg/api/v1/resource
|
||||
pkg/apis/abac
|
||||
pkg/apis/abac/latest
|
||||
pkg/apis/abac/v0
|
||||
pkg/apis/abac/v1beta1
|
||||
pkg/apis/admission
|
||||
pkg/apis/admission/v1beta1
|
||||
pkg/apis/admissionregistration
|
||||
@ -30,6 +32,9 @@ pkg/apis/admissionregistration/v1alpha1
|
||||
pkg/apis/admissionregistration/v1beta1
|
||||
pkg/apis/admissionregistration/validation
|
||||
pkg/apis/apps
|
||||
pkg/apis/apps/v1
|
||||
pkg/apis/apps/v1beta1
|
||||
pkg/apis/apps/v1beta2
|
||||
pkg/apis/apps/validation
|
||||
pkg/apis/authentication
|
||||
pkg/apis/authentication/v1
|
||||
@ -39,8 +44,13 @@ pkg/apis/authorization/v1
|
||||
pkg/apis/authorization/v1beta1
|
||||
pkg/apis/authorization/validation
|
||||
pkg/apis/autoscaling
|
||||
pkg/apis/autoscaling/v1
|
||||
pkg/apis/autoscaling/v2beta1
|
||||
pkg/apis/autoscaling/validation
|
||||
pkg/apis/batch
|
||||
pkg/apis/batch/v1
|
||||
pkg/apis/batch/v1beta1
|
||||
pkg/apis/batch/v2alpha1
|
||||
pkg/apis/batch/validation
|
||||
pkg/apis/certificates
|
||||
pkg/apis/certificates/v1beta1
|
||||
@ -52,6 +62,7 @@ pkg/apis/coordination/v1beta1
|
||||
pkg/apis/core
|
||||
pkg/apis/core/helper
|
||||
pkg/apis/core/helper/qos
|
||||
pkg/apis/core/v1
|
||||
pkg/apis/core/v1/helper
|
||||
pkg/apis/core/v1/helper/qos
|
||||
pkg/apis/core/v1/validation
|
||||
@ -59,14 +70,18 @@ pkg/apis/core/validation
|
||||
pkg/apis/events
|
||||
pkg/apis/events/v1beta1
|
||||
pkg/apis/extensions
|
||||
pkg/apis/extensions/v1beta1
|
||||
pkg/apis/extensions/validation
|
||||
pkg/apis/imagepolicy
|
||||
pkg/apis/imagepolicy/v1alpha1
|
||||
pkg/apis/networking
|
||||
pkg/apis/networking/v1
|
||||
pkg/apis/policy
|
||||
pkg/apis/policy/v1beta1
|
||||
pkg/apis/policy/validation
|
||||
pkg/apis/rbac
|
||||
pkg/apis/rbac/v1
|
||||
pkg/apis/rbac/v1alpha1
|
||||
pkg/apis/rbac/v1beta1
|
||||
pkg/apis/rbac/validation
|
||||
pkg/apis/scheduling
|
||||
@ -76,8 +91,10 @@ pkg/apis/settings
|
||||
pkg/apis/settings/v1alpha1
|
||||
pkg/apis/storage
|
||||
pkg/apis/storage/util
|
||||
pkg/apis/storage/v1
|
||||
pkg/apis/storage/v1/util
|
||||
pkg/apis/storage/v1alpha1
|
||||
pkg/apis/storage/v1beta1
|
||||
pkg/apis/storage/v1beta1/util
|
||||
pkg/auth/authorizer/abac
|
||||
pkg/capabilities
|
||||
@ -92,6 +109,7 @@ pkg/cloudprovider/providers/gce/cloud
|
||||
pkg/cloudprovider/providers/ovirt
|
||||
pkg/cloudprovider/providers/photon
|
||||
pkg/cloudprovider/providers/vsphere
|
||||
pkg/cloudprovider/providers/vsphere/vclib
|
||||
pkg/controller
|
||||
pkg/controller/bootstrap
|
||||
pkg/controller/certificates
|
||||
@ -140,6 +158,7 @@ pkg/kubeapiserver/authorizer/modes
|
||||
pkg/kubeapiserver/options
|
||||
pkg/kubeapiserver/server
|
||||
pkg/kubectl
|
||||
pkg/kubectl/apps
|
||||
pkg/kubectl/cmd
|
||||
pkg/kubectl/cmd/auth
|
||||
pkg/kubectl/cmd/config
|
||||
@ -151,6 +170,7 @@ pkg/kubectl/cmd/templates
|
||||
pkg/kubectl/cmd/testing
|
||||
pkg/kubectl/cmd/util
|
||||
pkg/kubectl/cmd/util/editor
|
||||
pkg/kubectl/cmd/util/openapi
|
||||
pkg/kubectl/cmd/util/sanity
|
||||
pkg/kubectl/cmd/wait
|
||||
pkg/kubectl/metricsutil
|
||||
@ -176,6 +196,7 @@ pkg/kubelet/cm/devicemanager/checkpoint
|
||||
pkg/kubelet/cm/util
|
||||
pkg/kubelet/config
|
||||
pkg/kubelet/configmap
|
||||
pkg/kubelet/container
|
||||
pkg/kubelet/container/testing
|
||||
pkg/kubelet/custommetrics
|
||||
pkg/kubelet/dockershim
|
||||
@ -341,6 +362,7 @@ pkg/security/podsecuritypolicy/selinux
|
||||
pkg/security/podsecuritypolicy/user
|
||||
pkg/security/podsecuritypolicy/util
|
||||
pkg/securitycontext
|
||||
pkg/serviceaccount
|
||||
pkg/ssh
|
||||
pkg/util/bandwidth
|
||||
pkg/util/config
|
||||
@ -377,6 +399,7 @@ pkg/util/threading
|
||||
pkg/util/tolerations
|
||||
pkg/util/workqueue/prometheus
|
||||
pkg/version/verflag
|
||||
pkg/volume
|
||||
pkg/volume/aws_ebs
|
||||
pkg/volume/azure_dd
|
||||
pkg/volume/azure_file
|
||||
@ -425,6 +448,7 @@ plugin/pkg/admission/security/podsecuritypolicy
|
||||
plugin/pkg/admission/serviceaccount
|
||||
plugin/pkg/auth/authorizer/node
|
||||
plugin/pkg/auth/authorizer/rbac
|
||||
plugin/pkg/auth/authorizer/rbac/bootstrappolicy
|
||||
staging/src/k8s.io/api/admission/v1beta1
|
||||
staging/src/k8s.io/api/admissionregistration/v1alpha1
|
||||
staging/src/k8s.io/api/admissionregistration/v1beta1
|
||||
@ -466,23 +490,29 @@ staging/src/k8s.io/apiextensions-apiserver/pkg/cmd/server
|
||||
staging/src/k8s.io/apiextensions-apiserver/pkg/controller/finalizer
|
||||
staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status
|
||||
staging/src/k8s.io/apiextensions-apiserver/pkg/features
|
||||
staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource
|
||||
staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresourcedefinition
|
||||
staging/src/k8s.io/apimachinery/pkg/api/apitesting/fuzzer
|
||||
staging/src/k8s.io/apimachinery/pkg/api/apitesting/roundtrip
|
||||
staging/src/k8s.io/apimachinery/pkg/api/meta
|
||||
staging/src/k8s.io/apimachinery/pkg/api/resource
|
||||
staging/src/k8s.io/apimachinery/pkg/api/validation
|
||||
staging/src/k8s.io/apimachinery/pkg/api/validation/path
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/config/v1alpha1
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/fuzzer
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/v1
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/testapigroup
|
||||
staging/src/k8s.io/apimachinery/pkg/apis/testapigroup/v1
|
||||
staging/src/k8s.io/apimachinery/pkg/conversion
|
||||
staging/src/k8s.io/apimachinery/pkg/labels
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/schema
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/serializer
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/serializer/json
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/serializer/protobuf
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/serializer/recognizer
|
||||
staging/src/k8s.io/apimachinery/pkg/runtime/serializer/streaming
|
||||
@ -512,8 +542,10 @@ staging/src/k8s.io/apimachinery/pkg/util/uuid
|
||||
staging/src/k8s.io/apimachinery/pkg/util/validation
|
||||
staging/src/k8s.io/apimachinery/pkg/util/wait
|
||||
staging/src/k8s.io/apimachinery/pkg/util/yaml
|
||||
staging/src/k8s.io/apimachinery/pkg/watch
|
||||
staging/src/k8s.io/apiserver/pkg/admission
|
||||
staging/src/k8s.io/apiserver/pkg/admission/configuration
|
||||
staging/src/k8s.io/apiserver/pkg/admission/initializer
|
||||
staging/src/k8s.io/apiserver/pkg/admission/plugin/initialization
|
||||
staging/src/k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle
|
||||
staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/config
|
||||
@ -598,7 +630,9 @@ staging/src/k8s.io/cli-runtime/pkg/genericclioptions
|
||||
staging/src/k8s.io/cli-runtime/pkg/genericclioptions/printers
|
||||
staging/src/k8s.io/cli-runtime/pkg/genericclioptions/resource
|
||||
staging/src/k8s.io/client-go/deprecated-dynamic
|
||||
staging/src/k8s.io/client-go/discovery
|
||||
staging/src/k8s.io/client-go/discovery/cached
|
||||
staging/src/k8s.io/client-go/discovery/fake
|
||||
staging/src/k8s.io/client-go/dynamic
|
||||
staging/src/k8s.io/client-go/dynamic/fake
|
||||
staging/src/k8s.io/client-go/examples/workqueue
|
||||
@ -619,6 +653,7 @@ staging/src/k8s.io/client-go/kubernetes/typed/policy/v1beta1/fake
|
||||
staging/src/k8s.io/client-go/plugin/pkg/client/auth/oidc
|
||||
staging/src/k8s.io/client-go/rest
|
||||
staging/src/k8s.io/client-go/rest/fake
|
||||
staging/src/k8s.io/client-go/rest/watch
|
||||
staging/src/k8s.io/client-go/scale
|
||||
staging/src/k8s.io/client-go/scale/fake
|
||||
staging/src/k8s.io/client-go/scale/scheme
|
||||
@ -630,6 +665,7 @@ staging/src/k8s.io/client-go/scale/scheme/extensionsint
|
||||
staging/src/k8s.io/client-go/scale/scheme/extensionsv1beta1
|
||||
staging/src/k8s.io/client-go/scale/scheme/extensionsv1beta1
|
||||
staging/src/k8s.io/client-go/testing
|
||||
staging/src/k8s.io/client-go/tools/auth
|
||||
staging/src/k8s.io/client-go/tools/cache
|
||||
staging/src/k8s.io/client-go/tools/cache/testing
|
||||
staging/src/k8s.io/client-go/tools/clientcmd
|
||||
@ -649,6 +685,7 @@ staging/src/k8s.io/client-go/util/integer
|
||||
staging/src/k8s.io/client-go/util/jsonpath
|
||||
staging/src/k8s.io/client-go/util/retry
|
||||
staging/src/k8s.io/client-go/util/testing
|
||||
staging/src/k8s.io/client-go/util/workqueue
|
||||
staging/src/k8s.io/code-generator/cmd/client-gen/args
|
||||
staging/src/k8s.io/code-generator/cmd/client-gen/generators/fake
|
||||
staging/src/k8s.io/code-generator/cmd/client-gen/generators/scheme
|
||||
@ -677,6 +714,8 @@ staging/src/k8s.io/metrics/pkg/client/custom_metrics
|
||||
staging/src/k8s.io/metrics/pkg/client/custom_metrics/fake
|
||||
staging/src/k8s.io/metrics/pkg/client/external_metrics
|
||||
staging/src/k8s.io/metrics/pkg/client/external_metrics/fake
|
||||
staging/src/k8s.io/sample-apiserver/pkg/admission/plugin/banflunder
|
||||
staging/src/k8s.io/sample-apiserver/pkg/admission/wardleinitializer
|
||||
staging/src/k8s.io/sample-apiserver/pkg/apis/wardle
|
||||
staging/src/k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1
|
||||
staging/src/k8s.io/sample-apiserver/pkg/apiserver
|
||||
|
@ -71,10 +71,15 @@ errors=()
|
||||
not_failing=()
|
||||
for p in "${all_packages[@]}"; do
|
||||
# Run golint on package/*.go file explicitly to validate all go files
|
||||
# and not just the ones for the current platform.
|
||||
# Packages with a corresponding foo_test package will make golint fail
|
||||
# with a useless error. Just ignore that, see golang/lint#68.
|
||||
failedLint=$(golint "$p"/*.go 2>/dev/null)
|
||||
# and not just the ones for the current platform. This also will ensure that
|
||||
# _test.go files are linted.
|
||||
# Generated files are ignored, and each file is passed through golint
|
||||
# individually, as if one file in the package contains a fatal error (such as
|
||||
# a foo package with a corresponding foo_test package), golint seems to choke
|
||||
# completely.
|
||||
# Ref: https://github.com/kubernetes/kubernetes/pull/67675
|
||||
# Ref: https://github.com/golang/lint/issues/68
|
||||
failedLint=$(ls "$p"/*.go | egrep -v "(zz_generated.*.go|generated.pb.go|generated.proto|types_swagger_doc_generated.go)" | xargs -L1 golint 2>/dev/null)
|
||||
array_contains "$p" "${failing_packages[@]}" && in_failing=$? || in_failing=$?
|
||||
if [[ -n "${failedLint}" ]] && [[ "${in_failing}" -ne "0" ]]; then
|
||||
errors+=( "${failedLint}" )
|
||||
|
Loading…
Reference in New Issue
Block a user