Initial commit.
This commit is contained in:
Executable
+137
@@ -0,0 +1,137 @@
|
||||
#!/usr/bin/env bash
|
||||
# ==============================================================================
|
||||
# Radius CLI Engine - Modular Git-Driven Deployment Manager
|
||||
# Developed by: Codelxior (https://github.com)
|
||||
# License: MIT
|
||||
# ==============================================================================
|
||||
|
||||
set -e
|
||||
|
||||
# Terminal Style and Color Configurations
|
||||
BOLD='\e[1m' # Bold text style
|
||||
DIM='\e[2m' # Dim/Faint text style
|
||||
UNDERLINE='\e[4m' # Underlined text style
|
||||
BLINK='\e[5m' # Blinking text style
|
||||
|
||||
# Dark / Standard Colors (Low-Intensity)
|
||||
DARK_RED='\e[31m' # Dark Red
|
||||
DARK_GREEN='\e[32m' # Dark Green
|
||||
DARK_YELLOW='\e[33m' # Dark Yellow
|
||||
DARK_BLUE='\e[34m' # Dark Blue
|
||||
DARK_MAGENTA='\e[35m' # Dark Magenta
|
||||
DARK_CYAN='\e[36m' # Dark Cyan
|
||||
DARK_WHITE='\e[37m' # Light Grey
|
||||
|
||||
# Light / Bright Colors (High-Intensity)
|
||||
LIGHT_RED='\e[91m' # Bright Red (Errors)
|
||||
LIGHT_GREEN='\e[92m' # Bright Green (Success tags)
|
||||
LIGHT_YELLOW='\e[93m' # Bright Yellow (Warnings)
|
||||
LIGHT_BLUE='\e[94m' # Bright Blue (System info)
|
||||
LIGHT_MAGENTA='\e[95m' # Bright Magenta
|
||||
LIGHT_CYAN='\e[96m' # Bright Cyan (Data streams)
|
||||
LIGHT_WHITE='\e[97m' # Absolute White
|
||||
|
||||
# END Colors
|
||||
NC='\e[0m'
|
||||
|
||||
|
||||
# Set absolute script path here.
|
||||
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
|
||||
# Absolute path to home directory.
|
||||
DIR_HOME="$(readlink -f "${SCRIPT_DIR}/..")"
|
||||
# Absolute path to .config directory
|
||||
DIR_CONFIG="${DIR_HOME}/config"
|
||||
# Absolute path to library directory
|
||||
DIR_LIB="${DIR_HOME}/include"
|
||||
# Absolute path to logs directory
|
||||
DIR_LOG="${DIR_HOME}/logs"
|
||||
|
||||
# File log.
|
||||
FILE_LOG="${DIR_LOG}/$(date '+%d%m%Y').log"
|
||||
|
||||
|
||||
[ -f "${DIR_CONFIG}/main" ] && source "${DIR_CONFIG}/main" || {
|
||||
echo -e "Fatal Error: ${LIGHT_RED}Failed to locate main configuration file. ${DIR_CONFIG}/main${NC}"; exit 1;
|
||||
}
|
||||
|
||||
[ -f "${DIR_LIB}/helper.inc" ] && source "${DIR_LIB}/helper.inc" || {
|
||||
echo -e "Fatal Error: ${LIGHT_RED}Failed to locate library file. ${DIR_LIB}/helper.inc${NC}"; exit 1;
|
||||
}
|
||||
|
||||
[ -f "${DIR_LIB}/function.inc" ] && source "${DIR_LIB}/function.inc" || {
|
||||
echo -e "Fatal Error: ${LIGHT_RED}Failed to locate library file. ${DIR_LIB}/function.inc\e[0m"; exit 1; }
|
||||
|
||||
|
||||
[ ! -d "${DIR_LOG}" ] && { mkdir "${DIR_LOG}"; chmod 775 "${DIR_LOG}"; }
|
||||
|
||||
[ ! -f "${FILE_LOG}" ] && { touch "${FILE_LOG}"; chmod 664 "${FILE_LOG}"; function_log "info: ${DARK_GREEN}New log file created.${NC}"; }
|
||||
|
||||
|
||||
|
||||
MODE_QUIET=false
|
||||
ARGS_CLEAN=()
|
||||
|
||||
for arg in "$@"; do
|
||||
|
||||
ARG_LOWER=$(function_strtolower "$arg")
|
||||
|
||||
if [ "$ARG_LOWER" == "--quiet" ] || [ "$ARG_LOWER" == "-q" ]; then
|
||||
|
||||
MODE_QUIET=true
|
||||
|
||||
else
|
||||
|
||||
ARGS_CLEAN+=("$arg")
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
set -- "${ARGS_CLEAN[@]}"
|
||||
|
||||
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
|
||||
function_printhelp
|
||||
|
||||
exit 0
|
||||
|
||||
fi
|
||||
|
||||
PHP_BIN=""
|
||||
COMPOSER_BIN=""
|
||||
NODE_BIN=""
|
||||
NPM_BIN=""
|
||||
|
||||
function_app_init
|
||||
|
||||
case "$1" in
|
||||
|
||||
update)
|
||||
|
||||
function_app_update
|
||||
;;
|
||||
|
||||
list-branch)
|
||||
|
||||
function_app_list_branches
|
||||
;;
|
||||
|
||||
list-release)
|
||||
|
||||
function_app_list_release
|
||||
;;
|
||||
|
||||
--)
|
||||
|
||||
shift;
|
||||
;;
|
||||
|
||||
*)
|
||||
|
||||
echo -e "${LIGHT_RED}Unknown operations command: $1${NC}"
|
||||
function_printhelp
|
||||
exit 1
|
||||
;;
|
||||
|
||||
esac
|
||||
Reference in New Issue
Block a user