Skip to content

Link to the lightning talk #30

Link to the lightning talk

Link to the lightning talk #30

name: Build and Deploy app
on:
push:
branches: ["main"]
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
jobs:
build-and-push-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Docker Setup Buildx
uses: docker/[email protected]
- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Frontend
uses: docker/build-push-action@v3
with:
context: .
file: docker/frontend/Dockerfile
push: true
tags: "ghcr.io/${{ github.repository }}/frontend:latest"
- name: Build and push Backend
uses: docker/build-push-action@v3
with:
context: .
file: docker/api/Dockerfile
push: true
tags: "ghcr.io/${{ github.repository }}/api:latest"
- name: pull and start new image
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USER_NAME }}
key: ${{ secrets.PRIVATE_KEY}}
script: cd ccs-website && docker compose pull && docker compose up -d