#!/bin/bash
# SSH to remote builder with temporary lavtomate API token
#
# Usage:
#   lavtomate-ssh [user@]host           # interactive session
#   lavtomate-ssh [user@]host command   # run command
#
# Examples:
#   lavtomate-ssh builder-p11
#   lavtomate-ssh lav@builder64
#   lavtomate-ssh builder-p10 gita ls
#
# Requires:
#   - Valid Kerberos ticket (kinit)
#   - lavtomate-get-token in PATH
#   - Remote sshd configured with AcceptEnv LAVTOMATE_API_KEY

set -e

if [ -z "$1" ]; then
    echo "Usage: lavtomate-ssh [user@]host [command...]" >&2
    exit 1
fi

HOST="$1"
shift

TOKEN=$(lavtomate-get-token)

if [ -z "$TOKEN" ]; then
    echo "Error: Failed to get lavtomate token" >&2
    exit 1
fi

export LAVTOMATE_API_KEY="$TOKEN"
exec ssh -o SendEnv=LAVTOMATE_API_KEY "$HOST" "$@"
