34 lines
1.3 KiB
Bash
Executable file
34 lines
1.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
scope="${1:-full}"
|
|
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
|
|
case "$scope" in
|
|
full|services|workers|api|web)
|
|
;;
|
|
*)
|
|
echo "Usage: deployment/native/cutover.sh [full|services|workers|api|web]" >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo "Stopping Docker-owned Islandflow app services before native ownership starts."
|
|
(
|
|
cd "$repo_root/deployment/docker"
|
|
docker compose stop web api compute candles ingest-options ingest-equities
|
|
)
|
|
|
|
if [[ "$scope" == "full" || "$scope" == "services" || "$scope" == "api" || "$scope" == "web" ]]; then
|
|
"$repo_root/deployment/native/check-native-infra.sh"
|
|
fi
|
|
|
|
systemctl --user restart $(case "$scope" in
|
|
full) echo islandflow-web.service islandflow-api.service islandflow-compute.service islandflow-candles.service islandflow-ingest-options.service islandflow-ingest-equities.service ;;
|
|
services) echo islandflow-api.service islandflow-compute.service islandflow-candles.service islandflow-ingest-options.service islandflow-ingest-equities.service ;;
|
|
workers) echo islandflow-compute.service islandflow-candles.service islandflow-ingest-options.service islandflow-ingest-equities.service ;;
|
|
api) echo islandflow-api.service ;;
|
|
web) echo islandflow-web.service ;;
|
|
esac)
|
|
|
|
"$repo_root/deployment/native/check-native-health.sh" "$scope"
|