#!/usr/bin/env bash
set -euo pipefail

IMAGE_NAME=opencode:local
TAR_NAME=opencode_local.tar
CONTAINER_NAME=opencode

if [ ! -f "${TAR_NAME}" ]; then
  echo "Error: ${TAR_NAME} not found in current directory"
  exit 1
fi

echo "Loading image..."
docker load -i "${TAR_NAME}"

echo "Starting container ${CONTAINER_NAME}..."
docker run -d --name "${CONTAINER_NAME}" \
  --env-file ./opencode.env \
  -v "$(pwd)/opencode.json":/root/.config/opencode/opencode.json:rw \
  -v "$(pwd)/workspace":/workspace:rw \
  --restart unless-stopped \
  "${IMAGE_NAME}"

echo "Container started. Use 'docker logs -f ${CONTAINER_NAME}' to follow logs."

# If you need to bypass the entrypoint (let opencode handle {env:...} itself):
# docker run -d --name opencode --entrypoint "" --env-file ./opencode.env \
#   -v "$(pwd)/opencode.json":/root/.config/opencode/opencode.json:rw \
#   -v "$(pwd)/workspace":/workspace:rw \
#   --restart unless-stopped opencode:local opencode start
