Skip to content

feat(ci): create latest tag from manifest #7

feat(ci): create latest tag from manifest

feat(ci): create latest tag from manifest #7

Workflow file for this run

name: Docker Image CI
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
amd-build:
name: Build & Deploy (AMD)
runs-on: ubuntu-latest
steps:
- name: Get the latest code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to container registry
uses: docker/login-action@v3
with:
username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }}
password: ${{ secrets.CONTAINER_REGISTRY_PWD }}
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
platforms: linux/amd64
build-args: VERSION=${{ secrets.PHP_VERSION }}
push: true
tags: waistlineapi/waistline-api:${{ secrets.VERSION }}-amd64
arm-build:
name: Build & Deploy (ARM)
runs-on: buildjet-4vcpu-ubuntu-2204-arm
steps:
- name: Get the latest code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to container registry
uses: docker/login-action@v3
with:
username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }}
password: ${{ secrets.CONTAINER_REGISTRY_PWD }}
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
platforms: linux/arm64
build-args: VERSION=${{ secrets.PHP_VERSION }}
push: true
tags: waistlineapi/waistline-api:${{ secrets.VERSION }}-arm64
combine-manifest:
name: Combine the manifests
needs:
- amd-build
- arm-build
runs-on: ubuntu-latest
steps:
- name: Combine the manifests
uses: int128/docker-manifest-create-action@v2
with:
tags: waistlineapi/waistline-api:latest
sources: |
waistlineapi/waistline-api:${{ secrets.VERSION }}-amd64
waistlineapi/waistline-api:${{ secrets.VERSION }}-arm64