perplexica/.github/workflows/docker-build.yaml

46 lines
1.6 KiB
YAML

name: Build & Push Docker Image
on:
push:
branches:
- master
release:
types: [published]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Extract version from release tag
if: github.event_name == 'release'
id: version
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Build and push Docker image
if: github.ref == 'refs/heads/master' && github.event_name == 'push'
run: |
docker build -f backend.dockerfile -t itzcrazykns1337/perplexica-backend:main .
docker build -f app.dockerfile -t itzcrazykns1337/perplexica-frontend:main .
docker push itzcrazykns1337/perplexica-backend:main
docker push itzcrazykns1337/perplexica-frontend:main
- name: Build and push release Docker image
if: github.event_name == 'release'
run: |
docker build -f backend.dockerfile -t itzcrazykns1337/perplexica-backend:${{ env.RELEASE_VERSION }} .
docker build -f app.dockerfile -t itzcrazykns1337/perplexica-frontend:${{ env.RELEASE_VERSION }} .
docker push itzcrazykns1337/perplexica-backend:${{ env.RELEASE_VERSION }}
docker push itzcrazykns1337/perplexica-frontend:${{ env.RELEASE_VERSION }}