description:This step will execute a golang build.
longDescription:|
This step will build a golang project.
It will also execute golang-based tests using [gotestsum](https://github.com/gotestyourself/gotestsum) and with that allows for reporting test results and test coverage.
Besides execution of the default tests the step allows for running an additional integration test run using `-tags=integration` using pattern `./...`
If the build is successful the resulting artifact can be uploaded to e.g. a binary repository automatically.
description:Jenkins 'Username with password' credentials ID containing username/password for http access to your git repos where your go private modules are stored.
description:Defines list of build flags to be used.
scope:
- PARAMETERS
- STAGES
- STEPS
- name:cgoEnabled
type:bool
description:"If active: enables the creation of Go packages that call C code."
scope:
- STEPS
- STAGES
- PARAMETERS
- name:coverageFormat
type:string
description:Defines the format of the coverage repository.
possibleValues:
- cobertura
- html
scope:
- STEPS
- STAGES
- PARAMETERS
default:html
- name:createBOM
type:bool
description:Creates the bill of materials (BOM) using CycloneDX plugin.
scope:
- GENERAL
- STEPS
- STAGES
- PARAMETERS
- name:customTlsCertificateLinks
type:"[]string"
description:"List of download links to custom TLS certificates. This is required to ensure trusted connections to instances with repositories (like nexus) when publish flag is set to true."
scope:
- GENERAL
- PARAMETERS
- STAGES
- STEPS
- name:excludeGeneratedFromCoverage
type:bool
description:"Defines if generated files should be excluded, according to [https://golang.org/s/generatedcode](https://golang.org/s/generatedcode)."
scope:
- PARAMETERS
- STAGES
- STEPS
default:true
- name:ldflagsTemplate
type:string
description:Defines the content of -ldflags option in a golang template format.
longDescription:|
The template allows using commonPipelineEnvironment parameters in the form `.CPE["<paramName>"]`
description:Tells go which modules shall be considered to be private (by setting [GOPRIVATE](https://pkg.go.dev/cmd/go#hdr-Configuration_for_downloading_non_public_code)).
scope:
- STEPS
- STAGES
- PARAMETERS
alias:
- goprivate
- name:privateModulesGitToken
description:GitHub personal access token as per https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line.