automaker / entrypoint.sh
GraziePrego's picture
Upload folder using huggingface_hub
e902e6e verified
Raw History Blame Contribute Delete
2.14 kB
#!/bin/sh
# entrypoint.sh - Initialize environment and start Automaker for Hugging Face
echo "Starting Automaker entrypoint script..."
# Ensure DATA_DIR exists
mkdir -p "$DATA_DIR"
# Configure OpenCode authentication
if [ -n "$OPENCODE_API_KEY" ] || [ -n "$JULES_API_KEY" ]; then
echo "Configuring OpenCode authentication..."
mkdir -p "$HOME/.local/share/opencode"
# Start with a base auth object
AUTH_JSON="{}"
# Add opencode provider if OPENCODE_API_KEY is present
if [ -n "$OPENCODE_API_KEY" ]; then
AUTH_JSON=$(echo "$AUTH_JSON" | jq ". + {\"api_key\": \"$OPENCODE_API_KEY\", \"opencode\": {\"type\": \"api_key\", \"key\": \"$OPENCODE_API_KEY\"}}")
fi
# Add helmholtz provider if JULES_API_KEY is present
if [ -n "$JULES_API_KEY" ]; then
AUTH_JSON=$(echo "$AUTH_JSON" | jq ". + {\"helmholtz\": {\"type\": \"api_key\", \"key\": \"$JULES_API_KEY\", \"baseURL\": \"https://api.helmholtz-blablador.fz-juelich.de/v1\"}}")
# Also set helmholtz/alias-code as default model using update_settings.py
if [ -f "/usr/local/bin/update_settings.py" ]; then
python3 /usr/local/bin/update_settings.py "$DATA_DIR" "helmholtz/alias-code"
fi
# Export as JULES_TOKEN for Jules CLI compatibility
export JULES_TOKEN="$JULES_API_KEY"
echo "Jules CLI authentication configured."
fi
echo "$AUTH_JSON" > "$HOME/.local/share/opencode/auth.json"
echo "OpenCode authentication configured."
else
echo "Neither OPENCODE_API_KEY nor JULES_API_KEY found."
fi
# Configure GitHub CLI authentication
if [ -n "$GITHUB_API_KEY" ]; then
echo "GITHUB_API_KEY detected, configuring GitHub CLI..."
export GH_TOKEN="$GITHUB_API_KEY"
echo "GitHub CLI token exported."
else
echo "GITHUB_API_KEY not found."
fi
# Log environment info for debugging
echo "Environment Info:"
echo " UID: $(id -u)"
echo " HOME: $HOME"
echo " PWD: $(pwd)"
echo " PORT: $PORT"
echo " DATA_DIR: $DATA_DIR"
# Start the application
echo "Starting application on port $PORT..."
exec node apps/server/dist/index.js