#!/bin/bash mockery_version=v1.1.2 mockery_v2_version=2.53.4 mockery_v3_version=3.5.5 base_arch=$(uname -m) arch=$( [ "$base_arch" = "aarch64" ] && echo "arm64" || echo "x86_64" ) cd /tmp || exit 1 # mockery v1 we build from source git clone https://github.com/vektra/mockery cd mockery || exit 1 git checkout "${mockery_version}" go build -o /usr/local/bin/mockery ./cmd/mockery/ # mockery v2 we download from releases page download_url="https://github.com/vektra/mockery/releases/download/v${mockery_v2_version}/mockery_${mockery_v2_version}_Linux_${arch}.tar.gz" curl -L "${download_url}" -o "/tmp/mockery_${arch}.tar.gz" mkdir /tmp/mockery_v2 tar xf "/tmp/mockery_${arch}.tar.gz" -C /tmp/mockery_v2 mv /tmp/mockery_v2/mockery /usr/local/bin/mockery_v2 rm -rf "/tmp/mockery_$(uname -m).tar.gz" /tmp/mockery* # mockery v3 we download from releases page download_url="https://github.com/vektra/mockery/releases/download/v${mockery_v3_version}/mockery_${mockery_v3_version}_Linux_${arch}.tar.gz" curl -L "${download_url}" -o "/tmp/mockery_v3_${arch}.tar.gz" mkdir /tmp/mockery_v3 tar xf "/tmp/mockery_v3_${arch}.tar.gz" -C /tmp/mockery_v3 mv /tmp/mockery_v3/mockery /usr/local/bin/mockery_v3 rm -rf "/tmp/mockery_v3_${arch}.tar.gz" /tmp/mockery*