name: Docker images build and push on: workflow_dispatch: jobs: obtain-dockerfiles: runs-on: [self-hosted, linux, x64, run] container: gcr.io/gem5-test/ubuntu-22.04_all-dependencies:latest steps: - uses: actions/checkout@v3 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@v2 with: name: dockerfiles path: util/dockerfiles # This builds and pushes the docker image. build-and-push: runs-on: [self-hosted, linux, x64, run] needs: obtain-dockerfiles permissions: packages: write contents: read steps: - uses: actions/download-artifact@v2 with: name: dockerfiles path: dockerfiles - 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@v3 with: files: dockerfiles/docker-bake.hcl push: true