mirror of
https://github.com/SAP/jenkins-library.git
synced 2024-12-14 11:03:09 +02:00
dd8d34c8f6
* feat(githubPublishRelease): tag prefix support * cleanup * go fmt * tagPrefix shall not be mandatory
182 lines
5.1 KiB
YAML
182 lines
5.1 KiB
YAML
metadata:
|
|
name: githubPublishRelease
|
|
description: Publish a release in GitHub
|
|
longDescription: |
|
|
This step creates a tag in your GitHub repository together with a release.
|
|
The release can be filled with text plus additional information like:
|
|
|
|
* Closed pull request since last release
|
|
* Closed issues since last release
|
|
* Link to delta information showing all commits since last release
|
|
|
|
The result looks like
|
|
|
|
![Example release](../images/githubRelease.png)
|
|
spec:
|
|
inputs:
|
|
secrets:
|
|
- name: githubTokenCredentialsId
|
|
description: Jenkins 'Secret text' credentials ID containing token to authenticate to GitHub.
|
|
type: jenkins
|
|
params:
|
|
- name: addClosedIssues
|
|
description: "If set to `true`, closed issues and merged pull-requests since the last release will added below the `releaseBodyHeader`"
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: bool
|
|
default: false
|
|
- name: addDeltaToLastRelease
|
|
description: "If set to `true`, a link will be added to the release information that brings up all commits since the last release."
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: bool
|
|
default: false
|
|
- name: apiUrl
|
|
aliases:
|
|
- name: githubApiUrl
|
|
description: Set the GitHub API url.
|
|
scope:
|
|
- GENERAL
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
default: https://api.github.com
|
|
mandatory: true
|
|
- name: assetPath
|
|
description: Path to a release asset which should be uploaded to the list of release assets.
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
- name: commitish
|
|
description: "Target git commitish for the release"
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
default: "master"
|
|
- name: excludeLabels
|
|
description: "Allows to exclude issues with dedicated list of labels."
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: "[]string"
|
|
- name: labels
|
|
description: "Labels to include in issue search."
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: "[]string"
|
|
- name: owner
|
|
aliases:
|
|
- name: githubOrg
|
|
description: Name of the GitHub organization.
|
|
resourceRef:
|
|
- name: commonPipelineEnvironment
|
|
param: github/owner
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|
|
- name: preRelease
|
|
description: "If set to `true` the release will be marked as Pre-release."
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: bool
|
|
default: false
|
|
- name: releaseBodyHeader
|
|
description: Content which will appear for the release.
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
- name: repository
|
|
aliases:
|
|
- name: githubRepo
|
|
description: Name of the GitHub repository.
|
|
resourceRef:
|
|
- name: commonPipelineEnvironment
|
|
param: github/repository
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|
|
- name: serverUrl
|
|
aliases:
|
|
- name: githubServerUrl
|
|
description: "GitHub server url for end-user access."
|
|
scope:
|
|
- GENERAL
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
default: https://github.com
|
|
mandatory: true
|
|
- name: tagPrefix
|
|
type: string
|
|
description: "Defines a prefix to be added to the tag."
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
default: ""
|
|
- name: token
|
|
aliases:
|
|
- name: githubToken
|
|
- name: access_token
|
|
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"
|
|
scope:
|
|
- GENERAL
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|
|
secret: true
|
|
resourceRef:
|
|
- name: githubTokenCredentialsId
|
|
type: secret
|
|
- type: vaultSecret
|
|
default: github
|
|
name: githubVaultSecretName
|
|
- name: uploadUrl
|
|
aliases:
|
|
- name: githubUploadUrl
|
|
description: Set the GitHub API url.
|
|
scope:
|
|
- GENERAL
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
default: https://uploads.github.com
|
|
mandatory: true
|
|
- name: version
|
|
description: "Define the version number which will be written as tag as well as release name."
|
|
resourceRef:
|
|
- name: commonPipelineEnvironment
|
|
param: artifactVersion
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|