mirror of
https://github.com/appleboy/drone-discord.git
synced 2026-06-04 10:23:47 +08:00
2000a2e484
* Update README.md * Add files via upload * Update DOCS.md * Update main.go
4.4 KiB
4.4 KiB
date, title, name, description, author, tags, repo, logo, icon, image, containerImage, containerImageUrl, url
| date | title | name | description | author | tags | repo | logo | icon | image | containerImage | containerImageUrl | url | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2017-06-10T00:00:00+00:00 | Discord | Discord | Send message to Discord channel using Webhook | appleboy |
|
appleboy/drone-discord | discord.svg | https://raw.githubusercontent.com/appleboy/drone-discord/main/images/discord-mark-blue.svg | appleboy/drone-discord | appleboy/drone-discord | https://hub.docker.com/r/appleboy/drone-discord | https://github.com/appleboy/drone-discord |
Webhooks are a low-effort way to post messages to channels in Discord. They do not require a bot user or authentication to use.
The webhook provided by discord is a single URL which contains the webhook_id and the webhook_token. The URL follows the following pattern.
https://discord.com/api/webhooks/<webhook_id>/<webhook_token>
The discord plugin posts build status messages to discord channel. The below pipeline configuration demonstrates simple usage:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id: xxxxxxxxxx
webhook_token: xxxxxxxxxx
Example configuration with TTS (text-to-speech) message:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id: xxxxxxxxxx
webhook_token: xxxxxxxxxx
+ tts: true
message: "Testing from drone image"
Example configuration with override the default username of the webhook:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id: xxxxxxxxxx
webhook_token: xxxxxxxxxx
+ username: appleboy
message: "Testing from drone image"
Example configuration with override the default avatar of the webhook:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id: xxxxxxxxxx
webhook_token: xxxxxxxxxx
+ avatar_url: http://exampple.com/appleboy.png
message: "Testing from drone image"
Example configuration with a custom message template:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id: xxxxxxxxxx
webhook_token: xxxxxxxxxx
+ message: >
+ {{#success build.status}}
+ build {{build.number}} succeeded. Good job.
+ {{else}}
+ build {{build.number}} failed. Fix me please.
+ {{/success}}
Example configuration using credentials from secrets:
- name: discord notification
image: appleboy/drone-discord
settings:
webhook_id:
from_secret: discord_webhook_id
webhook_token:
from_secret: discord_webhook_token
message: "Testing from drone image"
Secret Reference
- discord_webhook_id
- discord webhook id
- discord_webhook_token
- discord webhook token
Parameter Reference
- webhook_id
- webhook id
- webhook_token
- webhook token
- avatar_url
- override the default avatar of the webhook
- username
- override the default username of the webhook
- tts
- true if this is a TTS message
- message
- the message contents (up to 2000 characters)
Template Reference
- repo.owner
- repository owner
- repo.name
- repository name
- build.status
- build status type enumeration, either
successorfailure - build.event
- build event type enumeration, one of
push,pull_request,tag,deployment - build.number
- build number
- build.commit
- git sha for current commit
- build.message
- git commit messsage for current commit
- build.branch
- git branch for current commit
- build.tag
- git tag for current commit
- build.ref
- git ref for current commit
- build.author
- git author for current commit
- build.link
- link the the build results in drone
- build.started
- unix timestamp for build started
- build.finished
- unix timestamp for build finished
Template Function Reference
- uppercasefirst
- converts the first letter of a string to uppercase
- uppercase
- converts a string to uppercase
- lowercase
- converts a string to lowercase. Example
{{lowercase build.author}} - datetime
- converts a unix timestamp to a date time string. Example
{{datetime build.started}} - success
- returns true if the build is successful
- failure
- returns true if the build is failed
- truncate
- returns a truncated string to n characters. Example
{{truncate build.sha 8}} - urlencode
- returns a url encoded string
- since
- returns a duration string between now and the given timestamp. Example
{{since build.started}}