diff --git a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.search.yaml b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.search.yaml index 3f8e653ee9..c672460d5d 100644 --- a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.search.yaml +++ b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.search.yaml @@ -36,7 +36,7 @@ services: - live-video-network vss-ui: - image: ${REGISTRY:-}vss-ui:${TAG:-latest} + image: ${REGISTRY:-}vss-ui:${VSS_STACK_TAG:-${TAG:-latest}} ipc: host ports: - "${UI_HOST_PORT}:8080" @@ -60,7 +60,7 @@ services: - live-video-network pipeline-manager: - image: ${REGISTRY:-}pipeline-manager:${TAG:-latest} + image: ${REGISTRY:-}pipeline-manager:${VSS_STACK_TAG:-${TAG:-latest}} ports: - "${PM_HOST_PORT}:3000" ipc: host @@ -149,7 +149,7 @@ services: - live-video-network video-search: - image: ${REGISTRY:-}video-search:${TAG:-latest} + image: ${REGISTRY:-}video-search:${VSS_STACK_TAG:-${TAG:-latest}} # user root to make it equivalent permission to frigate to w/r shared volume user: "0:0" depends_on: @@ -202,7 +202,7 @@ services: - live-video-network vdms-dataprep: - image: ${REGISTRY:-}vdms-dataprep:${TAG:-latest} + image: ${REGISTRY:-}vdms-dataprep:${VSS_STACK_TAG:-${TAG:-latest}} hostname: vdms-dataprep environment: no_proxy: ${no_proxy},${VDMS_VDB_HOST},${MULTIMODAL_EMBEDDING_HOST},${MINIO_HOST},localhost @@ -271,7 +271,7 @@ services: - live-video-network multimodal-embedding-serving: - image: ${REGISTRY:-}multimodal-embedding-serving:${TAG:-latest} + image: ${REGISTRY:-}multimodal-embedding-serving:${VSS_STACK_TAG:-${TAG:-latest}} container_name: multimodal-embedding-serving ports: - "${EMBEDDING_SERVER_PORT:-9777}:8000" diff --git a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.smart-nvr.yaml b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.smart-nvr.yaml index f5aa84e165..7640ea7382 100644 --- a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.smart-nvr.yaml +++ b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.smart-nvr.yaml @@ -42,7 +42,7 @@ services: nvr-event-router: container_name: nvr-event-router - image: ${REGISTRY}nvr-event-router:${TAG} + image: ${REGISTRY}nvr-event-router:${SMART_NVR_STACK_TAG:-${TAG:-latest}} restart: unless-stopped networks: - live-video-network diff --git a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.telemetry.yaml b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.telemetry.yaml index fa67dda685..5cf5196eec 100644 --- a/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.telemetry.yaml +++ b/metro-ai-suite/live-video-analysis/live-video-search/docker/compose.telemetry.yaml @@ -3,7 +3,7 @@ services: vss-collector: - image: docker.io/intel/vippet-collector:2025.2.0 + image: docker.io/intel/vippet-collector:2026.0.0-20260217-weekly container_name: vss-collector ports: - '9273:9273' diff --git a/metro-ai-suite/live-video-analysis/live-video-search/docs/user-guide/get-started.md b/metro-ai-suite/live-video-analysis/live-video-search/docs/user-guide/get-started.md index 458da91d6b..45e25f0f4b 100644 --- a/metro-ai-suite/live-video-analysis/live-video-search/docs/user-guide/get-started.md +++ b/metro-ai-suite/live-video-analysis/live-video-search/docs/user-guide/get-started.md @@ -40,6 +40,30 @@ Before running the application, you need to set several environment variables: export TAG=latest ``` + In most cases, `TAG=latest` works out of the box. Set a specific tag only when you need to pin to a particular release/version. + + **Override tags per stack (recommended for mixed release cycles):** + + Live Video Search combines two stacks that can be released on different cadences: + - **VSS Search stack** (`compose.search.yaml`) + - **Smart NVR stack** (`compose.smart-nvr.yaml`) + + Use stack-specific tag overrides when you need different image versions for each stack: + + ```bash + export TAG=1.0.0 + export VSS_STACK_TAG=1.3.2 + export SMART_NVR_STACK_TAG=1.2.4 + ``` + + Why this is needed: a single shared `TAG` forces both stacks to use the same version, which does not match independent VSS and Smart NVR release cycles. + + Note: `setup.sh` includes a release mapping for `TAG=1.0.0` and automatically sets: + - `VSS_STACK_TAG=1.3.2` + - `SMART_NVR_STACK_TAG=1.2.4` + + You can still explicitly export `VSS_STACK_TAG` and `SMART_NVR_STACK_TAG` to override those defaults. + 2. **Set required credentials for some services**: Following variables **MUST** be set on your current shell before running the setup script: diff --git a/metro-ai-suite/live-video-analysis/live-video-search/setup.sh b/metro-ai-suite/live-video-analysis/live-video-search/setup.sh index babf7b6507..99aeada57f 100644 --- a/metro-ai-suite/live-video-analysis/live-video-search/setup.sh +++ b/metro-ai-suite/live-video-analysis/live-video-search/setup.sh @@ -105,6 +105,20 @@ export APP_HOST_PORT=${APP_HOST_PORT:-12345} export HOST_IP=$(get_host_ip) export TAG=${TAG:-latest} +# Stack-specific image tags (override-able via env vars) +export VSS_STACK_TAG=${VSS_STACK_TAG:-$TAG} +export SMART_NVR_STACK_TAG=${SMART_NVR_STACK_TAG:-$TAG} + +# Release-specific tag mapping for Live Video Search 1.0.0 +if [ "$TAG" = "1.0.0" ]; then + if [ -z "$VSS_STACK_TAG" ] || [ "$VSS_STACK_TAG" = "$TAG" ]; then + export VSS_STACK_TAG="1.3.2" + fi + if [ -z "$SMART_NVR_STACK_TAG" ] || [ "$SMART_NVR_STACK_TAG" = "$TAG" ]; then + export SMART_NVR_STACK_TAG="1.2.4" + fi +fi + [[ -n "$REGISTRY_URL" ]] && REGISTRY_URL="${REGISTRY_URL%/}/" [[ -n "$PROJECT_NAME" ]] && PROJECT_NAME="${PROJECT_NAME%/}/" export REGISTRY="${REGISTRY_URL}${PROJECT_NAME}" diff --git a/metro-ai-suite/smart-nvr/charts/Chart.yaml b/metro-ai-suite/smart-nvr/charts/Chart.yaml index a732bfffac..aa97e96ac6 100644 --- a/metro-ai-suite/smart-nvr/charts/Chart.yaml +++ b/metro-ai-suite/smart-nvr/charts/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 name: smart-nvr description: A Helm chart for Smart NVR -version: 1.2.3 +version: 1.2.4 dependencies: - name: frigate version: 1.2.3 diff --git a/metro-ai-suite/smart-nvr/docs/user-guide/get-started.md b/metro-ai-suite/smart-nvr/docs/user-guide/get-started.md index 5a40ba1947..d0bc39c3f2 100644 --- a/metro-ai-suite/smart-nvr/docs/user-guide/get-started.md +++ b/metro-ai-suite/smart-nvr/docs/user-guide/get-started.md @@ -69,7 +69,7 @@ Set up the required environment variables: ```bash # Docker Registry Details export REGISTRY_URL="intel" -export TAG="1.2.3" +export TAG="latest" # VSS Service Endpoints export http_proxy= diff --git a/metro-ai-suite/smart-nvr/docs/user-guide/get-started/deploy-with-helm.md b/metro-ai-suite/smart-nvr/docs/user-guide/get-started/deploy-with-helm.md index 144c5ab8fb..3587ab4915 100644 --- a/metro-ai-suite/smart-nvr/docs/user-guide/get-started/deploy-with-helm.md +++ b/metro-ai-suite/smart-nvr/docs/user-guide/get-started/deploy-with-helm.md @@ -52,7 +52,7 @@ There are two options to get the charts in your workspace: Use the following command to pull the Helm chart from Docker Hub: ```bash -helm pull oci://registry-1.docker.io/intel/smart-nvr --version 1.2.3 +helm pull oci://registry-1.docker.io/intel/smart-nvr --version ``` Refer to the [release notes](../release-notes.md) for details on the latest version number to @@ -63,7 +63,7 @@ use for the sample application. After pulling the chart, extract the `.tgz` file: ```bash -tar -xvf smart-nvr-1.2.3.tgz +tar -xvf smart-nvr-.tgz ``` This will create a directory named `smart-nvr` containing the chart files. Navigate to the diff --git a/metro-ai-suite/smart-nvr/docs/user-guide/release-notes.md b/metro-ai-suite/smart-nvr/docs/user-guide/release-notes.md index 5af9c95775..49d249b3d6 100644 --- a/metro-ai-suite/smart-nvr/docs/user-guide/release-notes.md +++ b/metro-ai-suite/smart-nvr/docs/user-guide/release-notes.md @@ -1,5 +1,6 @@ # Release Notes +- [Version 1.2.4-rc1](#version-124-rc1) - [Version 1.2.3](#version-123) - [Version 1.2.2](#version-122) - [Version 1.2.1](#version-121) @@ -8,13 +9,15 @@ ## Current Release -### Version 1.2.3 +### Version 1.2.4-rc1 -**Release Date**: 24 November 2025 +**Release Date**: 17 Feb 2026 **New Features**: -- Minor Fixes +- Dependabot fixes for security vulnerabilities in dependencies. +- Documentation updates for clarity and accuracy. +- Minor bug fixes. **Known Issues**: @@ -25,6 +28,14 @@ ## Previous Releases +### Version 1.2.3 + +**Release Date**: 24 November 2025 + +**New Features**: + +- Minor Fixes + ### Version 1.2.2 **Release Date**: 14 November 2025