Investigate low coverage
π₯ Problem
The badge on the README
file is reporting a low level of coverage.
This is surprising since locally, we get other numbers:
$ go test ./... -cover -coverprofile=cover.out
? gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus [no test files]
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/cmd 0.643s coverage: 85.0% of statements
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config 0.465s coverage: 83.0% of statements
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine 0.354s coverage: 75.0% of statements
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab 0.576s coverage: 81.0% of statements
? gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/logger [no test files]
? gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/loggertest [no test files]
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry 0.175s coverage: 100.0% of statements
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm 0.279s coverage: 100.0% of statements
ok gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/util 0.141s coverage: 100.0% of statements
$ go tool cover -func cover.out
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/cmd/generate.go:28: init 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/cmd/root.go:38: Execute 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/cmd/root.go:45: init 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/cmd/root.go:52: initConfig 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/config.go:16: Load 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/config.go:33: check 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/config.go:41: checkDistinctUrls 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:8: GetToken 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:12: GetAdditionalParameters 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:21: GetToken 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:25: GetAdditionalParameters 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:37: UseBase64Token 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/credentials.go:41: UseBase64Token 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/packages_map.go:14: GetPackagesMap 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/packages_map.go:31: getPackagesMapFromCSV 94.7%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/registry.go:8: GetUrl 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/registry.go:12: GetCredentials 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/registry.go:21: GetUrl 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/config/registry.go:25: GetCredentials 0.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/engine.go:12: GeneratePipelineConfig 71.4%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/engine.go:27: fileFrom 77.8%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/generator.go:17: GeneratePipelineConfig 60.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/generator.go:29: validate 83.3%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/generator.go:41: generateYamlConfig 83.3%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/generator.go:85: marshalYaml 84.6%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/job.go:28: MarshalYAML 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/pipeline.go:14: AddJob 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/pipeline.go:48: packageVariables 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/engine/gitlab/pipeline.go:56: sanitize_string 50.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:15: GetRegistry 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:28: GetScripts 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:41: configureAccess 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:61: setAuthToken 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:77: setConfigValueScript 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:81: resetAccess 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:85: GetImageName 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:89: packScript 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:97: processPackage 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/npm/npm.go:107: publishScript 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/registry/registry.go:15: GetRegistry 100.0%
gitlab.com/gitlab-org/ci-cd/package-stage/pkgs_bus/util/order_keys.go:9: OrderedMapKeysOf 100.0%
total: (statements) 85.9%
=> total 85.9%
π Solution
Investigation why we have such differences and fix the related CI job.