13 lines
1.1 KiB
Bash
Executable File
13 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Проверка патча CR в db/cutover-one.sh: свои ресурсы/probes не понижаются, пауза не будится, CUTOVER_REPLICAS применяется.
|
|
# bash tests/cutover-patch.sh
|
|
set -euo pipefail
|
|
PY=$(sed -n "/<<'PY'$/,/^PY$/p" "$(dirname "$0")/../db/cutover-one.sh" | sed '1d;$d')
|
|
run() { local f; f=$(mktemp); echo '{"spec":{"replicas":0,"probes":{"livenessProbe":{"initialDelaySeconds":900}},"scheduling":{"resources":{"limits":{"memory":"8Gi"}}},"mattermostEnv":[{"name":"MM_SQLSETTINGS_DATASOURCE","value":"old"}]}}' >"$f"
|
|
python3 - "$f" NEW NEWRO 600 60 120 60 4Gi 512Mi 200m <<<"$PY" >/dev/null; jq -c .spec "$f"; rm -f "$f"; }
|
|
S=$(run)
|
|
jq -e '.replicas==0 and .scheduling.resources.limits.memory=="8Gi" and .probes.livenessProbe.initialDelaySeconds==900 and .probes.livenessProbe.failureThreshold==60 and .scheduling.resources.requests.memory=="512Mi" and ([.mattermostEnv[]|select(.name=="MM_SQLSETTINGS_DATASOURCE").value]==["NEW"])' <<<"$S" >/dev/null || { echo "FAIL: $S"; exit 1; }
|
|
S=$(CUTOVER_REPLICAS=3 run)
|
|
jq -e '.replicas==3' <<<"$S" >/dev/null || { echo "FAIL replicas: $S"; exit 1; }
|
|
echo OK
|