Files

93 lines
2.2 KiB
YAML

name: Build and publish OCI images
"on":
push:
branches:
- main
tags:
- 'v*'
jobs:
docker-publish-mta-in:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "mta-in"
context: "src/mta-in"
target: runtime-prod
docker-publish-mta-out:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "mta-out"
context: "src/mta-out"
target: runtime-prod
docker-publish-socks-proxy:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "socks-proxy"
context: "src/socks-proxy"
docker-publish-frontend:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "frontend"
context: "src/frontend"
target: runtime-prod
arm64_reuse_amd64_build_arg: "FRONTEND_IMAGE"
docker-publish-backend:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "backend"
context: "src/backend"
target: runtime-prod
# Sibling jmap-email package plumbed in as a BuildKit named context.
# The Dockerfile pulls it in via ``COPY --from=jmap-email``; keeping
# the primary context narrow at ``src/backend`` preserves cache locality.
build_contexts: |
jmap-email=src/jmap-email
docker-publish-keycloak:
uses: ./.github/workflows/docker-publish.yml
permissions:
contents: read
packages: write
attestations: write
id-token: write
secrets: inherit
with:
image_name: "keycloak"
context: "src/keycloak"