mirror of
https://github.com/azaion/detections.git
synced 2026-04-22 21:56:33 +00:00
be4cab4fcb
- Added `/detect/video` endpoint for true streaming video detection, allowing inference to start as upload bytes arrive. - Introduced `run_detect_video_stream` method in the inference module to handle video processing from a file-like object. - Updated media hashing to include a new function for computing hashes directly from files with minimal I/O. - Enhanced documentation to reflect changes in video processing and API behavior. Made-with: Cursor
83 lines
2.0 KiB
Bash
Executable File
83 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
|
|
|
if [ -f "$PROJECT_ROOT/.env" ]; then
|
|
set -a
|
|
source "$PROJECT_ROOT/.env"
|
|
set +a
|
|
fi
|
|
|
|
REGISTRY="${REGISTRY:?REGISTRY is required}"
|
|
IMAGE_TAG="${IMAGE_TAG:?IMAGE_TAG is required}"
|
|
DEPLOY_HOST="${DEPLOY_HOST:-}"
|
|
DEPLOY_USER="${DEPLOY_USER:-deploy}"
|
|
|
|
usage() {
|
|
echo "Usage: $0 [--rollback] [--help]"
|
|
echo ""
|
|
echo "Deploy Azaion.Detections to a target machine."
|
|
echo ""
|
|
echo "Options:"
|
|
echo " --rollback Redeploy the previous image tag"
|
|
echo " --help Show this help message"
|
|
echo ""
|
|
echo "Environment variables:"
|
|
echo " REGISTRY Container registry URL (required)"
|
|
echo " IMAGE_TAG Image tag to deploy (required)"
|
|
echo " DEPLOY_HOST Target machine (empty = local)"
|
|
echo " DEPLOY_USER SSH user (default: deploy)"
|
|
exit 0
|
|
}
|
|
|
|
run_cmd() {
|
|
if [ -n "$DEPLOY_HOST" ]; then
|
|
ssh "${DEPLOY_USER}@${DEPLOY_HOST}" "$@"
|
|
else
|
|
eval "$@"
|
|
fi
|
|
}
|
|
|
|
ROLLBACK=0
|
|
for arg in "$@"; do
|
|
case "$arg" in
|
|
--rollback) ROLLBACK=1 ;;
|
|
--help) usage ;;
|
|
esac
|
|
done
|
|
|
|
if [ "$ROLLBACK" -eq 1 ]; then
|
|
PREV_TAG_FILE="$PROJECT_ROOT/.deploy-previous-tag"
|
|
if [ ! -f "$PREV_TAG_FILE" ]; then
|
|
echo "ERROR: No previous tag found at $PREV_TAG_FILE"
|
|
exit 1
|
|
fi
|
|
IMAGE_TAG="$(cat "$PREV_TAG_FILE")"
|
|
echo "Rolling back to image tag: $IMAGE_TAG"
|
|
fi
|
|
|
|
echo "=== Deploying Azaion.Detections ==="
|
|
echo "Registry: $REGISTRY"
|
|
echo "Image tag: $IMAGE_TAG"
|
|
echo "Target: ${DEPLOY_HOST:-localhost}"
|
|
echo ""
|
|
|
|
echo "--- Pulling images ---"
|
|
bash "$SCRIPT_DIR/pull-images.sh"
|
|
|
|
echo "--- Stopping services ---"
|
|
bash "$SCRIPT_DIR/stop-services.sh"
|
|
|
|
echo "--- Starting services ---"
|
|
bash "$SCRIPT_DIR/start-services.sh"
|
|
|
|
echo "--- Health check ---"
|
|
if bash "$SCRIPT_DIR/health-check.sh"; then
|
|
echo "=== Deployment successful ==="
|
|
else
|
|
echo "ERROR: Health check failed. Run '$0 --rollback' to revert."
|
|
exit 1
|
|
fi
|