Preparing report...

Report for github.com/zalando-incubator/cluster-lifecycle-manager

A+    Excellent!    Found 28 issues across 78 files

Tweet

gofmt97%

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


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!


golint73%

Golint is a linter for Go source code.

    • cluster-lifecycle-manager/channel/simple_config.go
    • Line 19: warning: exported type SimpleConfig should have comment or be unexported (golint)
    • Line 25: warning: exported function NewSimpleConfig should have comment or be unexported (golint)
    • Line 49: warning: exported method SimpleConfig.StackManifest should have comment or be unexported (golint)
    • Line 53: warning: exported method SimpleConfig.NodePoolManifest should have comment or be unexported (golint)
    • Line 57: warning: exported method SimpleConfig.DefaultsManifests should have comment or be unexported (golint)
    • Line 68: warning: exported method SimpleConfig.DeletionsManifests should have comment or be unexported (golint)
    • Line 79: warning: exported method SimpleConfig.Components should have comment or be unexported (golint)
    • Line 122: warning: exported method SimpleConfig.Delete should have comment or be unexported (golint)
    • cluster-lifecycle-manager/pkg/aws/instance_info.go
    • Line 17: warning: exported type Instance should have comment or be unexported (golint)
    • Line 25: warning: exported method Instance.AvailableStorage should have comment or be unexported (golint)
    • Line 49: warning: exported function InstanceInfo should have comment or be unexported (golint)
    • Line 68: warning: exported function SyntheticInstanceInfo should have comment or be unexported (golint)
    • cluster-lifecycle-manager/channel/caching_source.go
    • Line 16: warning: exported function NewCachingSource should have comment or be unexported (golint)
    • Line 23: warning: exported method CachingSource.Name should have comment or be unexported (golint)
    • Line 27: warning: exported method CachingSource.Update should have comment or be unexported (golint)
    • Line 32: warning: exported method CachingSource.Version should have comment or be unexported (golint)
    • cluster-lifecycle-manager/channel/combined.go
    • Line 12: warning: exported type CombinedSource should have comment or be unexported (golint)
    • Line 26: warning: exported function NewCombinedSource should have comment or be unexported (golint)
    • Line 40: warning: exported method CombinedSource.Name should have comment or be unexported (golint)
    • Line 44: warning: exported method CombinedSource.Update should have comment or be unexported (golint)
    • Line 55: warning: exported method CombinedSource.Version should have comment or be unexported (golint)
    • cluster-lifecycle-manager/pkg/updatestrategy/node_pool_manager.go
    • Line 159: warning: exported method KubernetesNodePoolManager.MarkNodeForDecommission should have comment or be unexported (golint)
    • Line 176: warning: exported method KubernetesNodePoolManager.AbortNodeDecommissioning should have comment or be unexported (golint)
    • Line 184: warning: exported method KubernetesNodePoolManager.DisableReplacementNodeProvisioning should have comment or be unexported (golint)
    • Line 343: warning: exported method KubernetesNodePoolManager.MarkPoolForDecommission should have comment or be unexported (golint)
    • cluster-lifecycle-manager/provisioner/openid_provider.go
    • Line 20: warning: exported type OpenIDProviderProvisioner should have comment or be unexported (golint)
    • Line 27: warning: exported function NewOpenIDProviderProvisioner should have comment or be unexported (golint)
    • Line 36: warning: exported method OpenIDProviderProvisioner.Provision should have comment or be unexported (golint)
    • Line 132: warning: exported method OpenIDProviderProvisioner.Delete should have comment or be unexported (golint)
    • cluster-lifecycle-manager/api/node_pool.go
    • Line 23: warning: exported method NodePool.IsSpot should have comment or be unexported (golint)
    • Line 27: warning: exported method NodePool.IsSpotIO should have comment or be unexported (golint)
    • Line 31: warning: exported method NodePool.IsMaster should have comment or be unexported (golint)
    • cluster-lifecycle-manager/channel/config_source.go
    • Line 9: warning: exported type ConfigVersion should have comment or be unexported (golint)
    • Line 31: warning: exported type Manifest should have comment or be unexported (golint)
    • Line 36: warning: exported type Component should have comment or be unexported (golint)
    • Line 41: warning: exported type Config should have comment or be unexported (golint)
    • cluster-lifecycle-manager/channel/directory.go
    • Line 23: warning: exported method Directory.Name should have comment or be unexported (golint)
    • Line 27: warning: exported method Directory.Update should have comment or be unexported (golint)
    • Line 31: warning: exported method Directory.Version should have comment or be unexported (golint)
    • Line 35: warning: exported method Directory.ID should have comment or be unexported (golint)
    • Line 39: warning: exported method Directory.Get should have comment or be unexported (golint)
    • cluster-lifecycle-manager/channel/git.go
    • Line 89: warning: exported method Git.Name should have comment or be unexported (golint)
    • Line 93: warning: exported method Git.Update should have comment or be unexported (golint)
    • Line 117: warning: exported method Git.Version should have comment or be unexported (golint)
    • cluster-lifecycle-manager/pkg/updatestrategy/aws_spotio.go
    • Line 138: warning: exported type InstanceConfig should have comment or be unexported (golint)
    • Line 225: warning: exported method SpotIONodePoolsBackend.MarkForDecommission should have comment or be unexported (golint)
    • Line 229: warning: exported method SpotIONodePoolsBackend.Scale should have comment or be unexported (golint)
    • Line 233: warning: exported method SpotIONodePoolsBackend.Terminate should have comment or be unexported (golint)

gocyclo89%

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.

    • cluster-lifecycle-manager/provisioner/clusterpy.go
    • Line 186: warning: cyclomatic complexity 40 of function (*clusterpyProvisioner).Provision() is high (> 15) (gocyclo)
    • Line 509: warning: cyclomatic complexity 19 of function (*clusterpyProvisioner).Decommission() is high (> 15) (gocyclo)
    • Line 701: warning: cyclomatic complexity 16 of function (*clusterpyProvisioner).prepareProvision() is high (> 15) (gocyclo)
    • cluster-lifecycle-manager/pkg/updatestrategy/aws_asg.go
    • Line 464: warning: cyclomatic complexity 23 of function (*ASGNodePoolsBackend).getInstancesToUpdate() is high (> 15) (gocyclo)
    • Line 287: warning: cyclomatic complexity 21 of function (*ASGNodePoolsBackend).Terminate() is high (> 15) (gocyclo)
    • Line 134: warning: cyclomatic complexity 16 of function (*ASGNodePoolsBackend).Scale() is high (> 15) (gocyclo)

ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!