From fdd307cf7a160836c883da79af008919ea866cc6 Mon Sep 17 00:00:00 2001 From: Michael Sloan Date: Wed, 18 Jun 2025 13:07:57 -0600 Subject: [PATCH] collab: Add automatic install of minio deb or rpm to script/bootstrap (#32968) Release Notes: - N/A --- script/bootstrap | 27 +++++++++++++++++++++++++++ script/run-local-minio | 6 +++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/script/bootstrap b/script/bootstrap index 454daf46e2..68888e04c1 100755 --- a/script/bootstrap +++ b/script/bootstrap @@ -2,6 +2,12 @@ set -e +# if root or if sudo/unavailable, define an empty variable +if [ "$(id -u)" -eq 0 ] +then maysudo='' +else maysudo="$(command -v sudo || command -v doas || true)" +fi + if [[ "$OSTYPE" == "linux-gnu"* ]]; then echo "Linux dependencies..." script/linux @@ -10,6 +16,27 @@ else which foreman > /dev/null || brew install foreman fi +# Install minio if needed +if ! which minio > /dev/null; then + if command -v brew > /dev/null; then + echo "minio not found. Installing via brew" + brew install minio/stable/minio + elif command -v apt > /dev/null; then + echo "minio not found. Installing via apt from https://dl.min.io/server/minio/release/linux-amd64/minio.deb" + wget -q https://dl.min.io/server/minio/release/linux-amd64/minio.deb -O /tmp/minio.deb + $maysudo apt install /tmp/minio.deb + rm -f /tmp/minio.deb + elif command -v dnf > /dev/null; then + echo "minio not found. Installing via dnf from https://dl.min.io/server/minio/release/linux-amd64/minio.rpm" + wget -q https://dl.min.io/server/minio/release/linux-amd64/minio.rpm -O /tmp/minio.rpm + $maysudo dnf install /tmp/minio.rpm + rm -f /tmp/minio.rpm + else + echo "No supported package manager found (brew, apt, or dnf)" + exit 1 + fi +fi + # Install sqlx-cli if needed if ! [[ "$(command -v sqlx)" && "$(sqlx --version)" == "sqlx-cli 0.7.2" ]]; then echo "sqlx-cli not found or not the required version, installing version 0.7.2..." diff --git a/script/run-local-minio b/script/run-local-minio index 3454eedae5..61266abb21 100755 --- a/script/run-local-minio +++ b/script/run-local-minio @@ -2,7 +2,11 @@ set -e -which minio > /dev/null || (echo "installing minio..."; brew install minio/stable/minio) +if ! which minio > /dev/null; then + echo "minio not found - run script/bootstrap to install it and do other setup" + exit 1 +fi + mkdir -p .blob_store/the-extensions-bucket mkdir -p .blob_store/zed-crash-reports