# Publishes the Docker image, only to be used with `workflow_dispatch`. The # images from this workflow will be tagged with the git sha of the branch used # and will NOT tag it as `latest`. name: docker-git on: workflow_dispatch: {} env: REPO_NAME: ${{ github.repository_owner }}/reth IMAGE_NAME: ${{ github.repository_owner }}/reth OP_IMAGE_NAME: ${{ github.repository_owner }}/op-reth CARGO_TERM_COLOR: always DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/reth OP_DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/op-reth DOCKER_USERNAME: ${{ github.actor }} GIT_SHA: ${{ github.sha }} jobs: build: name: build and push runs-on: ubuntu-20.04 permissions: packages: write contents: read steps: - uses: actions/checkout@v4 - uses: rui314/setup-mold@v1 - uses: dtolnay/rust-toolchain@stable - uses: Swatinem/rust-cache@v2 with: cache-on-failure: true - uses: taiki-e/install-action@cross - name: Log in to Docker run: | echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin - name: Set up Docker builder run: | docker run --privileged --rm tonistiigi/binfmt --install arm64,amd64 docker buildx create --use --name cross-builder - name: Build and push the git-sha-tagged reth image run: make PROFILE=maxperf GIT_SHA=$GIT_SHA docker-build-push-git-sha - name: Build and push the git-sha-tagged op-reth image run: make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME GIT_SHA=$GIT_SHA PROFILE=maxperf op-docker-build-push-git-sha