Initialize repository
This commit is contained in:
commit
b0d7c6c157
5 changed files with 114 additions and 0 deletions
7
Dockerfile
Normal file
7
Dockerfile
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
FROM curlimages/curl:latest
|
||||||
|
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
|
ENTRYPOINT ["/entrypoint.sh"]
|
7
LICENSE
Normal file
7
LICENSE
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
ISC License (ISC)
|
||||||
|
|
||||||
|
Copyright 2020 eikendev
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
53
README.md
Normal file
53
README.md
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
# Gotify Notification Action
|
||||||
|
|
||||||
|
This action allows you to send push notifications via [Gotify](https://gotify.net/).
|
||||||
|
Gotify is an open-source push notification server.
|
||||||
|
|
||||||
|
## Inputs
|
||||||
|
|
||||||
|
### `notification_title`
|
||||||
|
|
||||||
|
**Required** The title of the Gotify notification.
|
||||||
|
|
||||||
|
### `notification_message`
|
||||||
|
|
||||||
|
**Required** The message of the Gotify notification. Default `""`.
|
||||||
|
|
||||||
|
### `notification_priority`
|
||||||
|
|
||||||
|
**Required** The priority of the Gotify notification. Default `4`.
|
||||||
|
|
||||||
|
## Outputs
|
||||||
|
|
||||||
|
This action has no outputs.
|
||||||
|
|
||||||
|
## Secrets
|
||||||
|
|
||||||
|
### `gotify_api_base`
|
||||||
|
|
||||||
|
**Required** The HTTP endpoint where the Gotify API is exposed.
|
||||||
|
|
||||||
|
### `gotify_app_token`
|
||||||
|
|
||||||
|
**Required** The token of the Gotify application.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Create a file `.github/workflows/main.yml` in your repository with the following contents.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: Gotify Notification
|
||||||
|
on: [push]
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@master
|
||||||
|
- name: Gotify Notification
|
||||||
|
uses: eikendev/action-gotify@master
|
||||||
|
env:
|
||||||
|
gotify_api_base: ${{ secrets.gotify_api_base }}
|
||||||
|
gotify_app_token: ${{ secrets.gotify_app_token }}
|
||||||
|
notification_title: 'Build Complete'
|
||||||
|
notification_message: 'Your build was completed.'
|
||||||
|
```
|
30
action.yml
Normal file
30
action.yml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
name: 'Gotify Notification'
|
||||||
|
description: 'Send a notification via Gotify'
|
||||||
|
branding:
|
||||||
|
icon: 'bell'
|
||||||
|
color: 'blue'
|
||||||
|
inputs:
|
||||||
|
gotify_api_base:
|
||||||
|
description: 'The HTTP endpoint where the Gotify API is exposed'
|
||||||
|
required: true
|
||||||
|
gotify_app_token:
|
||||||
|
description: 'The token of the Gotify application'
|
||||||
|
required: true
|
||||||
|
notification_title:
|
||||||
|
description: 'The title of the Gotify notification'
|
||||||
|
required: true
|
||||||
|
notification_message:
|
||||||
|
description: 'The message of the Gotify notification'
|
||||||
|
default: ''
|
||||||
|
notification_priority:
|
||||||
|
description: 'The priority of the Gotify notification'
|
||||||
|
default: 4
|
||||||
|
runs:
|
||||||
|
using: 'docker'
|
||||||
|
image: 'Dockerfile'
|
||||||
|
args:
|
||||||
|
- ${{ inputs.gotify_api_base }}
|
||||||
|
- ${{ inputs.gotify_app_token }}
|
||||||
|
- ${{ inputs.notification_title }}
|
||||||
|
- ${{ inputs.notification_message }}
|
||||||
|
- ${{ inputs.notification_priority }}
|
17
entrypoint.sh
Executable file
17
entrypoint.sh
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
if [ $# -ne 5 ]; then
|
||||||
|
printf "%s\n" "Usage: $0 <gotify_api_base> <gotify_app_token> <notification_title> <notification_message> <notification_priority>" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
gotify_api_base="$1"
|
||||||
|
gotify_app_token="$2"
|
||||||
|
notification_title="$3"
|
||||||
|
notification_message="$4"
|
||||||
|
notification_priority="$5"
|
||||||
|
|
||||||
|
curl "$gotify_api_base/message?token=$gotify_app_token" \
|
||||||
|
-F "title=$notification_title" \
|
||||||
|
-F "message=$notification_message" \
|
||||||
|
-F "priority=$notification_priority"
|
Loading…
Reference in a new issue