#!/bin/bash

set -euo pipefail

OASIS_CONTAINER="WATTER-Oasis"
OASIS_IMAGE="wattertech/oasis:ollama-qwen3.5-35b"

HOST=$(hostname)
MACHINE=$(vast show machines | grep "$HOST" | awk '{ print $1 }')
INSTANCES="$(vast show instances | grep "$MACHINE" | awk '{ print $1 }' || true)"

if [ -n "$INSTANCES" ]; then
	vast destroy instances $INSTANCES
fi

docker pull "$OASIS_IMAGE"

if docker container inspect "$OASIS_CONTAINER" >/dev/null 2>&1; then
	docker container rm -f "$OASIS_CONTAINER"
fi

NV_GPU=
for id in $(nvidia-smi -L | sed -e 's/GPU //' -e 's/: NV.*//'); do
	NV_GPU="$id,$NV_GPU"
done

docker container run -d --restart unless-stopped --runtime=nvidia \
	-e "NV_GPU=$NV_GPU" -p 11434:11434 \
	--name "$OASIS_CONTAINER" "$OASIS_IMAGE"
