46 lines
1.5 KiB
YAML

# This is a basic workflow to help you get started with Actions
name: CD
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main ]
paths-ignore: # don't run this workflow if no changes have been made to the docker image
- '.github/**'
- 'docker-compose.yml'
pull_request:
branches: [ main ]
paths-ignore: # don't run this workflow if no changes have been made to the docker image
- '.github/**'
- 'docker-compose.yml'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
deploy:
name: Deploy to server
runs-on: ubuntu-latest
steps:
- name: Updating and restarting service on host via SSH
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SITE_HOST }}
username: ${{ secrets.SITE_USERNAME }}
key: ${{ secrets.SITE_KEY }}
port: ${{ secrets.SITE_PORT }}
script: |
cd /root
docker pull jafner/5etools-docker:latest
docker-compose down
docker-compose up -d
- name: Sending Discord notification
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: 'The project {{ EVENT_PAYLOAD.repository.full_name }} has been deployed.'