Preparing report...

Report for github.com/fluxcd/flagger

A+    Excellent!    Found 108 issues across 370 files

Tweet

gofmt100%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command

No problems detected. Good job!


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo96%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

    • flagger/pkg/canary/config_tracker.go
    • Line 125: warning: cyclomatic complexity 29 of function (*ConfigTracker).GetTargetConfigs() is high (> 15) (gocyclo)
    • Line 383: warning: cyclomatic complexity 24 of function (*ConfigTracker).ApplyPrimaryConfigs() is high (> 15) (gocyclo)
    • flagger/pkg/controller/scheduler.go
    • Line 157: warning: cyclomatic complexity 57 of function (*Controller).advanceCanary() is high (> 15) (gocyclo)
    • Line 601: warning: cyclomatic complexity 16 of function (*Controller).runBlueGreen() is high (> 15) (gocyclo)
    • flagger/pkg/controller/scheduler_metrics.go
    • Line 93: warning: cyclomatic complexity 36 of function (*Controller).runBuiltinMetricChecks() is high (> 15) (gocyclo)
    • Line 234: warning: cyclomatic complexity 17 of function (*Controller).runMetricChecks() is high (> 15) (gocyclo)
    • Line 38: warning: cyclomatic complexity 16 of function (*Controller).checkMetricProviderAvailability() is high (> 15) (gocyclo)

golint74%

