Skip to content

Dependency update, linting, API compression #124

Dependency update, linting, API compression

Dependency update, linting, API compression #124

Workflow file for this run

name: Docker
on: push
jobs:
push:
name: Build and Release Docker Image
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Setup Image Name
run: |
echo "IMAGE_ID=${GITHUB_REPOSITORY,,}" >> ${GITHUB_ENV}
- name: Extract branch name
id: extract_branch
run: |
BRANCH_NAME=${GITHUB_REF#refs/heads/}
echo "BRANCH_NAME=${BRANCH_NAME}" >> ${GITHUB_ENV}
- name: Set Docker Tags
id: set_tags
run: |
if [ "${{ env.BRANCH_NAME }}" == "main" ]; then
echo "CACHETAGS=ghcr.io/${{ env.IMAGE_ID }}:buildcache" >> ${GITHUB_ENV}
echo "TAGS=ghcr.io/${{ env.IMAGE_ID }}:dev" >> ${GITHUB_ENV}
else
echo "CACHETAGS=ghcr.io/${{ env.IMAGE_ID }}:${{ env.BRANCH_NAME }}buildcache" >> ${GITHUB_ENV}
echo "TAGS=ghcr.io/${{ env.IMAGE_ID }}:${{ env.BRANCH_NAME }}" >> ${GITHUB_ENV}
fi
- name: Login to GitHub Packages
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push server Docker image
uses: docker/build-push-action@v5
with:
context: .
file: Dockerfile
push: true
tags: ${{ env.TAGS }}
cache-from: type=registry,ref=${{ env.CACHETAGS }}
cache-to: type=registry,ref=${{ env.CACHETAGS }},mode=max