Skip to content

Build and Publish Docker Image #3

Build and Publish Docker Image

Build and Publish Docker Image #3

Workflow file for this run

name: Build and Publish Docker Image
on:
workflow_dispatch:
workflow_call:
jobs:
build:
runs-on:
- ubuntu-latest
env:
BASE_IMAGE_NAME: ghcr.io/${{ github.repository }}/tt-xla-base-ubuntu-22-04
CI_IMAGE_NAME: ghcr.io/${{ github.repository }}/tt-xla-ci-ubuntu-22-04
steps:
- name: Fix permissions
run: sudo chmod 777 -R $GITHUB_WORKSPACE
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
# Build images
- name: Build and export base Docker image
uses: docker/build-push-action@v6
with:
context: .github
file: .github/Dockerfile.base
push: true
build-args: |
GIT_SHA=${{ github.sha }}
tags: |
${{ env.BASE_IMAGE_NAME}}:${{ github.sha }}
- name: Build and export CI Docker image
uses: docker/build-push-action@v6
with:
context: .github
file: .github/Dockerfile.ci
push: true
build-args: |
GIT_SHA=${{ github.sha }}
tags: |
${{ env.CI_IMAGE_NAME}}:${{ github.sha }}
- name: Build and export IRD Docker image
uses: docker/build-push-action@v6
with:
context: .github
file: .github/Dockerfile.ird
push: true
build-args: |
GIT_SHA=${{ github.sha }}
FROM_IMAGE=ci
tags: |
${{ env.IRD_IMAGE_NAME}}:${{ github.sha }}
# Tag images as latest
- name: Build and push base Docker image
uses: docker/build-push-action@v6
with:
context: .github
file: .github/Dockerfile.base
push: true
build-args: |
GIT_SHA=${{ github.sha }}
tags: |
${{ env.BASE_IMAGE_NAME}}:latest
- name: Build and push CI Docker image
uses: docker/build-push-action@v6
with:
context: .github
file: .github/Dockerfile.ci
push: true
build-args: |
GIT_SHA=${{ github.sha }}
tags: |
${{ env.CI_IMAGE_NAME}}:latest