Golint is a linter for Go source code.

    • flagger/pkg/apis/gloo/gloo/v1/types.go
    • Line 19: warning: exported type UpstreamSpec should have comment or be unexported (golint)
    • Line 30: warning: exported type KubeUpstream should have comment or be unexported (golint)
    • Line 37: warning: exported type UpstreamSslConfig should have comment or be unexported (golint)
    • Line 49: warning: comment on exported type UpstreamSslConfig_SslFiles should be of the form "UpstreamSslConfig_SslFiles ..." (with optional leading article) (golint)
    • Line 50: warning: don't use underscores in Go names; type UpstreamSslConfig_SslFiles should be UpstreamSslConfigSslFiles (golint)
    • Line 56: warning: comment on exported type UpstreamSslConfig_Sds should be of the form "UpstreamSslConfig_Sds ..." (with optional leading article) (golint)
    • Line 57: warning: don't use underscores in Go names; type UpstreamSslConfig_Sds should be UpstreamSslConfigSds (golint)
    • Line 67: warning: exported type CallCredentials should have comment or be unexported (golint)
    • Line 71: warning: don't use underscores in Go names; type CallCredentials_FileCredentialSource should be CallCredentialsFileCredentialSource (golint)
    • Line 71: warning: exported type CallCredentials_FileCredentialSource should have comment or be unexported (golint)
    • Line 76: warning: exported type SslParameters should have comment or be unexported (golint)
    • Line 83: warning: exported type CircuitBreakerConfig should have comment or be unexported (golint)
    • Line 90: warning: exported type ConnectionConfig should have comment or be unexported (golint)
    • Line 98: warning: don't use underscores in Go names; type ConnectionConfig_TcpKeepAlive should be ConnectionConfigTCPKeepAlive (golint)
    • Line 98: warning: exported type ConnectionConfig_TcpKeepAlive should have comment or be unexported (golint)
    • Line 104: warning: don't use underscores in Go names; type ConnectionConfig_HttpProtocolOptions should be ConnectionConfigHTTPProtocolOptions (golint)
    • Line 104: warning: exported type ConnectionConfig_HttpProtocolOptions should have comment or be unexported (golint)
    • Line 111: warning: exported type Duration should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/istio.go
    • Line 65: warning: exported type IstioObserver should have comment or be unexported (golint)
    • Line 69: warning: exported method IstioObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 83: warning: exported method IstioObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/loadtester/helm.go
    • Line 26: warning: exported const TaskTypeHelm should have comment or be unexported (golint)
    • Line 28: warning: exported type HelmTask should have comment or be unexported (golint)
    • Line 34: warning: exported method HelmTask.Hash should have comment or be unexported (golint)
    • Line 38: warning: exported method HelmTask.Run should have comment or be unexported (golint)
    • Line 47: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • flagger/pkg/controller/scheduler_hooks.go
    • Line 60: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 95: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 111: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 126: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • flagger/pkg/loadtester/bash.go
    • Line 25: warning: exported const TaskTypeBash should have comment or be unexported (golint)
    • Line 27: warning: exported type BashTask should have comment or be unexported (golint)
    • Line 33: warning: exported method BashTask.Hash should have comment or be unexported (golint)
    • Line 37: warning: exported method BashTask.Run should have comment or be unexported (golint)
    • Line 44: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • flagger/pkg/metrics/observers/gloo.go
    • Line 61: warning: exported type GlooObserver should have comment or be unexported (golint)
    • Line 65: warning: exported method GlooObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 79: warning: exported method GlooObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/canary/factory.go
    • Line 26: warning: exported type Factory should have comment or be unexported (golint)
    • Line 35: warning: exported function NewFactory should have comment or be unexported (golint)
    • Line 51: warning: exported method Factory.Controller should have comment or be unexported (golint)
    • flagger/pkg/loadtester/task.go
    • Line 28: warning: comment on exported type Task should be of the form "Task ..." (with optional leading article) (golint)
    • Line 36: warning: exported type TaskBase should have comment or be unexported (golint)
    • Line 41: warning: exported method TaskBase.Canary should have comment or be unexported (golint)
    • Line 53: warning: exported type TaskFactory should have comment or be unexported (golint)
    • Line 55: warning: exported function GetTaskFactory should have comment or be unexported (golint)
    • Line 60: warning: exported type TaskRunResult should have comment or be unexported (golint)
    • flagger/pkg/loadtester/task_shell.go
    • Line 29: warning: exported const TaskTypeShell should have comment or be unexported (golint)
    • Line 42: warning: exported type CmdTask should have comment or be unexported (golint)
    • Line 48: warning: exported method CmdTask.Hash should have comment or be unexported (golint)
    • Line 52: warning: exported method CmdTask.Run should have comment or be unexported (golint)
    • flagger/pkg/apis/flagger/v1beta1/metric.go
    • Line 27: warning: exported const MetricTemplateKind should have comment (or a comment on this block) or be unexported (golint)
    • Line 61: warning: comment on exported type MetricTemplateProvider should be of the form "MetricTemplateProvider ..." (with optional leading article) (golint)
    • Line 101: warning: exported type MetricTemplateStatus should have comment or be unexported (golint)
    • Line 106: warning: exported type MetricTemplateCondition should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/http.go
    • Line 62: warning: exported type HttpObserver should have comment or be unexported (golint)
    • Line 66: warning: exported method HttpObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 80: warning: exported method HttpObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/loadtester/concord.go
    • Line 50: warning: exported const ARGUMENTS_INPUT_PREFIX should have comment or be unexported (golint)
    • Line 148: warning: exported method ConcordTask.Hash should have comment or be unexported (golint)
    • Line 156: warning: exported method ConcordTask.Run should have comment or be unexported (golint)
    • flagger/pkg/apis/istio/v1alpha3/destination_rule.go
    • Line 1: warning: package comment should be of the form "Package v1alpha3 ..." (golint)
    • Line 8: warning: comment on exported type DestinationRule should be of the form "DestinationRule ..." (with optional leading article) (golint)
    • Line 17: warning: comment on exported type DestinationRuleSpec should be of the form "DestinationRuleSpec ..." (with optional leading article) (golint)
    • Line 115: warning: comment on exported type TrafficPolicy should be of the form "TrafficPolicy ..." (with optional leading article) (golint)
    • Line 139: warning: comment on exported type PortTrafficPolicy should be of the form "PortTrafficPolicy ..." (with optional leading article) (golint)
    • Line 163: warning: comment on exported type Subset should be of the form "Subset ..." (with optional leading article) (golint)
    • Line 207: warning: comment on exported type LoadBalancerSettings should be of the form "LoadBalancerSettings ..." (with optional leading article) (golint)
    • Line 248: warning: comment on exported type SimpleLB should be of the form "SimpleLB ..." (with optional leading article) (golint)
    • Line 252: warning: comment on exported const SimpleLBRoundRobin should be of the form "SimpleLBRoundRobin ..." (golint)
    • Line 255: warning: comment on exported const SimpleLBLeastConn should be of the form "SimpleLBLeastConn ..." (golint)
    • Line 260: warning: comment on exported const SimpleLBRandom should be of the form "SimpleLBRandom ..." (golint)
    • Line 265: warning: comment on exported const SimpleLBPassthrough should be of the form "SimpleLBPassthrough ..." (golint)
    • Line 273: warning: comment on exported type ConsistentHashLB should be of the form "ConsistentHashLB ..." (with optional leading article) (golint)
    • Line 300: warning: comment on exported type HTTPCookie should be of the form "HTTPCookie ..." (with optional leading article) (golint)
    • Line 314: warning: comment on exported type ConnectionPoolSettings should be of the form "ConnectionPoolSettings ..." (with optional leading article) (golint)
    • Line 343: warning: comment on exported type TCPSettings should be of the form "TCPSettings ..." (with optional leading article) (golint)
    • Line 352: warning: comment on exported type HTTPSettings should be of the form "HTTPSettings ..." (with optional leading article) (golint)
    • Line 381: warning: comment on exported type OutlierDetection should be of the form "OutlierDetection ..." (with optional leading article) (golint)
    • Line 476: warning: comment on exported type TLSSettings should be of the form "TLSSettings ..." (with optional leading article) (golint)
    • Line 554: warning: comment on exported type TLSmode should be of the form "TLSmode ..." (with optional leading article) (golint)
    • Line 558: warning: comment on exported const TLSmodeDisable should be of the form "TLSmodeDisable ..." (golint)
    • Line 561: warning: comment on exported const TLSmodeSimple should be of the form "TLSmodeSimple ..." (golint)
    • Line 564: warning: comment on exported const TLSmodeMutual should be of the form "TLSmodeMutual ..." (golint)
    • Line 568: warning: comment on exported const TLSmodeIstioMutual should be of the form "TLSmodeIstioMutual ..." (golint)
    • Line 576: warning: comment on exported type DestinationRuleList should be of the form "DestinationRuleList ..." (with optional leading article) (golint)
    • flagger/pkg/metrics/observers/appmesh.go
    • Line 62: warning: exported type AppMeshObserver should have comment or be unexported (golint)
    • Line 66: warning: exported method AppMeshObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 80: warning: exported method AppMeshObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/contour.go
    • Line 61: warning: exported type ContourObserver should have comment or be unexported (golint)
    • Line 65: warning: exported method ContourObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 79: warning: exported method ContourObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/canary/deployment_controller.go
    • Line 162: warning: comment on exported method DeploymentController.ScaleToZero should be of the form "ScaleToZero ..." (golint)
    • Line 180: warning: exported method DeploymentController.ScaleFromZero should have comment or be unexported (golint)
    • Line 401: warning: exported method DeploymentController.HaveDependenciesChanged should have comment or be unexported (golint)
    • flagger/pkg/router/appmesh_v1beta2.go
    • Line 39: warning: comment on exported type AppMeshv1beta2Router should be of the form "AppMeshv1beta2Router ..." (with optional leading article) (golint)
    • Line 601: warning: exported method AppMeshv1beta2Router.Finalize should have comment or be unexported (golint)
    • flagger/pkg/apis/appmesh/v1beta1/types.go
    • Line 28: warning: exported type MeshServiceDiscoveryType should have comment or be unexported (golint)
    • Line 49: warning: exported type MeshConditionType should have comment or be unexported (golint)
    • Line 56: warning: exported type MeshCondition should have comment or be unexported (golint)
    • Line 112: warning: exported type VirtualRouterListener should have comment or be unexported (golint)
    • Line 116: warning: exported type Route should have comment or be unexported (golint)
    • Line 126: warning: exported type HttpRoute should have comment or be unexported (golint)
    • Line 133: warning: exported type HttpRouteMatch should have comment or be unexported (golint)
    • Line 143: warning: exported type HttpRouteHeader should have comment or be unexported (golint)
    • Line 151: warning: exported type HeaderMatchMethod should have comment or be unexported (golint)
    • Line 164: warning: exported type MatchRange should have comment or be unexported (golint)
    • Line 171: warning: exported type HttpRouteAction should have comment or be unexported (golint)
    • Line 175: warning: exported type HttpRetryPolicy should have comment or be unexported (golint)
    • Line 186: warning: exported type HttpRetryPolicyEvent should have comment or be unexported (golint)
    • Line 188: warning: exported type TcpRetryPolicyEvent should have comment or be unexported (golint)
    • Line 191: warning: exported const TcpRetryPolicyEventConnectionError should have comment (or a comment on this block) or be unexported (golint)
    • Line 194: warning: exported type TcpRoute should have comment or be unexported (golint)
    • Line 198: warning: exported type TcpRouteAction should have comment or be unexported (golint)
    • Line 202: warning: exported type WeightedTarget should have comment or be unexported (golint)
    • Line 221: warning: exported type VirtualServiceConditionType should have comment or be unexported (golint)
    • Line 226: warning: exported const VirtualRouterActive should have comment (or a comment on this block) or be unexported (golint)
    • Line 231: warning: exported type VirtualServiceCondition should have comment or be unexported (golint)
    • Line 285: warning: exported type Listener should have comment or be unexported (golint)
    • Line 291: warning: exported type PortMapping should have comment or be unexported (golint)
    • Line 296: warning: exported type HealthCheckPolicy should have comment or be unexported (golint)
    • Line 314: warning: exported const PortProtocolHttp should have comment (or a comment on this block) or be unexported (golint)
    • Line 318: warning: exported type ServiceDiscovery should have comment or be unexported (golint)
    • Line 325: warning: exported type CloudMapServiceDiscovery should have comment or be unexported (golint)
    • Line 332: warning: exported type DnsServiceDiscovery should have comment or be unexported (golint)
    • Line 336: warning: exported type Backend should have comment or be unexported (golint)
    • Line 340: warning: exported type VirtualServiceBackend should have comment or be unexported (golint)
    • Line 381: warning: exported type VirtualNodeConditionType should have comment or be unexported (golint)
    • Line 386: warning: exported const VirtualNodeMeshMarkedForDeletion should have comment (or a comment on this block) or be unexported (golint)
    • Line 389: warning: exported type VirtualNodeCondition should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/traefik.go
    • Line 60: warning: exported type TraefikObserver should have comment or be unexported (golint)
    • Line 64: warning: exported method TraefikObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 79: warning: exported method TraefikObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/canary/daemonset_controller.go
    • Line 49: warning: exported method DaemonSetController.ScaleToZero should have comment or be unexported (golint)
    • Line 74: warning: exported method DaemonSetController.ScaleFromZero should have comment or be unexported (golint)
    • Line 318: warning: exported method DaemonSetController.HaveDependenciesChanged should have comment or be unexported (golint)
    • flagger/pkg/canary/service_controller.go
    • Line 202: warning: comment on exported method ServiceController.HasTargetChanged should be of the form "HasTargetChanged ..." (golint)
    • Line 212: warning: comment on exported method ServiceController.ScaleToZero should be of the form "ScaleToZero ..." (golint)
    • Line 217: warning: exported method ServiceController.ScaleFromZero should have comment or be unexported (golint)
    • Line 221: warning: exported method ServiceController.SyncStatus should have comment or be unexported (golint)
    • Line 230: warning: exported method ServiceController.HaveDependenciesChanged should have comment or be unexported (golint)
    • Line 234: warning: exported method ServiceController.IsPrimaryReady should have comment or be unexported (golint)
    • Line 238: warning: exported method ServiceController.IsCanaryReady should have comment or be unexported (golint)
    • Line 242: warning: exported method ServiceController.Finalize should have comment or be unexported (golint)
    • flagger/pkg/apis/gloo/gateway/v1/types.go
    • Line 18: warning: exported type RouteTableSpec should have comment or be unexported (golint)
    • Line 22: warning: exported type Route should have comment or be unexported (golint)
    • Line 28: warning: exported type Matcher should have comment or be unexported (golint)
    • Line 34: warning: exported type HeaderMatcher should have comment or be unexported (golint)
    • Line 41: warning: exported type QueryParameterMatcher should have comment or be unexported (golint)
    • Line 47: warning: exported type RouteAction should have comment or be unexported (golint)
    • Line 51: warning: exported type MultiDestination should have comment or be unexported (golint)
    • Line 63: warning: comment on exported type Destination should be of the form "Destination ..." (with optional leading article) (golint)
    • flagger/pkg/metrics/observers/factory.go
    • Line 26: warning: exported type Factory should have comment or be unexported (golint)
    • Line 30: warning: exported function NewFactory should have comment or be unexported (golint)
    • Line 45: warning: exported method Factory.Observer should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/linkerd.go
    • Line 65: warning: exported type LinkerdObserver should have comment or be unexported (golint)
    • Line 69: warning: exported method LinkerdObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 83: warning: exported method LinkerdObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/canary/nop_tracker.go
    • Line 27: warning: exported method NopTracker.GetTargetConfigs should have comment or be unexported (golint)
    • Line 32: warning: exported method NopTracker.GetConfigRefs should have comment or be unexported (golint)
    • Line 36: warning: exported method NopTracker.HasConfigChanged should have comment or be unexported (golint)
    • Line 40: warning: exported method NopTracker.CreatePrimaryConfigs should have comment or be unexported (golint)
    • Line 44: warning: exported method NopTracker.ApplyPrimaryConfigs should have comment or be unexported (golint)
    • flagger/pkg/router/kubernetes_noop.go
    • Line 28: warning: exported method KubernetesNoopRouter.Initialize should have comment or be unexported (golint)
    • Line 32: warning: exported method KubernetesNoopRouter.Reconcile should have comment or be unexported (golint)
    • Line 36: warning: exported method KubernetesNoopRouter.Finalize should have comment or be unexported (golint)
    • flagger/pkg/router/skipper.go
    • Line 57: warning: exported type SkipperRouter should have comment or be unexported (golint)
    • Line 144: warning: exported method SkipperRouter.GetRoutes should have comment or be unexported (golint)
    • Line 176: warning: exported method SkipperRouter.SetRoutes should have comment or be unexported (golint)
    • Line 211: warning: exported method SkipperRouter.Finalize should have comment or be unexported (golint)
    • flagger/pkg/apis/appmesh/v1beta2/types.go
    • Line 5: warning: comment on exported type DurationUnit should be of the form "DurationUnit ..." (with optional leading article) (golint)
    • Line 9: warning: exported const DurationUnitS should have comment (or a comment on this block) or be unexported (golint)
    • Line 13: warning: exported type Duration should have comment or be unexported (golint)
    • Line 21: warning: comment on exported type PortNumber should be of the form "PortNumber ..." (with optional leading article) (golint)
    • Line 25: warning: comment on exported type PortProtocol should be of the form "PortProtocol ..." (with optional leading article) (golint)
    • Line 29: warning: exported const PortProtocolGRPC should have comment (or a comment on this block) or be unexported (golint)
    • Line 93: warning: exported type HTTPTimeout should have comment or be unexported (golint)
    • Line 102: warning: exported type GRPCTimeout should have comment or be unexported (golint)
    • Line 111: warning: exported type TCPTimeout should have comment or be unexported (golint)
    • Line 117: warning: exported type TCPConnectionPool should have comment or be unexported (golint)
    • Line 124: warning: exported type HTTPConnectionPool should have comment or be unexported (golint)
    • Line 136: warning: exported type HTTP2ConnectionPool should have comment or be unexported (golint)
    • Line 143: warning: exported type GRPCConnectionPool should have comment or be unexported (golint)
    • flagger/pkg/apis/flagger/v1beta1/alert.go
    • Line 25: warning: exported const AlertProviderKind should have comment (or a comment on this block) or be unexported (golint)
    • Line 76: warning: exported type AlertProviderStatus should have comment or be unexported (golint)
    • Line 81: warning: exported type AlertProviderCondition should have comment or be unexported (golint)
    • flagger/pkg/notifier/factory.go
    • Line 23: warning: exported type Factory should have comment or be unexported (golint)
    • Line 30: warning: exported function NewFactory should have comment or be unexported (golint)
    • Line 39: warning: exported method Factory.Notifier should have comment or be unexported (golint)
    • flagger/pkg/notifier/teams.go
    • Line 24: warning: comment on exported type MSTeams should be of the form "MSTeams ..." (with optional leading article) (golint)
    • Line 46: warning: exported type MSTeamsField should have comment or be unexported (golint)
    • flagger/pkg/loadtester/task_ngrinder.go
    • Line 34: warning: exported const TaskTypeNGrinder should have comment or be unexported (golint)
    • Line 71: warning: exported type NGrinderTask should have comment or be unexported (golint)
    • Line 86: warning: exported method NGrinderTask.Hash should have comment or be unexported (golint)
    • Line 90: warning: comment on exported method NGrinderTask.CloneAndStartEndpoint should be of the form "CloneAndStartEndpoint ..." (golint)
    • Line 95: warning: exported method NGrinderTask.StatusEndpoint should have comment or be unexported (golint)
    • Line 99: warning: exported method NGrinderTask.StopEndpoint should have comment or be unexported (golint)
    • Line 104: warning: comment on exported method NGrinderTask.Run should be of the form "Run ..." (golint)
    • Line 122: warning: comment on exported method NGrinderTask.PollStatus should be of the form "PollStatus ..." (golint)
    • Line 152: warning: context.Context should be the first parameter of a function (golint)
    • flagger/pkg/router/smi.go
    • Line 39: warning: exported type SmiRouter should have comment or be unexported (golint)
    • Line 245: warning: exported method SmiRouter.Finalize should have comment or be unexported (golint)
    • flagger/pkg/notifier/nop.go
    • Line 19: warning: exported type NopNotifier should have comment or be unexported (golint)
    • Line 21: warning: exported method NopNotifier.Post should have comment or be unexported (golint)
    • flagger/pkg/canary/config_tracker.go
    • Line 44: warning: exported type ConfigRefType should have comment or be unexported (golint)
    • Line 47: warning: exported const ConfigRefMap should have comment (or a comment on this block) or be unexported (golint)
    • flagger/pkg/loadtester/helmv3.go
    • Line 26: warning: exported const TaskTypeHelmv3 should have comment or be unexported (golint)
    • Line 28: warning: exported type HelmTaskv3 should have comment or be unexported (golint)
    • Line 34: warning: exported method HelmTaskv3.Hash should have comment or be unexported (golint)
    • Line 38: warning: exported method HelmTaskv3.Run should have comment or be unexported (golint)
    • Line 47: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • flagger/pkg/loadtester/runner.go
    • Line 28: warning: exported type TaskRunnerInterface should have comment or be unexported (golint)
    • Line 35: warning: exported type TaskRunner should have comment or be unexported (golint)
    • Line 43: warning: exported function NewTaskRunner should have comment or be unexported (golint)
    • Line 52: warning: exported method TaskRunner.Add should have comment or be unexported (golint)
    • Line 56: warning: exported method TaskRunner.GetTotalExecs should have comment or be unexported (golint)
    • Line 94: warning: exported method TaskRunner.Start should have comment or be unexported (golint)
    • Line 107: warning: exported method TaskRunner.Timeout should have comment or be unexported (golint)
    • flagger/pkg/router/ingress.go
    • Line 36: warning: exported type IngressRouter should have comment or be unexported (golint)
    • Line 42: warning: exported method IngressRouter.Reconcile should have comment or be unexported (golint)
    • Line 121: warning: exported method IngressRouter.GetRoutes should have comment or be unexported (golint)
    • Line 162: warning: exported method IngressRouter.SetRoutes should have comment or be unexported (golint)
    • Line 262: warning: exported method IngressRouter.GetAnnotationWithPrefix should have comment or be unexported (golint)
    • Line 266: warning: exported method IngressRouter.Finalize should have comment or be unexported (golint)
    • flagger/pkg/apis/appmesh/v1beta2/virtualnode_types.go
    • Line 179: warning: exported const ListenerTLSModeDisabled should have comment (or a comment on this block) or be unexported (golint)
    • Line 184: warning: comment on exported type ListenerTLSMode should be of the form "ListenerTLSMode ..." (with optional leading article) (golint)
    • Line 316: warning: exported type VirtualNodeConditionType should have comment or be unexported (golint)
    • Line 323: warning: exported type VirtualNodeCondition should have comment or be unexported (golint)
    • flagger/pkg/apis/istio/v1alpha3/virtual_service.go
    • Line 1: warning: package comment should be of the form "Package v1alpha3 ..." (golint)
    • Line 12: warning: comment on exported type VirtualService should be of the form "VirtualService ..." (with optional leading article) (golint)
    • Line 286: warning: comment on exported type HTTPRoute should be of the form "HTTPRoute ..." (with optional leading article) (golint)
    • Line 347: warning: comment on exported type Headers should be of the form "Headers ..." (with optional leading article) (golint)
    • Line 371: warning: comment on exported type HTTPMatchRequest should be of the form "HTTPMatchRequest ..." (with optional leading article) (golint)
    • Line 506: warning: exported type DestinationWeight should have comment or be unexported (golint)
    • Line 530: warning: comment on exported type TCPRoute should be of the form "TCPRoute ..." (with optional leading article) (golint)
    • Line 567: warning: comment on exported type L4MatchAttributes should be of the form "L4MatchAttributes ..." (with optional leading article) (golint)
    • Line 664: warning: comment on exported type HTTPRetry should be of the form "HTTPRetry ..." (with optional leading article) (golint)
    • Line 704: warning: comment on exported type CorsPolicy should be of the form "CorsPolicy ..." (with optional leading article) (golint)
    • Line 788: warning: comment on exported type InjectDelay should be of the form "InjectDelay ..." (with optional leading article) (golint)
    • Line 831: warning: comment on exported type InjectAbort should be of the form "InjectAbort ..." (with optional leading article) (golint)
    • flagger/pkg/apis/flagger/v1beta1/canary.go
    • Line 29: warning: exported const CanaryKind should have comment (or a comment on this block) or be unexported (golint)
    • Line 287: warning: exported const SeverityInfo should have comment (or a comment on this block) or be unexported (golint)
    • Line 312: warning: comment on exported const PostRolloutHook should be of the form "PostRolloutHook ..." (golint)
    • flagger/pkg/router/nop.go
    • Line 27: warning: exported method NopRouter.Reconcile should have comment or be unexported (golint)
    • Line 31: warning: exported method NopRouter.SetRoutes should have comment or be unexported (golint)
    • Line 35: warning: exported method NopRouter.GetRoutes should have comment or be unexported (golint)
    • Line 42: warning: exported method NopRouter.Finalize should have comment or be unexported (golint)
    • flagger/pkg/apis/appmesh/v1beta2/virtualrouter_types.go
    • Line 44: warning: exported type MatchRange should have comment or be unexported (golint)
    • Line 121: warning: comment on exported type HTTPRetryPolicyEvent should be of the form "HTTPRetryPolicyEvent ..." (with optional leading article) (golint)
    • Line 124: warning: comment on exported type TCPRetryPolicyEvent should be of the form "TCPRetryPolicyEvent ..." (with optional leading article) (golint)
    • Line 127: warning: comment on exported type GRPCRetryPolicyEvent should be of the form "GRPCRetryPolicyEvent ..." (with optional leading article) (golint)
    • Line 302: warning: exported type VirtualRouterConditionType should have comment or be unexported (golint)
    • Line 309: warning: exported type VirtualRouterCondition should have comment or be unexported (golint)
    • flagger/pkg/metrics/observers/nginx.go
    • Line 69: warning: exported type NginxObserver should have comment or be unexported (golint)
    • Line 73: warning: exported method NginxObserver.GetRequestSuccessRate should have comment or be unexported (golint)
    • Line 87: warning: exported method NginxObserver.GetRequestDuration should have comment or be unexported (golint)
    • flagger/pkg/router/kubernetes_default.go
    • Line 80: warning: exported method KubernetesDefaultRouter.SetRoutes should have comment or be unexported (golint)
    • Line 84: warning: exported method KubernetesDefaultRouter.GetRoutes should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign98%

IneffAssign detects ineffectual assignments in Go code.


misspell98%

Misspell Finds commonly misspelled English words