Skip to content

ci: add front Dockerfile #26

ci: add front Dockerfile

ci: add front Dockerfile #26

Workflow file for this run

name: Build and Push Docker Image
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Run docker compose
run: docker compose -f "docker-compose.yml" up -d --build postgres server redis
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install Newman
run: npm install -g newman
- name: Run Newman tests
run: newman run back/test/tests.postman_collection.json
- name: Convert repository owner to lowercase
id: convert_repository
run: |
OWNER=$(echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]')
REPO=$(echo "${{ github.event.repository.name }}" | tr '[:upper:]' '[:lower:]')
echo "::set-output name=owner::${OWNER}"
echo "::set-output name=repo::${REPO}"
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build Docker image backend
run: docker build -t ghcr.io/${{ steps.convert_repository.outputs.owner }}/${{ steps.convert_repository.outputs.repo }}-backend:latest ./back
- name: Push Docker image to GitHub Container Registry (backend)
run: docker push ghcr.io/${{ steps.convert_repository.outputs.owner }}/${{ steps.convert_repository.outputs.repo }}-backend:latest
- name: Build Docker image frontend
run: docker build -t ghcr.io/${{ steps.convert_repository.outputs.owner }}/${{ steps.convert_repository.outputs.repo }}-frontend:latest ./front
- name: Push Docker image to GitHub Container Registry (frontend)
run: docker push ghcr.io/${{ steps.convert_repository.outputs.owner }}/${{ steps.convert_repository.outputs.repo }}-frontend:latest