Skip to content

chore: add cd workflow #1

chore: add cd workflow

chore: add cd workflow #1

Workflow file for this run

name: Continuous Deployment
on:
push:
branches:
- "**"
jobs:
cd:
name: Build Container Image
runs-on: ubuntu-latest
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v3.0.0
- name: Docker meta
uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v5.5.0
id: meta
with:
images: |
ghcr.io/tranngoclam/monorepo-foo
tags: |
type=sha,enable=true,suffix=-amd64,format=long
type=sha,enable=true,suffix=-arm64,format=long
type=raw,enable=true,prefix=latest,suffix=-amd64
type=raw,enable=true,prefix=latest,suffix=-arm64
- name: Build/Tag/Push Docker Image
uses: docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09 # v5.0.0
with:
context: .
file: foo/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
- name: Create and push manifest images
run: |
docker buildx imagetools create \
--tag ghcr.io/tranngoclam/monorepo-foo:latest \
ghcr.io/tranngoclam/monorepo-foo:latest-amd64 \
ghcr.io/tranngoclam/monorepo-foo:latest-arm64