2024-05-04 13:18:37 +05:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
2025-11-25 10:02:46 +05:00
|
|
|
mockery_version=v1.1.2
|
2025-09-09 18:07:43 +05:00
|
|
|
mockery_v2_version=2.53.4
|
2025-11-25 10:02:46 +05:00
|
|
|
mockery_v3_version=3.5.5
|
|
|
|
|
|
|
|
|
|
base_arch=$(uname -m)
|
|
|
|
|
arch=$( [ "$base_arch" = "aarch64" ] && echo "arm64" || echo "x86_64" )
|
2024-05-04 13:18:37 +05:00
|
|
|
|
|
|
|
|
cd /tmp || exit 1
|
|
|
|
|
|
2025-11-25 10:02:46 +05:00
|
|
|
# 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/
|
|
|
|
|
|
2024-05-04 13:18:37 +05:00
|
|
|
# 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"
|
2025-11-25 10:02:46 +05:00
|
|
|
curl -L "${download_url}" -o "/tmp/mockery_${arch}.tar.gz"
|
2024-05-04 13:18:37 +05:00
|
|
|
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*
|
2025-11-25 10:02:46 +05:00
|
|
|
|
|
|
|
|
# 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*
|