Skip to content

Workflow file for this run

name: Create and publish kings Notifications Service Docker image to docker hub and deploy to server
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
REGISTRY: docker.io
IMAGE_NAME: kambang/kingscorp
jobs:
build-and-push-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Log in to docker container registry, build and push image
uses: mr-smithers-excellent/docker-build-push@v5
with:
image: ${{ env.IMAGE_NAME }}
tags: notification
dockerfile: Dockerfile
registry: ${{ env.REGISTRY }}
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Setting up Kingscorp SSH keys
run: |
eval "$(ssh-agent -s)"
ssh-add - <<< "${{ secrets.PRIVATE_KEY }}"
- name: Deploying Kings Notification service to Kingscorp
uses: appleboy/ssh-action@master
with:
host: ${{secrets.SERVER_HOST}}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.PRIVATE_KEY }}
port: 22
script: |
cd /home/kingscorp-soft
docker pull kambang/kingscorp:notification
docker compose -f docker-compose-prod.yml up -d
- name: Setting up Kingsschool SSH keys
run: |
eval "$(ssh-agent -s)"
ssh-add - <<< "${{ secrets.KS_PRIVATE_KEY }}"
- name: Deploying Kings Notification service to Kingsschool
uses: appleboy/ssh-action@master
with:
host: ${{secrets.KS_SERVER_HOST}}
username: ${{ secrets.KS_SERVER_USER }}
key: ${{ secrets.KS_PRIVATE_KEY }}
port: 22
script: |
cd /home/kingsschool-soft
docker pull kambang/kingscorp:notification
docker compose down -v --remove-orphans
docker compose up -d