28 lines
867 B
YAML
28 lines
867 B
YAML
name: Docker Image Build and Push
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- 'release/*'
|
|
|
|
jobs:
|
|
build_and_push_docker_image:
|
|
runs-on: [ "docker://docker" ]
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Build and push Docker image
|
|
run: |
|
|
docker build --build-arg VERSION=${GITHUB_REF_NAME} -t registry.example.com/${GITHUB_REPOSITORY}:${GITHUB_SHA} .
|
|
docker push registry.example.com/${GITHUB_REPOSITORY}:${GITHUB_SHA}
|
|
|
|
- name: Tag latest image
|
|
if: github.ref == 'refs/heads/main'
|
|
run: |
|
|
docker tag registry.example.com/${GITHUB_REPOSITORY}:${GITHUB_SHA} registry.example.com/${GITHUB_REPOSITORY}:latest
|
|
docker push registry.example.com/${GITHUB_REPOSITORY}:latest
|