Skip to content

v4.2.0

v4.2.0 #29

Workflow file for this run

name: Build & publish image
on:
workflow_dispatch:
release:
types: [published]
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v2
# https://stackoverflow.com/questions/32113330/check-if-imagetag-combination-already-exists-on-docker-hub
- name: Ensure image isn't already published
run: |
docker login --username ${{ secrets.DOCKER_USERNAME }} --password ${{ secrets.DOCKER_PASSWORD }}
if DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect multiversx/sdk-rust-contract-builder:${GITHUB_REF_NAME} >/dev/null; then
echo "Image already published. Will NOT publish."
exit 1
else
echo "Image not yet published. Will publish."
fi
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
push: true
platforms: linux/amd64
file: ./Dockerfile
tags: multiversx/sdk-rust-contract-builder:${{ github.ref_name }}