73 lines
2.1 KiB
Markdown
73 lines
2.1 KiB
Markdown
Use this plugin for publishing files and artifacts to GitHub releases. Be aware
|
|
that you can use this plugin only for tags, GitHub doesn't support the release
|
|
of branches.
|
|
|
|
## Config
|
|
|
|
The following parameters are used to configure the plugin:
|
|
|
|
* **api_key** - GitHub oauth token with public_repo or repo permission
|
|
* **files** - files to upload to GitHub Release, globs are allowed
|
|
* **file_exists** - what to do if an file asset already exists, supported values: **overwrite** (default), **skip** and **fail**
|
|
* **checksum** - checksum takes hash methods to include in your GitHub release for the files specified. Supported hash methods include md5, sha1, sha256, sha512, adler32, and crc32.
|
|
* **draft** - create a draft release if set to true
|
|
* **prerelease** - set the release as prerelease if set to true
|
|
* **base_url** - GitHub base URL, only required for GHE
|
|
* **upload_url** - GitHub upload URL, only required for GHE
|
|
|
|
The following secret values can be set to configure the plugin.
|
|
|
|
* **GITHUB_RELEASE_API_KEY** - corresponds to **api_key**
|
|
* **GITHUB_RELEASE_BASE_URL** - corresponds to **base_url**
|
|
* **GITHUB_RELEASE_UPLOAD_URL** - corresponds to **upload_url**
|
|
|
|
It is highly recommended to put the **GITHUB_RELEASE_API_KEY** into a secret so
|
|
it is not exposed to users. This can be done using the drone-cli.
|
|
|
|
```bash
|
|
drone secret add --image=plugins/github-release \
|
|
octocat/hello-world GITHUB_RELEASE_API_KEY my_github_api_key
|
|
```
|
|
|
|
Then sign the YAML file after all secrets are added.
|
|
|
|
```bash
|
|
drone sign octocat/hello-world
|
|
```
|
|
|
|
See [secrets](http://readme.drone.io/0.5/usage/secrets/) for additional
|
|
information on secrets
|
|
|
|
## Examples
|
|
|
|
The following is a sample configuration in your .drone.yml file:
|
|
|
|
```yaml
|
|
pipeline:
|
|
github_release:
|
|
image: plugins/github-release
|
|
files: dist/*
|
|
when:
|
|
event: tag
|
|
```
|
|
|
|
An example for generating checksums and upload additional files:
|
|
|
|
```yaml
|
|
pipeline:
|
|
github_release:
|
|
image: plugins/github-release
|
|
files:
|
|
- dist/*
|
|
- bin/binary.exe
|
|
checksum:
|
|
- md5
|
|
- sha1
|
|
- sha256
|
|
- sha512
|
|
- adler32
|
|
- crc32
|
|
when:
|
|
event: tag
|
|
```
|