#!/bin/bash # RunPod container startup script # This script initializes the container environment and starts all services set -e echo "========================================" echo " RunPod AI Orchestrator - Starting" echo "========================================" # [1/6] Start SSH server (required by RunPod) echo "[1/6] Starting SSH server..." mkdir -p ~/.ssh chmod 700 ~/.ssh echo "$PUBLIC_KEY" >> ~/.ssh/authorized_keys chmod 700 ~/.ssh/authorized_keys service ssh start echo " ✓ SSH server started" # [2/6] Cloning repositories echo "[2/6] Cloning repositories..." ssh-keyscan -p 2222 -t rsa dev.pivoine.art >> ~/.ssh/known_hosts chmod 700 ~/.ssh/known_hosts if [ ! -d "$PWD/bin" ] ; then git clone https://dev.pivoine.art/valknar/bin.git "$PWD/bin" echo " ✓ bin cloned" else cd "$PWD/bin" && git fetch && git reset --hard origin/main echo " ✓ bin updated" cd - fi if [ ! -d "$PWD/orchestrator" ] ; then git clone https://dev.pivoine.art/valknar/runpod-ai-orchestrator.git "$PWD/orchestrator" echo " ✓ orchestrator cloned" else cd "$PWD/orchestrator" && git fetch && git reset --hard origin/main echo " ✓ orchestrator updated" cd - fi # [3/6] Add $PWD/bin to PATH for arty and custom scripts echo "[3/6] Configuring PATH..." ln -sf "$PWD/bin/artifact_git_download.sh" /usr/local/bin/arty cp -s $PWD/bin/*.sh /usr/local/bin/ echo " ✓ PATH updated: $PWD/bin added" # [4/6] Setting up with arty echo "[4/6] Setting up with arty..." if [ ! "$SKIP_ARTY_SETUP" ] ; then cd "$PWD/orchestrator" arty setup cd - echo " ✓ Setup complete" else echo " ⏭ Skipping" fi # [5/6] Setting up tailscale echo "[5/6] Starting tailscale..." cd "$PWD/orchestrator" arty tailscale/start cd - echo " ✓ Started successfully" # [6/6] Starting supervisor echo "[6/6] Starting supervisor..." cd "$PWD/orchestrator" arty supervisor/start cd - echo " ✓ Started successfully" # Display connection information echo "" echo "========================================" echo " Container Ready" echo "========================================" echo "========================================" # Keep container running echo "Container is running. Press Ctrl+C to stop." sleep infinity