mirror of
https://github.com/Crosstalk-Solutions/project-nomad.git
synced 2026-04-03 15:26:16 +02:00
fix(Scripts): log dir creation improvements during install
This commit is contained in:
parent
f17a1042fb
commit
102835290b
|
|
@ -29,6 +29,7 @@ GREEN='\033[1;32m' # Light Green.
|
||||||
###################################################################################################################################################################################################
|
###################################################################################################################################################################################################
|
||||||
|
|
||||||
WHIPTAIL_TITLE="Project N.O.M.A.D Installation"
|
WHIPTAIL_TITLE="Project N.O.M.A.D Installation"
|
||||||
|
NOMAD_DIR="/opt/project-nomad"
|
||||||
MANAGEMENT_COMPOSE_FILE_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/management_compose.yaml"
|
MANAGEMENT_COMPOSE_FILE_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/management_compose.yaml"
|
||||||
ENTRYPOINT_SCRIPT_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/entrypoint.sh"
|
ENTRYPOINT_SCRIPT_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/entrypoint.sh"
|
||||||
START_SCRIPT_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/start_nomad.sh"
|
START_SCRIPT_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/master/install/start_nomad.sh"
|
||||||
|
|
@ -37,8 +38,6 @@ UPDATE_SCRIPT_URL="https://raw.githubusercontent.com/Crosstalk-Solutions/project
|
||||||
WAIT_FOR_IT_SCRIPT_URL="https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh"
|
WAIT_FOR_IT_SCRIPT_URL="https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh"
|
||||||
|
|
||||||
script_option_debug='true'
|
script_option_debug='true'
|
||||||
install_actions=''
|
|
||||||
nomad_dir="/opt/project-nomad"
|
|
||||||
accepted_terms='false'
|
accepted_terms='false'
|
||||||
local_ip=''
|
local_ip=''
|
||||||
|
|
||||||
|
|
@ -208,41 +207,27 @@ accept_terms() {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
get_install_directory() {
|
|
||||||
# Prompt user for installation directory
|
|
||||||
nomad_dir=$(whiptail --title "$WHIPTAIL_TITLE" --inputbox "Enter the installation directory for Project N.O.M.A.D. (default: /opt/project-nomad):" 10 60 "$nomad_dir" 3>&1 1>&2 2>&3)
|
|
||||||
|
|
||||||
if [[ $? -ne 0 ]]; then
|
|
||||||
echo -e "${RED}#${RESET} Installation cancelled by user."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Validate the directory
|
|
||||||
if [[ ! -d "$nomad_dir" ]]; then
|
|
||||||
echo -e "${YELLOW}#${RESET} Directory $nomad_dir does not exist. It will be attempted to be created during the installation process.\\n"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
create_nomad_directory(){
|
create_nomad_directory(){
|
||||||
if [[ ! -d "$nomad_dir" ]]; then
|
# Ensure the main installation directory exists
|
||||||
echo -e "${YELLOW}#${RESET} Creating directory for Project N.O.M.A.D at $nomad_dir...\\n"
|
if [[ ! -d "$NOMAD_DIR" ]]; then
|
||||||
sudo mkdir -p "$nomad_dir"
|
echo -e "${YELLOW}#${RESET} Creating directory for Project N.O.M.A.D at $NOMAD_DIR...\\n"
|
||||||
sudo chown "$(whoami):$(whoami)" "$nomad_dir"
|
sudo mkdir -p "$NOMAD_DIR"
|
||||||
|
sudo chown "$(whoami):$(whoami)" "$NOMAD_DIR"
|
||||||
# Also ensure the directory has a /storage/logs/ subdirectory
|
|
||||||
sudo mkdir -p "${nomad_dir}/storage/logs"
|
|
||||||
|
|
||||||
# Create a admin.log file in the logs directory
|
|
||||||
sudo touch "${nomad_dir}/storage/logs/admin.log"
|
|
||||||
|
|
||||||
echo -e "${GREEN}#${RESET} Directory created successfully.\\n"
|
echo -e "${GREEN}#${RESET} Directory created successfully.\\n"
|
||||||
else
|
else
|
||||||
echo -e "${GREEN}#${RESET} Directory $nomad_dir already exists.\\n"
|
echo -e "${GREEN}#${RESET} Directory $NOMAD_DIR already exists.\\n"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Also ensure the directory has a /storage/logs/ subdirectory
|
||||||
|
sudo mkdir -p "${NOMAD_DIR}/storage/logs"
|
||||||
|
|
||||||
|
# Create a admin.log file in the logs directory
|
||||||
|
sudo touch "${NOMAD_DIR}/storage/logs/admin.log"
|
||||||
}
|
}
|
||||||
|
|
||||||
download_management_compose_file() {
|
download_management_compose_file() {
|
||||||
local compose_file_path="${nomad_dir}/docker-compose-management.yml"
|
local compose_file_path="${NOMAD_DIR}/docker-compose-management.yml"
|
||||||
|
|
||||||
echo -e "${YELLOW}#${RESET} Downloading docker-compose file for management...\\n"
|
echo -e "${YELLOW}#${RESET} Downloading docker-compose file for management...\\n"
|
||||||
if ! curl -fsSL "$MANAGEMENT_COMPOSE_FILE_URL" -o "$compose_file_path"; then
|
if ! curl -fsSL "$MANAGEMENT_COMPOSE_FILE_URL" -o "$compose_file_path"; then
|
||||||
|
|
@ -253,7 +238,7 @@ download_management_compose_file() {
|
||||||
}
|
}
|
||||||
|
|
||||||
download_wait_for_it_script() {
|
download_wait_for_it_script() {
|
||||||
local wait_for_it_script_path="${nomad_dir}/wait-for-it.sh"
|
local wait_for_it_script_path="${NOMAD_DIR}/wait-for-it.sh"
|
||||||
|
|
||||||
echo -e "${YELLOW}#${RESET} Downloading wait-for-it script...\\n"
|
echo -e "${YELLOW}#${RESET} Downloading wait-for-it script...\\n"
|
||||||
if ! curl -fsSL "$WAIT_FOR_IT_SCRIPT_URL" -o "$wait_for_it_script_path"; then
|
if ! curl -fsSL "$WAIT_FOR_IT_SCRIPT_URL" -o "$wait_for_it_script_path"; then
|
||||||
|
|
@ -265,7 +250,7 @@ download_wait_for_it_script() {
|
||||||
}
|
}
|
||||||
|
|
||||||
download_entrypoint_script() {
|
download_entrypoint_script() {
|
||||||
local entrypoint_script_path="${nomad_dir}/entrypoint.sh"
|
local entrypoint_script_path="${NOMAD_DIR}/entrypoint.sh"
|
||||||
|
|
||||||
echo -e "${YELLOW}#${RESET} Downloading entrypoint script...\\n"
|
echo -e "${YELLOW}#${RESET} Downloading entrypoint script...\\n"
|
||||||
if ! curl -fsSL "$ENTRYPOINT_SCRIPT_URL" -o "$entrypoint_script_path"; then
|
if ! curl -fsSL "$ENTRYPOINT_SCRIPT_URL" -o "$entrypoint_script_path"; then
|
||||||
|
|
@ -277,9 +262,9 @@ download_entrypoint_script() {
|
||||||
}
|
}
|
||||||
|
|
||||||
download_helper_scripts() {
|
download_helper_scripts() {
|
||||||
local start_script_path="${nomad_dir}/start_nomad.sh"
|
local start_script_path="${NOMAD_DIR}/start_nomad.sh"
|
||||||
local stop_script_path="${nomad_dir}/stop_nomad.sh"
|
local stop_script_path="${NOMAD_DIR}/stop_nomad.sh"
|
||||||
local update_script_path="${nomad_dir}/update_nomad.sh"
|
local update_script_path="${NOMAD_DIR}/update_nomad.sh"
|
||||||
|
|
||||||
echo -e "${YELLOW}#${RESET} Downloading helper scripts...\\n"
|
echo -e "${YELLOW}#${RESET} Downloading helper scripts...\\n"
|
||||||
if ! curl -fsSL "$START_SCRIPT_URL" -o "$start_script_path"; then
|
if ! curl -fsSL "$START_SCRIPT_URL" -o "$start_script_path"; then
|
||||||
|
|
@ -304,7 +289,7 @@ download_helper_scripts() {
|
||||||
|
|
||||||
start_management_containers() {
|
start_management_containers() {
|
||||||
echo -e "${YELLOW}#${RESET} Starting management containers using docker compose...\\n"
|
echo -e "${YELLOW}#${RESET} Starting management containers using docker compose...\\n"
|
||||||
if ! sudo docker compose -f "${nomad_dir}/docker-compose-management.yml" up -d; then
|
if ! sudo docker compose -f "${NOMAD_DIR}/docker-compose-management.yml" up -d; then
|
||||||
echo -e "${RED}#${RESET} Failed to start management containers. Please check the logs and try again."
|
echo -e "${RED}#${RESET} Failed to start management containers. Please check the logs and try again."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
@ -322,7 +307,7 @@ get_local_ip() {
|
||||||
success_message() {
|
success_message() {
|
||||||
echo -e "${GREEN}#${RESET} Project N.O.M.A.D installation completed successfully!\\n"
|
echo -e "${GREEN}#${RESET} Project N.O.M.A.D installation completed successfully!\\n"
|
||||||
echo -e "${GREEN}#${RESET} Installation files are located at /opt/project-nomad\\n\n"
|
echo -e "${GREEN}#${RESET} Installation files are located at /opt/project-nomad\\n\n"
|
||||||
echo -e "${GREEN}#${RESET} Project N.O.M.A.D's Command Center should automatically start whenever your device reboots. However, if you need to start it manually, you can always do so by running: ${WHITE_R}${nomad_dir}/start_nomad.sh${RESET}\\n"
|
echo -e "${GREEN}#${RESET} Project N.O.M.A.D's Command Center should automatically start whenever your device reboots. However, if you need to start it manually, you can always do so by running: ${WHITE_R}${NOMAD_DIR}/start_nomad.sh${RESET}\\n"
|
||||||
echo -e "${GREEN}#${RESET} You can now access the management interface at http://localhost:8080 or http://${local_ip_address}:8080\\n"
|
echo -e "${GREEN}#${RESET} You can now access the management interface at http://localhost:8080 or http://${local_ip_address}:8080\\n"
|
||||||
echo -e "${GREEN}#${RESET} Thank you for supporting Project N.O.M.A.D!\\n"
|
echo -e "${GREEN}#${RESET} Thank you for supporting Project N.O.M.A.D!\\n"
|
||||||
}
|
}
|
||||||
|
|
@ -343,7 +328,6 @@ check_is_debug_mode
|
||||||
get_install_confirmation
|
get_install_confirmation
|
||||||
accept_terms
|
accept_terms
|
||||||
ensure_docker_installed
|
ensure_docker_installed
|
||||||
#get_install_directory
|
|
||||||
create_nomad_directory
|
create_nomad_directory
|
||||||
download_wait_for_it_script
|
download_wait_for_it_script
|
||||||
download_entrypoint_script
|
download_entrypoint_script
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user