-
Notifications
You must be signed in to change notification settings - Fork 251
Expand file tree
/
Copy pathdeploy_isolator.sh
More file actions
executable file
·49 lines (42 loc) · 1.91 KB
/
Copy pathdeploy_isolator.sh
File metadata and controls
executable file
·49 lines (42 loc) · 1.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/bin/bash
# Copyright 2026 NVIDIA CORPORATION
# SPDX-License-Identifier: Apache-2.0
#
# Installs kai-resource-isolator with kai-vgpu-monitor enabled for HAMi/hamicore
# e2e (see --test-hami in hack/setup-e2e-cluster.sh).
#
# Overrides (optional):
# ISOLATOR_CHART_REF OCI ref or local chart path
# (default: oci://docker.io/projecthami/kai-resource-isolator)
# ISOLATOR_CHART_VERSION Chart version when using OCI (default: 1.1.0-chart)
# ISOLATOR_NAMESPACE Install namespace (default: kai-resource-isolator)
# ISOLATOR_RELEASE Helm release name (default: kai-resource-isolator)
# ISOLATOR_HELM_EXTRA_ARGS Extra args appended to helm upgrade (word-split)
set -euo pipefail
ISOLATOR_CHART_REF="${ISOLATOR_CHART_REF:-oci://docker.io/projecthami/kai-resource-isolator}"
ISOLATOR_CHART_VERSION="${ISOLATOR_CHART_VERSION:-1.1.0-chart}"
ISOLATOR_NAMESPACE="${ISOLATOR_NAMESPACE:-kai-resource-isolator}"
ISOLATOR_RELEASE="${ISOLATOR_RELEASE:-kai-resource-isolator}"
HELM_ARGS=(
upgrade --install "${ISOLATOR_RELEASE}" "${ISOLATOR_CHART_REF}"
--namespace "${ISOLATOR_NAMESPACE}"
--create-namespace
--set monitor.enabled=true
--wait
--timeout 5m
)
# --version only applies to OCI/repo charts, not a local filesystem chart path.
if [[ "${ISOLATOR_CHART_REF}" == oci://* ]] || [[ "${ISOLATOR_CHART_REF}" == *://* ]]; then
HELM_ARGS+=(--version "${ISOLATOR_CHART_VERSION}")
fi
# shellcheck disable=SC2206
if [[ -n "${ISOLATOR_HELM_EXTRA_ARGS:-}" ]]; then
EXTRA=( ${ISOLATOR_HELM_EXTRA_ARGS} )
HELM_ARGS+=("${EXTRA[@]}")
fi
echo "Installing kai-resource-isolator from ${ISOLATOR_CHART_REF} (monitor.enabled=true)..."
helm "${HELM_ARGS[@]}"
echo "Waiting for isolator webhook deployment..."
kubectl -n "${ISOLATOR_NAMESPACE}" rollout status \
"deployment/${ISOLATOR_RELEASE}-webhook" --timeout=180s
echo "kai-resource-isolator installed (mutating webhook + monitor chart resources)."