2023-02-01 19:44:05 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
2023-04-04 15:33:50 +00:00
|
|
|
# https://www.sovereign-stack.org/ss-manage/
|
|
|
|
|
2023-02-01 19:44:05 +00:00
|
|
|
set -eu
|
|
|
|
cd "$(dirname "$0")"
|
|
|
|
|
2023-04-04 15:33:50 +00:00
|
|
|
# check to ensure dependencies are met.
|
|
|
|
if ! command -v lxc >/dev/null 2>&1; then
|
|
|
|
echo "This script requires 'lxd/lxc' to be installed. Please run 'install.sh'."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2023-03-02 14:46:17 +00:00
|
|
|
if ! lxc remote get-default | grep -q "local"; then
|
|
|
|
lxc remote switch "local"
|
2023-02-01 19:44:05 +00:00
|
|
|
fi
|
|
|
|
|
2023-03-19 20:42:48 +00:00
|
|
|
if ! lxc list -q --format csv | grep -q ss-mgmt; then
|
|
|
|
echo "ERROR: the 'ss-mgmt' VM does not exist. You may need to run install.sh"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2023-02-01 19:44:05 +00:00
|
|
|
# if the mgmt machine doesn't exist, then warn the user to perform ./install.sh
|
|
|
|
if ! lxc list --format csv | grep -q "ss-mgmt"; then
|
|
|
|
echo "ERROR: the management machine VM does not exist. You probably need to run './install.sh'."
|
|
|
|
echo "INFO: check out https://www.sovereign-stack.org/tag/code-lifecycle-management/ for more information."
|
|
|
|
fi
|
|
|
|
|
|
|
|
# if the machine does exist, let's make sure it's RUNNING.
|
|
|
|
if lxc list --format csv | grep -q "ss-mgmt,STOPPED"; then
|
2023-04-14 17:17:42 +00:00
|
|
|
echo "INFO: The SSME was in a STOPPED state. Starting the environment. Please wait."
|
2023-02-01 19:44:05 +00:00
|
|
|
lxc start ss-mgmt
|
|
|
|
sleep 30
|
|
|
|
fi
|
|
|
|
|
|
|
|
. ./management/wait_for_lxc_ip.sh
|
|
|
|
|
2023-03-02 14:46:17 +00:00
|
|
|
# let's ensure ~/.ssh/ssh_config is using the correct IP address for ss-mgmt.
|
2023-02-01 19:44:05 +00:00
|
|
|
ssh ubuntu@"$IP_V4_ADDRESS"
|