nxtgauge-gitops/scripts/set-app-release.sh
2026-06-14 05:52:50 +05:30

53 lines
1.1 KiB
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
if [ "$#" -lt 2 ] || [ "$#" -gt 3 ]; then
echo "usage: $0 <app> <image-ref> [replicas]" >&2
exit 1
fi
app="$1"
image_ref="$2"
replicas="${3:-1}"
case "$app" in
admin-solid)
overlay="apps/nxtgauge-admin-solid/overlays/prod"
namespace="nxtgauge"
deployment="nxtgauge-admin-solid"
container="admin-solid"
;;
frontend-solid)
overlay="apps/nxtgauge-frontend-solid/overlays/prod"
namespace="nxtgauge"
deployment="nxtgauge-frontend-solid"
container="frontend-solid"
;;
ai-assistant)
overlay="apps/nxtgauge-ai-assistant/overlays/prod"
namespace=""
deployment="nxtgauge-ai-assistant"
container="ai-assistant"
;;
*)
echo "unknown app: $app" >&2
exit 1
;;
esac
{
echo 'apiVersion: apps/v1'
echo 'kind: Deployment'
echo 'metadata:'
if [ -n "$namespace" ]; then
echo " namespace: $namespace"
fi
echo " name: $deployment"
echo 'spec:'
echo " replicas: $replicas"
echo ' template:'
echo ' spec:'
echo ' containers:'
echo " - name: $container"
echo " image: $image_ref"
} > "$overlay/release-patch.yaml"