Skip to content

Delete unnecessary api endpoints, change compose and add README.md #97

Delete unnecessary api endpoints, change compose and add README.md

Delete unnecessary api endpoints, change compose and add README.md #97

Workflow file for this run

name: Ekb radio push to Docker and deploy
on: [push]
jobs:
build_prod_backend_and_push_to_docker_hub:
if:
contains('main', github.ref_name)
name: Push Docker image to Docker Hub Prod backend
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Push to Docker Hub
uses: docker/build-push-action@v5
with:
context: backend/
file: backend/Dockerfile
push: true
tags: ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_PROD_BACK_IMAGE }}
build_prod_frontend_and_push_to_docker_hub:
if:
contains('main', github.ref_name)
name: Push Docker image to Docker Hub Prod frontend
runs-on: ubuntu-latest
needs: build_prod_backend_and_push_to_docker_hub
steps:
- name: Check out the repo
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Push to Docker Hub
uses: docker/build-push-action@v5
with:
context: frontend/
file: frontend/DockerfileProd
push: true
tags: ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_PROD_FRONT_IMAGE }}
deploy_production:
if:
contains('main', github.ref_name)
runs-on: ubuntu-latest
needs: [build_prod_backend_and_push_to_docker_hub, build_prod_frontend_and_push_to_docker_hub]
steps:
- name: executing remote ssh commands to deploy
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.PROD_HOST }}
port: ${{ secrets.PROD_PORT }}
username: ${{ secrets.PROD_USER }}
key: ${{ secrets.PROD_SSH_KEY }}
passphrase: ${{ secrets.PROD_PASSPHRASE }}
script: |
docker pull ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_PROD_BACK_IMAGE }}
docker pull ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_PROD_FRONT_IMAGE }}
docker compose stop
docker compose up -d
send_message_prod:
runs-on: ubuntu-latest
needs: [build_prod_backend_and_push_to_docker_hub, build_prod_frontend_and_push_to_docker_hub, deploy_production]
steps:
- name: Send message after successful production deployment
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_TO }}
token: ${{ secrets.TELEGRAM_TOKEN }}
message: ${{ github.workflow }} успешно выполнен!