Preparing report...

Report for github.com/k8sdb/xdb

A    Great!    Found 14 issues across 14 files

Tweet

gofmt92%

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!


gocyclo100%

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.

No problems detected. Good job!


golint28%

Golint is a linter for Go source code.

    • xdb/pkg/controller/xdb.go
    • Line 267: warning: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary) (golint)
    • xdb/pkg/controller/controller.go
    • Line 29: warning: exported type Options should have comment or be unexported (golint)
    • Line 42: warning: exported type Controller should have comment or be unexported (golint)
    • Line 61: warning: exported function New should have comment or be unexported (golint)
    • Line 84: warning: comment on exported method Controller.Run should be of the form "Run ..." (golint)
    • Line 104: warning: comment on exported method Controller.RunAndHold should be of the form "RunAndHold ..." (golint)
    • xdb/pkg/controller/create.go
    • Line 36: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 84: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 223: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 402: warning: don't use underscores in Go names; const SnapshotProcess_Restore should be SnapshotProcessRestore (golint)
    • Line 402: warning: exported const SnapshotProcess_Restore should have comment (or a comment on this block) or be unexported (golint)
    • Line 403: warning: don't use underscores in Go names; const snapshotType_DumpRestore should be snapshotTypeDumpRestore (golint)
    • xdb/pkg/controller/snapshot.go
    • Line 18: warning: don't use underscores in Go names; const SnapshotProcess_Backup should be SnapshotProcessBackup (golint)
    • Line 18: warning: exported const SnapshotProcess_Backup should have comment (or a comment on this block) or be unexported (golint)
    • Line 19: warning: don't use underscores in Go names; const snapshotType_DumpBackup should be snapshotTypeDumpBackup (golint)
    • Line 22: warning: exported method Controller.ValidateSnapshot should have comment or be unexported (golint)
    • Line 36: warning: exported method Controller.GetDatabase should have comment or be unexported (golint)
    • Line 45: warning: exported method Controller.GetSnapshotter should have comment or be unexported (golint)
    • Line 142: warning: exported method Controller.WipeOutSnapshot should have comment or be unexported (golint)
    • xdb/version.go
    • Line 8: warning: exported var Version should have comment or be unexported (golint)
    • xdb/pkg/controller/dormant_database.go
    • Line 13: warning: exported method Controller.Exists should have comment or be unexported (golint)
    • Line 24: warning: exported method Controller.PauseDatabase should have comment or be unexported (golint)
    • Line 49: warning: exported method Controller.WipeOutDatabase should have comment or be unexported (golint)
    • Line 147: warning: exported method Controller.ResumeDatabase should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign0%

