This change ensures all our tests run on our most recent supported LTS release of Ubuntu. In the case of compiler tests we still test 22.04 all-dep but test 24.04 all-dep and min-dep (i.e., we drop 22.04 min-dep as it's somewhat redundant). Change-Id: I63666d1017594b496523a48e5112a8994f57885f
55 lines
1.6 KiB
YAML
55 lines
1.6 KiB
YAML
---
|
|
name: Docker images build and push
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
jobs:
|
|
obtain-dockerfiles:
|
|
runs-on: [self-hosted, linux, x64]
|
|
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
# Scheduled workflows run on the default branch by default. We
|
|
# therefore need to explicitly checkout the develop branch.
|
|
ref: develop
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: dockerfiles
|
|
path: util/dockerfiles
|
|
|
|
# This builds and pushes the docker image.
|
|
build-and-push:
|
|
runs-on: [self-hosted, linux, x64]
|
|
needs: obtain-dockerfiles
|
|
permissions:
|
|
packages: write
|
|
contents: read
|
|
|
|
steps:
|
|
- uses: actions/download-artifact@v4
|
|
with:
|
|
name: dockerfiles
|
|
path: dockerfiles-docker-build
|
|
|
|
- uses: docker/setup-qemu-action@v2
|
|
name: Setup QEMU
|
|
|
|
- uses: docker/setup-buildx-action@v2
|
|
name: Set up Docker Buildx
|
|
|
|
- uses: docker/login-action@v2
|
|
name: Login to the GitHub Container Registry
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.repository_owner }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Build and push with bake
|
|
uses: docker/bake-action@v4
|
|
with:
|
|
workdir: ./dockerfiles-docker-build
|
|
files: docker-bake.hcl
|
|
push: true
|