Skip to content

Commit

Permalink
feat: add github action to build and push docker image
Browse files Browse the repository at this point in the history
  • Loading branch information
benzino77 committed May 10, 2024
1 parent 9bd5348 commit 1ab65e7
Showing 1 changed file with 59 additions and 0 deletions.
59 changes: 59 additions & 0 deletions .github/workflows/build-docker-image.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Build Docker Image
on:
workflow_dispatch:
inputs:
branch:
description: 'Branch to build from'
required: true
type: choice
default: 'master'
options:
- 'master'
- 'development'

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.event.inputs.branch }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Load Buildx
run: docker buildx create --name mybuilder --use
if: runner.os == 'Linux'

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_ACCESS_TOKEN }}

- name: Extract version from package.json
if: ${{ github.event.inputs.branch == 'master' }}
run: echo "DOCKER_TAG=$(jq -r '.version' package.json)" >> $GITHUB_ENV

- name: Build and push production Docker image
if: ${{ github.event.inputs.branch == 'master' }}
run: |
docker buildx build \
--platform linux/amd64,linux/arm64,linux/arm/v7 \
-t benzino77/clamav-rest-api:$DOCKER_TAG \
-t benzino77/clamav-rest-api:latest \
-f Dockerfile --push .
- name: Build and push development Docker image
if: ${{ github.event.inputs.branch == 'development' }}
run: |
docker buildx build \
--platform linux/amd64,linux/arm64,linux/arm/v7 \
-t benzino77/clamav-rest-api:development \
-f Dockerfile --push .

0 comments on commit 1ab65e7

Please sign in to comment.