mirror of
https://github.com/SAP/jenkins-library.git
synced 2024-12-14 11:03:09 +02:00
149 lines
3.9 KiB
YAML
149 lines
3.9 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 relese information that brings up all commits since the last release.'
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: bool
|
|
default: false
|
|
- 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: 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: owner
|
|
aliases:
|
|
- name: githubOrg
|
|
description: 'Set the GitHub organization.'
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|
|
- name: repository
|
|
aliases:
|
|
- name: githubRepo
|
|
description: 'Set the 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: token
|
|
aliases:
|
|
- name: githubToken
|
|
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
|
|
- 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: labels
|
|
description: 'Labels to include in issue search.'
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: '[]string'
|
|
- name: releaseBodyHeader
|
|
description: Content which will appear for the release.
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
- name: version
|
|
description: 'Define the version number which will be written as tag as well as release name.'
|
|
scope:
|
|
- PARAMETERS
|
|
- STAGES
|
|
- STEPS
|
|
type: string
|
|
mandatory: true
|