summaryrefslogtreecommitdiffstats
path: root/scripts/disaster/gluster_endpoints/add_endpoints.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/disaster/gluster_endpoints/add_endpoints.sh')
-rw-r--r--scripts/disaster/gluster_endpoints/add_endpoints.sh17
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/disaster/gluster_endpoints/add_endpoints.sh b/scripts/disaster/gluster_endpoints/add_endpoints.sh
new file mode 100644
index 0000000..4badee9
--- /dev/null
+++ b/scripts/disaster/gluster_endpoints/add_endpoints.sh
@@ -0,0 +1,17 @@
+[[ $# -ne 1 ]] && { echo "Usage: $0 <NEW_NODE_IP>"; exit 1; }
+
+NEW_IP="$1"
+
+oc get namespaces -o name | sed 's/namespaces\///' | \
+while read NS; do
+ if oc -n "$NS" get endpoints gfs &>/dev/null; then
+ echo "✓ Patching $NS/gfs with $NEW_IP"
+# echo oc -n "$NS" patch endpoints gfs --type=strategic --patch="{\"subsets\":[{\"addresses\":[{\"ip\":\"$NEW_IP\"}]}]}"
+# echo oc -n "$NS" patch ep gfs --type=strategic --patch='{"subsets":[{"addresses":[{"ip":"'"$NEW_IP"'"}]}]}'
+ oc -n "$NS" patch ep gfs --type=json -p='[{"op": "add", "path": "/subsets/0/addresses/-", "value": {"ip": "'"$NEW_IP"'"}}]'
+ else
+ echo "✗ No gfs endpoint in $NS (skipping)"
+ fi
+done
+
+echo "Done. Verify: oc get ep gfs -A -o wide" \ No newline at end of file