From d12e5f0999eb47cc71d79189869a0a91929b0b80 Mon Sep 17 00:00:00 2001 From: ehhuang Date: Thu, 23 Oct 2025 12:36:34 -0700 Subject: [PATCH] chore(telemetry): add an arguement to select conatiner runtime explicitly (#3896) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # What does this PR do? ## Test Plan ❯ ./scripts/telemetry/setup_telemetry.sh --container docker --- scripts/telemetry/setup_telemetry.sh | 61 ++++++++++++++++++++++++---- 1 file changed, 53 insertions(+), 8 deletions(-) diff --git a/scripts/telemetry/setup_telemetry.sh b/scripts/telemetry/setup_telemetry.sh index ecdd56175..ab855e8db 100755 --- a/scripts/telemetry/setup_telemetry.sh +++ b/scripts/telemetry/setup_telemetry.sh @@ -16,14 +16,59 @@ set -Eeuo pipefail -if command -v podman &> /dev/null; then - CONTAINER_RUNTIME="podman" -elif command -v docker &> /dev/null; then - CONTAINER_RUNTIME="docker" -else - echo "🚨 Neither Podman nor Docker could be found" - echo "Install Docker: https://docs.docker.com/get-docker/ or Podman: https://podman.io/getting-started/installation" - exit 1 +# Parse arguments +CONTAINER_RUNTIME="" + +print_usage() { + echo "Usage: $0 [--container docker|podman]" + echo "" + echo "Options:" + echo " -c, --container Choose container runtime (docker or podman)." + echo " -h, --help Show this help." +} + +while [[ $# -gt 0 ]]; do + case "$1" in + -c|--container) + if [[ $# -lt 2 ]]; then + echo "🚨 --container requires a value: docker or podman" + exit 1 + fi + case "$2" in + docker|podman) + CONTAINER_RUNTIME="$2" + shift 2 + ;; + *) + echo "🚨 Invalid container runtime: $2" + echo "Valid options are: docker, podman" + exit 1 + ;; + esac + ;; + -h|--help) + print_usage + exit 0 + ;; + *) + echo "🚨 Unknown argument: $1" + print_usage + exit 1 + ;; + esac +done + +# Detect container runtime if not specified +if [[ -z "$CONTAINER_RUNTIME" ]]; then + if command -v podman &> /dev/null; then + CONTAINER_RUNTIME="podman" + elif command -v docker &> /dev/null; then + CONTAINER_RUNTIME="docker" + else + echo "🚨 Neither Podman nor Docker could be found" + echo "Install Docker: https://docs.docker.com/get-docker/ or Podman: https://podman.io/getting-started/installation" + exit 1 + fi fi echo "🚀 Setting up telemetry stack for Llama Stack using $CONTAINER_RUNTIME..."