Skip to content

Build aptos-node-v1.23.5 #55

Build aptos-node-v1.23.5

Build aptos-node-v1.23.5 #55

Workflow file for this run

name: Docker
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
APTOS_GIT_REF: aptos-node-v1.23.5
concurrency: docker
jobs:
prep:
runs-on: ubuntu-latest
outputs:
aptos_git_sha: ${{ steps.checkout.outputs.commit }}
steps:
- name: Checkout aptos-core
id: checkout
uses: actions/checkout@v4
with:
repository: aptos-labs/aptos-core
ref: ${{ env.APTOS_GIT_REF }}
build_push:
permissions:
contents: read
packages: write
strategy:
fail-fast: false
matrix:
include:
- runner: X64
platform: linux/amd64
- runner: ARM64
platform: linux/arm64
needs: prep
env:
APTOS_GIT_REF: ${{ needs.prep.outputs.aptos_git_sha }}
PLATFORM: ${{ matrix.platform }}
runs-on:
- self-hosted
- ${{ matrix.runner }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Log into the Container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Bake and populate builder-base and runtime-base cache
if: github.event_name == 'push'
uses: docker/bake-action@v5
with:
targets: cache-builder-base,cache-runtime-base
- name: Bake and populate binaries cache
uses: docker/bake-action@v5
with:
targets: cache-binaries
- name: Bake images
uses: docker/bake-action@v5
with:
targets: aptos-node,aptos
push: ${{ github.event_name == 'push' }}
manifest:
permissions:
contents: read
packages: write
strategy:
fail-fast: false
matrix:
target: [aptos-node, aptos]
needs: [prep, build_push]
if: github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- name: Log into the Container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Create manifest
run: |
docker buildx imagetools create -t ghcr.io/shinamicorp/${{ matrix.target }}:${{ env.APTOS_GIT_REF }} \
ghcr.io/shinamicorp/${{ matrix.target }}:${{ needs.prep.outputs.aptos_git_sha }}-linux-amd64 \
ghcr.io/shinamicorp/${{ matrix.target }}:${{ needs.prep.outputs.aptos_git_sha }}-linux-arm64 \