Files
gem5/.github/workflows/docker-build.yaml
2024-09-21 07:39:06 -07:00

65 lines
1.6 KiB
YAML

---
name: Docker images build and push
#on:
# push:
# branches:
# - 'develop'
# paths:
# - util/dockerfiles/**
on:
workflow_dispatch:
jobs:
obtain-targets:
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.generate.outputs.targets }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: List targets
id: generate
uses: docker/bake-action/subaction/list-targets@v4
with:
target: docker-buildx-bake
workdir: util/dockerfiles
docker-buildx-bake:
runs-on: [self-hosted, linux, x64]
needs:
- prepare
strategy:
fail-fast: false
matrix:
target: ${{ fromJson(needs.obtain-targets.outputs.targets) }}
permissions:
packages: write
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/bake-action@v5
with:
targets: ${{ matrix.target }}
workdir: util/dockerfiles
push: true