IneffAssign detects ineffectual assignments in Go code.

    • xdb/hack/gendocs/main.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/appscode/go/runtime (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/k8sdb/xdb/pkg/cmds (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/spf13/cobra/doc (invalid package name: "") (ineffassign)
    • xdb/pkg/cmds/root.go
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: could not import github.com/appscode/go/version (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/jpillora/go-ogle-analytics (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/spf13/cobra (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/spf13/pflag (invalid package name: "") (ineffassign)
    • Line 30: warning: undeclared name: ga (ineffassign)
    • Line 32: warning: undeclared name: ga (ineffassign)
    • Line 9: warning: "github.com/jpillora/go-ogle-analytics" imported but not used (ineffassign)
    • xdb/pkg/cmds/run.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 13: warning: cannot find package "." in: (ineffassign)
    • Line 15: warning: cannot find package "." in: (ineffassign)
    • Line 16: warning: cannot find package "." in: (ineffassign)
    • Line 17: warning: cannot find package "." in: (ineffassign)
    • Line 18: warning: cannot find package "." in: (ineffassign)
    • Line 19: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import github.com/appscode/log (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/coreos/prometheus-operator/pkg/client/monitoring/v1 (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/k8sdb/apimachinery/client/typed/kubedb/v1alpha1 (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/k8sdb/apimachinery/pkg/controller (invalid package name: "") (ineffassign)
    • Line 13: warning: could not import github.com/k8sdb/xdb/pkg/controller (invalid package name: "") (ineffassign)
    • Line 15: warning: could not import k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/typed/apiextensions/v1beta1 (invalid package name: "") (ineffassign)
    • Line 16: warning: could not import k8s.io/apimachinery/pkg/apis/meta/v1 (invalid package name: "") (ineffassign)
    • Line 17: warning: could not import k8s.io/apimachinery/pkg/util/runtime (invalid package name: "") (ineffassign)
    • Line 18: warning: could not import k8s.io/client-go/kubernetes (invalid package name: "") (ineffassign)
    • Line 19: warning: could not import k8s.io/client-go/tools/clientcmd (invalid package name: "") (ineffassign)
    • xdb/pkg/controller/create.go
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 14: warning: cannot find package "." in: (ineffassign)
    • Line 15: warning: cannot find package "." in: (ineffassign)
    • Line 16: warning: cannot find package "." in: (ineffassign)
    • Line 20: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: could not import github.com/appscode/go/types (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/k8sdb/apimachinery/pkg/docker (invalid package name: "") (ineffassign)
    • Line 14: warning: could not import github.com/k8sdb/apimachinery/pkg/storage (invalid package name: "") (ineffassign)
    • Line 15: warning: could not import k8s.io/api/apps/v1beta1 (invalid package name: "") (ineffassign)
    • Line 16: warning: could not import k8s.io/api/batch/v1 (invalid package name: "") (ineffassign)
    • Line 20: warning: could not import k8s.io/apimachinery/pkg/util/intstr (invalid package name: "") (ineffassign)
    • Line 32: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 71: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 80: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 174: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 211: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 145: warning: exporter declared but not used (ineffassign)
    • Line 219: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 257: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 379: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 394: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 498: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 492: warning: volume declared but not used (ineffassign)
    • Line 20: warning: "k8s.io/apimachinery/pkg/util/intstr" imported but not used (ineffassign)
    • xdb/pkg/controller/rbac.go
    • Line 4: warning: cannot find package "." in: (ineffassign)
    • Line 5: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 4: warning: could not import github.com/appscode/kutil/core/v1 (invalid package name: "") (ineffassign)
    • Line 5: warning: could not import github.com/appscode/kutil/rbac/v1beta1 (invalid package name: "") (ineffassign)
    • Line 6: warning: could not import github.com/k8sdb/apimachinery/apis/kubedb (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import k8s.io/api/rbac/v1beta1 (invalid package name: "") (ineffassign)
    • Line 16: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 27: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 56: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 67: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 81: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 92: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • xdb/pkg/controller/dormant_database.go
    • Line 14: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 26: warning: c.DeleteService undefined (type *Controller has no field or method DeleteService) (ineffassign)
    • Line 31: warning: c.DeleteStatefulSet undefined (type *Controller has no field or method DeleteStatefulSet) (ineffassign)
    • Line 57: warning: c.DeleteSnapshots undefined (type *Controller has no field or method DeleteSnapshots) (ineffassign)
    • Line 62: warning: c.DeletePersistentVolumeClaims undefined (type *Controller has no field or method DeletePersistentVolumeClaims) (ineffassign)
    • Line 92: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 111: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 137: warning: c.DeleteSecret undefined (type *Controller has no field or method DeleteSecret, but does have deleteSecret) (ineffassign)
    • Line 173: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • xdb/main.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/appscode/log/golog (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/k8sdb/xdb/pkg/cmds (invalid package name: "") (ineffassign)
    • xdb/version.go
    • Line 4: warning: cannot find package "." in: (ineffassign)
    • Line 4: warning: could not import github.com/appscode/go/version (invalid package name: "") (ineffassign)
    • xdb/pkg/controller/controller.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 11: warning: cannot find package "." in: (ineffassign)
    • Line 12: warning: cannot find package "." in: (ineffassign)
    • Line 13: warning: cannot find package "." in: (ineffassign)
    • Line 14: warning: cannot find package "." in: (ineffassign)
    • Line 15: warning: cannot find package "." in: (ineffassign)
    • Line 16: warning: cannot find package "." in: (ineffassign)
    • Line 17: warning: cannot find package "." in: (ineffassign)
    • Line 18: warning: cannot find package "." in: (ineffassign)
    • Line 19: warning: cannot find package "." in: (ineffassign)
    • Line 20: warning: cannot find package "." in: (ineffassign)
    • Line 21: warning: cannot find package "." in: (ineffassign)
    • Line 22: warning: cannot find package "." in: (ineffassign)
    • Line 23: warning: cannot find package "." in: (ineffassign)
    • Line 24: warning: cannot find package "." in: (ineffassign)
    • Line 25: warning: cannot find package "." in: (ineffassign)
    • Line 26: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/appscode/go/hold (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/appscode/go/log (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/coreos/prometheus-operator/pkg/client/monitoring/v1 (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import github.com/k8sdb/apimachinery/apis/kubedb/v1alpha1 (invalid package name: "") (ineffassign)
    • Line 11: warning: could not import github.com/k8sdb/apimachinery/client/typed/kubedb/v1alpha1 (invalid package name: "") (ineffassign)
    • Line 12: warning: could not import github.com/k8sdb/apimachinery/client/typed/kubedb/v1alpha1/util (invalid package name: "") (ineffassign)
    • Line 13: warning: could not import github.com/k8sdb/apimachinery/pkg/controller (invalid package name: "") (ineffassign)
    • Line 14: warning: could not import github.com/k8sdb/apimachinery/pkg/eventer (invalid package name: "") (ineffassign)
    • Line 15: warning: could not import k8s.io/api/core/v1 (invalid package name: "") (ineffassign)
    • Line 16: warning: could not import k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1 (invalid package name: "") (ineffassign)
    • Line 17: warning: could not import k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/typed/apiextensions/v1beta1 (invalid package name: "") (ineffassign)
    • Line 18: warning: could not import k8s.io/apimachinery/pkg/api/errors (invalid package name: "") (ineffassign)
    • Line 19: warning: could not import k8s.io/apimachinery/pkg/apis/meta/v1 (invalid package name: "") (ineffassign)
    • Line 20: warning: could not import k8s.io/apimachinery/pkg/labels (invalid package name: "") (ineffassign)
    • Line 21: warning: could not import k8s.io/apimachinery/pkg/runtime (invalid package name: "") (ineffassign)
    • Line 22: warning: could not import k8s.io/apimachinery/pkg/util/wait (invalid package name: "") (ineffassign)
    • Line 23: warning: could not import k8s.io/apimachinery/pkg/watch (invalid package name: "") (ineffassign)
    • Line 24: warning: could not import k8s.io/client-go/kubernetes (invalid package name: "") (ineffassign)
    • Line 25: warning: could not import k8s.io/client-go/tools/cache (invalid package name: "") (ineffassign)
    • Line 26: warning: could not import k8s.io/client-go/tools/record (invalid package name: "") (ineffassign)
    • Line 117: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 120: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 176: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 182: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 189: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 189: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 200: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 206: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 213: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 213: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 264: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • xdb/pkg/controller/metrics.go
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: could not import github.com/appscode/pat (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import github.com/prometheus/common/log (invalid package name: "") (ineffassign)
    • xdb/pkg/validator/validate.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 8: warning: cannot find package "." in: (ineffassign)
    • Line 9: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/k8sdb/apimachinery/apis/kubedb/v1alpha1 (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/k8sdb/apimachinery/pkg/docker (invalid package name: "") (ineffassign)
    • Line 8: warning: could not import github.com/k8sdb/apimachinery/pkg/validator (invalid package name: "") (ineffassign)
    • Line 9: warning: could not import k8s.io/apimachinery/pkg/apis/meta/v1 (invalid package name: "") (ineffassign)
    • Line 10: warning: could not import k8s.io/client-go/kubernetes (invalid package name: "") (ineffassign)
    • xdb/pkg/controller/monitor.go
    • Line 6: warning: cannot find package "." in: (ineffassign)
    • Line 7: warning: cannot find package "." in: (ineffassign)
    • Line 6: warning: could not import github.com/appscode/kutil/tools/monitoring/agents (invalid package name: "") (ineffassign)
    • Line 7: warning: could not import github.com/appscode/kutil/tools/monitoring/api (invalid package name: "") (ineffassign)
    • Line 19: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • xdb/pkg/controller/xdb.go
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 15: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: could not import github.com/appscode/log (invalid package name: "") (ineffassign)
    • Line 15: warning: could not import github.com/k8sdb/xdb/pkg/validator (invalid package name: "") (ineffassign)
    • Line 24: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 36: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 58: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 67: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 84: warning: c.CreateGoverningService undefined (type *Controller has no field or method CreateGoverningService) (ineffassign)
    • Line 140: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 258: warning: c.CheckStatefulSetPodStatus undefined (type *Controller has no field or method CheckStatefulSetPodStatus) (ineffassign)
    • Line 278: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 299: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 348: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 353: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 357: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 367: warning: c.CheckDatabaseRestoreJob undefined (type *Controller has no field or method CheckDatabaseRestoreJob) (ineffassign)
    • Line 464: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • xdb/pkg/controller/snapshot.go
    • Line 10: warning: cannot find package "." in: (ineffassign)
    • Line 10: warning: could not import github.com/k8sdb/apimachinery/pkg/validator (invalid package name: "") (ineffassign)
    • Line 29: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 33: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)
    • Line 37: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 57: warning: c.ExtClient undefined (type *Controller has no field or method ExtClient) (ineffassign)
    • Line 143: warning: c.DeleteSnapshotData undefined (type *Controller has no field or method DeleteSnapshotData) (ineffassign)
    • Line 169: warning: c.Client undefined (type *Controller has no field or method Client) (ineffassign)

misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!