#!/bin/sh set -eu # Persist ssh state on the StartOS volume (mounted at /data when packaged). SSH_DIR="${SSH_DIR:-/data/ssh}" mkdir -p "$SSH_DIR" chmod 700 "$SSH_DIR" if [ ! -f "$SSH_DIR/id_ed25519" ]; then echo "[entrypoint] Generating ed25519 keypair for SSH to Sparks..." ssh-keygen -t ed25519 -N "" -f "$SSH_DIR/id_ed25519" -C "spark-control@start9" >/dev/null fi chmod 600 "$SSH_DIR/id_ed25519" chmod 644 "$SSH_DIR/id_ed25519.pub" touch "$SSH_DIR/known_hosts" && chmod 600 "$SSH_DIR/known_hosts" export SSH_KEY_PATH="${SSH_KEY_PATH:-$SSH_DIR/id_ed25519}" export SSH_KNOWN_HOSTS="${SSH_KNOWN_HOSTS:-$SSH_DIR/known_hosts}" exec uvicorn app.server:app --host 0.0.0.0 --port "${BIND_PORT:-9999}"