| 1 |
82ca347 |
Dawsh |
2y ago |
#!/usr/bin/env bash |
| 2 |
82ca347 |
Dawsh |
2y ago |
set -e |
| 3 |
82ca347 |
Dawsh |
2y ago |
|
| 4 |
82ca347 |
Dawsh |
2y ago |
APP_NAME="marzneshin" |
| 5 |
af7254f |
Dawsh |
2y ago |
NODE_NAME="marznode" |
| 6 |
82ca347 |
Dawsh |
2y ago |
CONFIG_DIR="/etc/opt/$APP_NAME" |
| 7 |
82ca347 |
Dawsh |
2y ago |
DATA_DIR="/var/lib/$APP_NAME" |
| 8 |
af7254f |
Dawsh |
2y ago |
NODE_DATA_DIR="/var/lib/$NODE_NAME" |
| 9 |
82ca347 |
Dawsh |
2y ago |
COMPOSE_FILE="$CONFIG_DIR/docker-compose.yml" |
| 10 |
82ca347 |
Dawsh |
2y ago |
|
| 11 |
82ca347 |
Dawsh |
2y ago |
|
| 12 |
82ca347 |
Dawsh |
2y ago |
colorized_echo() { |
| 13 |
82ca347 |
Dawsh |
2y ago |
local color=$1 |
| 14 |
82ca347 |
Dawsh |
2y ago |
local text=$2 |
| 15 |
82ca347 |
Dawsh |
2y ago |
|
| 16 |
82ca347 |
Dawsh |
2y ago |
case $color in |
| 17 |
82ca347 |
Dawsh |
2y ago |
"red") |
| 18 |
82ca347 |
Dawsh |
2y ago |
printf "\e[91m${text}\e[0m\n";; |
| 19 |
82ca347 |
Dawsh |
2y ago |
"green") |
| 20 |
82ca347 |
Dawsh |
2y ago |
printf "\e[92m${text}\e[0m\n";; |
| 21 |
82ca347 |
Dawsh |
2y ago |
"yellow") |
| 22 |
82ca347 |
Dawsh |
2y ago |
printf "\e[93m${text}\e[0m\n";; |
| 23 |
82ca347 |
Dawsh |
2y ago |
"blue") |
| 24 |
82ca347 |
Dawsh |
2y ago |
printf "\e[94m${text}\e[0m\n";; |
| 25 |
82ca347 |
Dawsh |
2y ago |
"magenta") |
| 26 |
82ca347 |
Dawsh |
2y ago |
printf "\e[95m${text}\e[0m\n";; |
| 27 |
82ca347 |
Dawsh |
2y ago |
"cyan") |
| 28 |
82ca347 |
Dawsh |
2y ago |
printf "\e[96m${text}\e[0m\n";; |
| 29 |
82ca347 |
Dawsh |
2y ago |
*) |
| 30 |
82ca347 |
Dawsh |
2y ago |
echo "${text}" |
| 31 |
82ca347 |
Dawsh |
2y ago |
;; |
| 32 |
82ca347 |
Dawsh |
2y ago |
esac |
| 33 |
82ca347 |
Dawsh |
2y ago |
} |
| 34 |
82ca347 |
Dawsh |
2y ago |
|
| 35 |
82ca347 |
Dawsh |
2y ago |
check_running_as_root() { |
| 36 |
82ca347 |
Dawsh |
2y ago |
if [ "$(id -u)" != "0" ]; then |
| 37 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "This command must be run as root." |
| 38 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 39 |
82ca347 |
Dawsh |
2y ago |
fi |
| 40 |
82ca347 |
Dawsh |
2y ago |
} |
| 41 |
82ca347 |
Dawsh |
2y ago |
|
| 42 |
82ca347 |
Dawsh |
2y ago |
detect_os() { |
| 43 |
82ca347 |
Dawsh |
2y ago |
# Detect the operating system |
| 44 |
82ca347 |
Dawsh |
2y ago |
if [ -f /etc/lsb-release ]; then |
| 45 |
82ca347 |
Dawsh |
2y ago |
OS=$(lsb_release -si) |
| 46 |
82ca347 |
Dawsh |
2y ago |
elif [ -f /etc/os-release ]; then |
| 47 |
82ca347 |
Dawsh |
2y ago |
OS=$(awk -F= '/^NAME/{print $2}' /etc/os-release | tr -d '"') |
| 48 |
82ca347 |
Dawsh |
2y ago |
elif [ -f /etc/redhat-release ]; then |
| 49 |
82ca347 |
Dawsh |
2y ago |
OS=$(cat /etc/redhat-release | awk '{print $1}') |
| 50 |
82ca347 |
Dawsh |
2y ago |
elif [ -f /etc/arch-release ]; then |
| 51 |
82ca347 |
Dawsh |
2y ago |
OS="Arch" |
| 52 |
82ca347 |
Dawsh |
2y ago |
else |
| 53 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Unsupported operating system" |
| 54 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 55 |
82ca347 |
Dawsh |
2y ago |
fi |
| 56 |
82ca347 |
Dawsh |
2y ago |
} |
| 57 |
82ca347 |
Dawsh |
2y ago |
|
| 58 |
82ca347 |
Dawsh |
2y ago |
detect_and_update_package_manager() { |
| 59 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Updating package manager" |
| 60 |
82ca347 |
Dawsh |
2y ago |
if [[ "$OS" == "Ubuntu"* ]] || [[ "$OS" == "Debian"* ]]; then |
| 61 |
82ca347 |
Dawsh |
2y ago |
PKG_MANAGER="apt-get" |
| 62 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER update |
| 63 |
82ca347 |
Dawsh |
2y ago |
elif [[ "$OS" == "CentOS"* ]] || [[ "$OS" == "AlmaLinux"* ]]; then |
| 64 |
82ca347 |
Dawsh |
2y ago |
PKG_MANAGER="yum" |
| 65 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER update -y |
| 66 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER install -y epel-release |
| 67 |
82ca347 |
Dawsh |
2y ago |
elif [ "$OS" == "Fedora"* ]; then |
| 68 |
82ca347 |
Dawsh |
2y ago |
PKG_MANAGER="dnf" |
| 69 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER update |
| 70 |
82ca347 |
Dawsh |
2y ago |
elif [ "$OS" == "Arch" ]; then |
| 71 |
82ca347 |
Dawsh |
2y ago |
PKG_MANAGER="pacman" |
| 72 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER -Sy |
| 73 |
82ca347 |
Dawsh |
2y ago |
else |
| 74 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Unsupported operating system" |
| 75 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 76 |
82ca347 |
Dawsh |
2y ago |
fi |
| 77 |
82ca347 |
Dawsh |
2y ago |
} |
| 78 |
82ca347 |
Dawsh |
2y ago |
|
| 79 |
82ca347 |
Dawsh |
2y ago |
detect_compose() { |
| 80 |
82ca347 |
Dawsh |
2y ago |
# Check if docker compose command exists |
| 81 |
82ca347 |
Dawsh |
2y ago |
if docker compose >/dev/null 2>&1; then |
| 82 |
82ca347 |
Dawsh |
2y ago |
COMPOSE='docker compose' |
| 83 |
82ca347 |
Dawsh |
2y ago |
elif docker-compose >/dev/null 2>&1; then |
| 84 |
82ca347 |
Dawsh |
2y ago |
COMPOSE='docker-compose' |
| 85 |
82ca347 |
Dawsh |
2y ago |
else |
| 86 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "docker compose not found" |
| 87 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 88 |
82ca347 |
Dawsh |
2y ago |
fi |
| 89 |
82ca347 |
Dawsh |
2y ago |
} |
| 90 |
82ca347 |
Dawsh |
2y ago |
|
| 91 |
82ca347 |
Dawsh |
2y ago |
install_package () { |
| 92 |
82ca347 |
Dawsh |
2y ago |
if [ -z $PKG_MANAGER ]; then |
| 93 |
82ca347 |
Dawsh |
2y ago |
detect_and_update_package_manager |
| 94 |
82ca347 |
Dawsh |
2y ago |
fi |
| 95 |
82ca347 |
Dawsh |
2y ago |
|
| 96 |
82ca347 |
Dawsh |
2y ago |
PACKAGE=$1 |
| 97 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Installing $PACKAGE" |
| 98 |
82ca347 |
Dawsh |
2y ago |
if [[ "$OS" == "Ubuntu"* ]] || [[ "$OS" == "Debian"* ]]; then |
| 99 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER -y install "$PACKAGE" |
| 100 |
82ca347 |
Dawsh |
2y ago |
elif [[ "$OS" == "CentOS"* ]] || [[ "$OS" == "AlmaLinux"* ]]; then |
| 101 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER install -y "$PACKAGE" |
| 102 |
82ca347 |
Dawsh |
2y ago |
elif [ "$OS" == "Fedora"* ]; then |
| 103 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER install -y "$PACKAGE" |
| 104 |
82ca347 |
Dawsh |
2y ago |
elif [ "$OS" == "Arch" ]; then |
| 105 |
82ca347 |
Dawsh |
2y ago |
$PKG_MANAGER -S --noconfirm "$PACKAGE" |
| 106 |
82ca347 |
Dawsh |
2y ago |
else |
| 107 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Unsupported operating system" |
| 108 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 109 |
82ca347 |
Dawsh |
2y ago |
fi |
| 110 |
82ca347 |
Dawsh |
2y ago |
} |
| 111 |
82ca347 |
Dawsh |
2y ago |
|
| 112 |
82ca347 |
Dawsh |
2y ago |
install_docker() { |
| 113 |
82ca347 |
Dawsh |
2y ago |
# Install Docker and Docker Compose using the official installation script |
| 114 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Installing Docker" |
| 115 |
82ca347 |
Dawsh |
2y ago |
curl -fsSL https://get.docker.com | sh |
| 116 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "Docker installed successfully" |
| 117 |
82ca347 |
Dawsh |
2y ago |
} |
| 118 |
82ca347 |
Dawsh |
2y ago |
|
| 119 |
82ca347 |
Dawsh |
2y ago |
install_marzneshin_script() { |
| 120 |
82ca347 |
Dawsh |
2y ago |
FETCH_REPO="khodedawsh/marzneshin" |
| 121 |
82ca347 |
Dawsh |
2y ago |
SCRIPT_URL="https://github.com/$FETCH_REPO/raw/master/script.sh" |
| 122 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Installing marzneshin script" |
| 123 |
82ca347 |
Dawsh |
2y ago |
curl -sSL $SCRIPT_URL | install -m 755 /dev/stdin /usr/local/bin/marzneshin |
| 124 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "marzneshin script installed successfully" |
| 125 |
82ca347 |
Dawsh |
2y ago |
} |
| 126 |
82ca347 |
Dawsh |
2y ago |
|
| 127 |
82ca347 |
Dawsh |
2y ago |
install_marzneshin() { |
| 128 |
82ca347 |
Dawsh |
2y ago |
# Fetch releases |
| 129 |
82ca347 |
Dawsh |
2y ago |
FILES_URL_PREFIX="https://raw.githubusercontent.com/khodedawsh/marzneshin/master" |
| 130 |
82ca347 |
Dawsh |
2y ago |
|
| 131 |
82ca347 |
Dawsh |
2y ago |
mkdir -p "$DATA_DIR" |
| 132 |
82ca347 |
Dawsh |
2y ago |
mkdir -p "$CONFIG_DIR" |
| 133 |
82ca347 |
Dawsh |
2y ago |
|
| 134 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Fetching compose file" |
| 135 |
82ca347 |
Dawsh |
2y ago |
curl -sL "$FILES_URL_PREFIX/docker-compose.yml" -o "$CONFIG_DIR/docker-compose.yml" |
| 136 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "File saved in $CONFIG_DIR/docker-compose.yml" |
| 137 |
82ca347 |
Dawsh |
2y ago |
|
| 138 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Fetching .env file" |
| 139 |
82ca347 |
Dawsh |
2y ago |
curl -sL "$FILES_URL_PREFIX/.env.example" -o "$CONFIG_DIR/.env" |
| 140 |
82ca347 |
Dawsh |
2y ago |
sed -i 's/^# \(SQLALCHEMY_DATABASE_URL = .*\)$/\1/' "$CONFIG_DIR/.env" |
| 141 |
82ca347 |
Dawsh |
2y ago |
sed -i 's~\(SQLALCHEMY_DATABASE_URL = \).*~\1"sqlite:///'$DATA_DIR'/db.sqlite3"~' "$CONFIG_DIR/.env" |
| 142 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "File saved in $CONFIG_DIR/.env" |
| 143 |
82ca347 |
Dawsh |
2y ago |
|
| 144 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "Marzneshin files downloaded successfully" |
| 145 |
82ca347 |
Dawsh |
2y ago |
} |
| 146 |
82ca347 |
Dawsh |
2y ago |
|
| 147 |
af7254f |
Dawsh |
2y ago |
install_marznode_xray_config() { |
| 148 |
186014a |
Dawsh |
2y ago |
mkdir -p "$NODE_DATA_DIR" |
| 149 |
bb3b933 |
Dawsh |
2y ago |
curl -sL "https://raw.githubusercontent.com/khodedawsh/marznode/master/xray_config.json" -o "$NODE_DATA_DIR/xray_config.json" |
| 150 |
af7254f |
Dawsh |
2y ago |
colorized_echo green "Sample xray config downloaded for marznode" |
| 151 |
af7254f |
Dawsh |
2y ago |
} |
| 152 |
82ca347 |
Dawsh |
2y ago |
|
| 153 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_script() { |
| 154 |
82ca347 |
Dawsh |
2y ago |
if [ -f "/usr/local/bin/marzneshin" ]; then |
| 155 |
82ca347 |
Dawsh |
2y ago |
colorized_echo yellow "Removing marzneshin script" |
| 156 |
82ca347 |
Dawsh |
2y ago |
rm "/usr/local/bin/marzneshin" |
| 157 |
82ca347 |
Dawsh |
2y ago |
fi |
| 158 |
82ca347 |
Dawsh |
2y ago |
} |
| 159 |
82ca347 |
Dawsh |
2y ago |
|
| 160 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin() { |
| 161 |
82ca347 |
Dawsh |
2y ago |
if [ -d "$CONFIG_DIR" ]; then |
| 162 |
82ca347 |
Dawsh |
2y ago |
colorized_echo yellow "Removing directory: $CONFIG_DIR" |
| 163 |
82ca347 |
Dawsh |
2y ago |
rm -r "$CONFIG_DIR" |
| 164 |
82ca347 |
Dawsh |
2y ago |
fi |
| 165 |
82ca347 |
Dawsh |
2y ago |
} |
| 166 |
82ca347 |
Dawsh |
2y ago |
|
| 167 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_docker_images() { |
| 168 |
82ca347 |
Dawsh |
2y ago |
images=$(docker images | grep marzneshin | awk '{print $3}') |
| 169 |
82ca347 |
Dawsh |
2y ago |
|
| 170 |
82ca347 |
Dawsh |
2y ago |
if [ -n "$images" ]; then |
| 171 |
82ca347 |
Dawsh |
2y ago |
colorized_echo yellow "Removing Docker images of Marzneshin" |
| 172 |
82ca347 |
Dawsh |
2y ago |
for image in $images; do |
| 173 |
82ca347 |
Dawsh |
2y ago |
if docker rmi "$image" >/dev/null 2>&1; then |
| 174 |
82ca347 |
Dawsh |
2y ago |
colorized_echo yellow "Image $image removed" |
| 175 |
82ca347 |
Dawsh |
2y ago |
fi |
| 176 |
82ca347 |
Dawsh |
2y ago |
done |
| 177 |
82ca347 |
Dawsh |
2y ago |
fi |
| 178 |
82ca347 |
Dawsh |
2y ago |
} |
| 179 |
82ca347 |
Dawsh |
2y ago |
|
| 180 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_data_files() { |
| 181 |
82ca347 |
Dawsh |
2y ago |
if [ -d "$DATA_DIR" ]; then |
| 182 |
82ca347 |
Dawsh |
2y ago |
colorized_echo yellow "Removing directory: $DATA_DIR" |
| 183 |
82ca347 |
Dawsh |
2y ago |
rm -r "$DATA_DIR" |
| 184 |
82ca347 |
Dawsh |
2y ago |
fi |
| 185 |
82ca347 |
Dawsh |
2y ago |
} |
| 186 |
82ca347 |
Dawsh |
2y ago |
|
| 187 |
af7254f |
Dawsh |
2y ago |
uninstall_marznode_data_files() { |
| 188 |
af7254f |
Dawsh |
2y ago |
if [ -d "$NODE_DATA_DIR" ]; then |
| 189 |
af7254f |
Dawsh |
2y ago |
colorized_echo yellow "Removing directory: $NODE_DATA_DIR" |
| 190 |
af7254f |
Dawsh |
2y ago |
rm -r "$NODE_DATA_DIR" |
| 191 |
af7254f |
Dawsh |
2y ago |
fi |
| 192 |
af7254f |
Dawsh |
2y ago |
} |
| 193 |
af7254f |
Dawsh |
2y ago |
|
| 194 |
af7254f |
Dawsh |
2y ago |
|
| 195 |
82ca347 |
Dawsh |
2y ago |
up_marzneshin() { |
| 196 |
82ca347 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" up -d --remove-orphans |
| 197 |
82ca347 |
Dawsh |
2y ago |
} |
| 198 |
82ca347 |
Dawsh |
2y ago |
|
| 199 |
82ca347 |
Dawsh |
2y ago |
down_marzneshin() { |
| 200 |
82ca347 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" down |
| 201 |
82ca347 |
Dawsh |
2y ago |
} |
| 202 |
82ca347 |
Dawsh |
2y ago |
|
| 203 |
82ca347 |
Dawsh |
2y ago |
show_marzneshin_logs() { |
| 204 |
82ca347 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" logs |
| 205 |
82ca347 |
Dawsh |
2y ago |
} |
| 206 |
82ca347 |
Dawsh |
2y ago |
|
| 207 |
82ca347 |
Dawsh |
2y ago |
follow_marzneshin_logs() { |
| 208 |
82ca347 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" logs -f |
| 209 |
82ca347 |
Dawsh |
2y ago |
} |
| 210 |
82ca347 |
Dawsh |
2y ago |
|
| 211 |
82ca347 |
Dawsh |
2y ago |
marzneshin_cli() { |
| 212 |
49562f8 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" exec -e CLI_PROG_NAME="marzneshin cli" marzneshin /app/marzneshin-cli.py "$@" |
| 213 |
82ca347 |
Dawsh |
2y ago |
} |
| 214 |
82ca347 |
Dawsh |
2y ago |
|
| 215 |
82ca347 |
Dawsh |
2y ago |
|
| 216 |
82ca347 |
Dawsh |
2y ago |
update_marzneshin_script() { |
| 217 |
82ca347 |
Dawsh |
2y ago |
FETCH_REPO="khodedawsh/marzneshin" |
| 218 |
420cd89 |
Dawsh |
2y ago |
SCRIPT_URL="https://github.com/$FETCH_REPO/raw/master/script.sh" |
| 219 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Updating marzneshin script" |
| 220 |
82ca347 |
Dawsh |
2y ago |
curl -sSL $SCRIPT_URL | install -m 755 /dev/stdin /usr/local/bin/marzneshin |
| 221 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "marzneshin script updated successfully" |
| 222 |
82ca347 |
Dawsh |
2y ago |
} |
| 223 |
82ca347 |
Dawsh |
2y ago |
|
| 224 |
82ca347 |
Dawsh |
2y ago |
update_marzneshin() { |
| 225 |
82ca347 |
Dawsh |
2y ago |
$COMPOSE -f $COMPOSE_FILE -p "$APP_NAME" pull |
| 226 |
82ca347 |
Dawsh |
2y ago |
} |
| 227 |
82ca347 |
Dawsh |
2y ago |
|
| 228 |
82ca347 |
Dawsh |
2y ago |
is_marzneshin_installed() { |
| 229 |
82ca347 |
Dawsh |
2y ago |
if [ -d $CONFIG_DIR ]; then |
| 230 |
82ca347 |
Dawsh |
2y ago |
return 0 |
| 231 |
82ca347 |
Dawsh |
2y ago |
else |
| 232 |
82ca347 |
Dawsh |
2y ago |
return 1 |
| 233 |
82ca347 |
Dawsh |
2y ago |
fi |
| 234 |
82ca347 |
Dawsh |
2y ago |
} |
| 235 |
82ca347 |
Dawsh |
2y ago |
|
| 236 |
82ca347 |
Dawsh |
2y ago |
is_marzneshin_up() { |
| 237 |
82ca347 |
Dawsh |
2y ago |
if [ -z "$($COMPOSE -f $COMPOSE_FILE ps -q -a)" ]; then |
| 238 |
82ca347 |
Dawsh |
2y ago |
return 1 |
| 239 |
82ca347 |
Dawsh |
2y ago |
else |
| 240 |
82ca347 |
Dawsh |
2y ago |
return 0 |
| 241 |
82ca347 |
Dawsh |
2y ago |
fi |
| 242 |
82ca347 |
Dawsh |
2y ago |
} |
| 243 |
82ca347 |
Dawsh |
2y ago |
|
| 244 |
82ca347 |
Dawsh |
2y ago |
install_command() { |
| 245 |
82ca347 |
Dawsh |
2y ago |
check_running_as_root |
| 246 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is already installed |
| 247 |
82ca347 |
Dawsh |
2y ago |
if is_marzneshin_installed; then |
| 248 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is already installed at $CONFIG_DIR" |
| 249 |
82ca347 |
Dawsh |
2y ago |
read -p "Do you want to override the previous installation? (y/n) " |
| 250 |
82ca347 |
Dawsh |
2y ago |
if [[ ! $REPLY =~ ^[Yy]$ ]]; then |
| 251 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Aborted installation" |
| 252 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 253 |
82ca347 |
Dawsh |
2y ago |
fi |
| 254 |
82ca347 |
Dawsh |
2y ago |
fi |
| 255 |
82ca347 |
Dawsh |
2y ago |
detect_os |
| 256 |
82ca347 |
Dawsh |
2y ago |
if ! command -v jq >/dev/null 2>&1; then |
| 257 |
82ca347 |
Dawsh |
2y ago |
install_package jq |
| 258 |
82ca347 |
Dawsh |
2y ago |
fi |
| 259 |
82ca347 |
Dawsh |
2y ago |
if ! command -v curl >/dev/null 2>&1; then |
| 260 |
82ca347 |
Dawsh |
2y ago |
install_package curl |
| 261 |
82ca347 |
Dawsh |
2y ago |
fi |
| 262 |
82ca347 |
Dawsh |
2y ago |
if ! command -v docker >/dev/null 2>&1; then |
| 263 |
82ca347 |
Dawsh |
2y ago |
install_docker |
| 264 |
82ca347 |
Dawsh |
2y ago |
fi |
| 265 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 266 |
82ca347 |
Dawsh |
2y ago |
install_marzneshin_script |
| 267 |
82ca347 |
Dawsh |
2y ago |
install_marzneshin |
| 268 |
af7254f |
Dawsh |
2y ago |
install_marznode_xray_config |
| 269 |
82ca347 |
Dawsh |
2y ago |
up_marzneshin |
| 270 |
82ca347 |
Dawsh |
2y ago |
follow_marzneshin_logs |
| 271 |
82ca347 |
Dawsh |
2y ago |
} |
| 272 |
82ca347 |
Dawsh |
2y ago |
|
| 273 |
82ca347 |
Dawsh |
2y ago |
uninstall_command() { |
| 274 |
82ca347 |
Dawsh |
2y ago |
check_running_as_root |
| 275 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 276 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 277 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin's not installed!" |
| 278 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 279 |
82ca347 |
Dawsh |
2y ago |
fi |
| 280 |
82ca347 |
Dawsh |
2y ago |
|
| 281 |
82ca347 |
Dawsh |
2y ago |
read -p "Do you really want to uninstall Marzneshin? (y/n) " |
| 282 |
82ca347 |
Dawsh |
2y ago |
if [[ ! $REPLY =~ ^[Yy]$ ]]; then |
| 283 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Aborted" |
| 284 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 285 |
82ca347 |
Dawsh |
2y ago |
fi |
| 286 |
82ca347 |
Dawsh |
2y ago |
|
| 287 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 288 |
82ca347 |
Dawsh |
2y ago |
if is_marzneshin_up; then |
| 289 |
82ca347 |
Dawsh |
2y ago |
down_marzneshin |
| 290 |
82ca347 |
Dawsh |
2y ago |
fi |
| 291 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_script |
| 292 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin |
| 293 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_docker_images |
| 294 |
82ca347 |
Dawsh |
2y ago |
|
| 295 |
af7254f |
Dawsh |
2y ago |
read -p "Do you want to remove marzneshin & marznode data files too ($NODE_DATA_DIR, $DATA_DIR)? (y/n) " |
| 296 |
82ca347 |
Dawsh |
2y ago |
if [[ ! $REPLY =~ ^[Yy]$ ]]; then |
| 297 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "Marzneshin uninstalled successfully" |
| 298 |
82ca347 |
Dawsh |
2y ago |
else |
| 299 |
82ca347 |
Dawsh |
2y ago |
uninstall_marzneshin_data_files |
| 300 |
af7254f |
Dawsh |
2y ago |
uninstall_marznode_data_files |
| 301 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "Marzneshin uninstalled successfully" |
| 302 |
82ca347 |
Dawsh |
2y ago |
fi |
| 303 |
82ca347 |
Dawsh |
2y ago |
} |
| 304 |
82ca347 |
Dawsh |
2y ago |
|
| 305 |
82ca347 |
Dawsh |
2y ago |
up_command() { |
| 306 |
82ca347 |
Dawsh |
2y ago |
help() { |
| 307 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Usage: $0 up [options]" |
| 308 |
82ca347 |
Dawsh |
2y ago |
echo "" |
| 309 |
82ca347 |
Dawsh |
2y ago |
echo "OPTIONS:" |
| 310 |
82ca347 |
Dawsh |
2y ago |
echo " -h, --help display this help message" |
| 311 |
82ca347 |
Dawsh |
2y ago |
echo " -n, --no-logs do not follow logs after starting" |
| 312 |
82ca347 |
Dawsh |
2y ago |
} |
| 313 |
82ca347 |
Dawsh |
2y ago |
|
| 314 |
82ca347 |
Dawsh |
2y ago |
local no_logs=false |
| 315 |
82ca347 |
Dawsh |
2y ago |
while [[ "$#" -gt 0 ]]; do |
| 316 |
82ca347 |
Dawsh |
2y ago |
case "$1" in |
| 317 |
82ca347 |
Dawsh |
2y ago |
-n|--no-logs) |
| 318 |
82ca347 |
Dawsh |
2y ago |
no_logs=true |
| 319 |
82ca347 |
Dawsh |
2y ago |
;; |
| 320 |
82ca347 |
Dawsh |
2y ago |
-h|--help) |
| 321 |
82ca347 |
Dawsh |
2y ago |
help |
| 322 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 323 |
82ca347 |
Dawsh |
2y ago |
;; |
| 324 |
82ca347 |
Dawsh |
2y ago |
*) |
| 325 |
82ca347 |
Dawsh |
2y ago |
echo "Error: Invalid option: $1" >&2 |
| 326 |
82ca347 |
Dawsh |
2y ago |
help |
| 327 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 328 |
82ca347 |
Dawsh |
2y ago |
;; |
| 329 |
82ca347 |
Dawsh |
2y ago |
esac |
| 330 |
82ca347 |
Dawsh |
2y ago |
shift |
| 331 |
82ca347 |
Dawsh |
2y ago |
done |
| 332 |
82ca347 |
Dawsh |
2y ago |
|
| 333 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 334 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 335 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not installed!" |
| 336 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 337 |
82ca347 |
Dawsh |
2y ago |
fi |
| 338 |
82ca347 |
Dawsh |
2y ago |
|
| 339 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 340 |
82ca347 |
Dawsh |
2y ago |
|
| 341 |
82ca347 |
Dawsh |
2y ago |
if is_marzneshin_up; then |
| 342 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is already up" |
| 343 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 344 |
82ca347 |
Dawsh |
2y ago |
fi |
| 345 |
82ca347 |
Dawsh |
2y ago |
|
| 346 |
82ca347 |
Dawsh |
2y ago |
up_marzneshin |
| 347 |
82ca347 |
Dawsh |
2y ago |
if [ "$no_logs" = false ]; then |
| 348 |
82ca347 |
Dawsh |
2y ago |
follow_marzneshin_logs |
| 349 |
82ca347 |
Dawsh |
2y ago |
fi |
| 350 |
82ca347 |
Dawsh |
2y ago |
} |
| 351 |
82ca347 |
Dawsh |
2y ago |
|
| 352 |
82ca347 |
Dawsh |
2y ago |
down_command() { |
| 353 |
82ca347 |
Dawsh |
2y ago |
|
| 354 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 355 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 356 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin's not installed!" |
| 357 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 358 |
82ca347 |
Dawsh |
2y ago |
fi |
| 359 |
82ca347 |
Dawsh |
2y ago |
|
| 360 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 361 |
82ca347 |
Dawsh |
2y ago |
|
| 362 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_up; then |
| 363 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin's already down" |
| 364 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 365 |
82ca347 |
Dawsh |
2y ago |
fi |
| 366 |
82ca347 |
Dawsh |
2y ago |
|
| 367 |
82ca347 |
Dawsh |
2y ago |
down_marzneshin |
| 368 |
82ca347 |
Dawsh |
2y ago |
} |
| 369 |
82ca347 |
Dawsh |
2y ago |
|
| 370 |
82ca347 |
Dawsh |
2y ago |
restart_command() { |
| 371 |
82ca347 |
Dawsh |
2y ago |
help() { |
| 372 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Usage: $0 restart [options]" |
| 373 |
82ca347 |
Dawsh |
2y ago |
echo |
| 374 |
82ca347 |
Dawsh |
2y ago |
echo "OPTIONS:" |
| 375 |
82ca347 |
Dawsh |
2y ago |
echo " -h, --help display this help message" |
| 376 |
82ca347 |
Dawsh |
2y ago |
echo " -n, --no-logs do not follow logs after starting" |
| 377 |
82ca347 |
Dawsh |
2y ago |
} |
| 378 |
82ca347 |
Dawsh |
2y ago |
|
| 379 |
82ca347 |
Dawsh |
2y ago |
local no_logs=false |
| 380 |
82ca347 |
Dawsh |
2y ago |
while [[ "$#" -gt 0 ]]; do |
| 381 |
82ca347 |
Dawsh |
2y ago |
case "$1" in |
| 382 |
82ca347 |
Dawsh |
2y ago |
-n|--no-logs) |
| 383 |
82ca347 |
Dawsh |
2y ago |
no_logs=true |
| 384 |
82ca347 |
Dawsh |
2y ago |
;; |
| 385 |
82ca347 |
Dawsh |
2y ago |
-h|--help) |
| 386 |
82ca347 |
Dawsh |
2y ago |
help |
| 387 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 388 |
82ca347 |
Dawsh |
2y ago |
;; |
| 389 |
82ca347 |
Dawsh |
2y ago |
*) |
| 390 |
82ca347 |
Dawsh |
2y ago |
echo "Error: Invalid option: $1" >&2 |
| 391 |
82ca347 |
Dawsh |
2y ago |
help |
| 392 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 393 |
82ca347 |
Dawsh |
2y ago |
;; |
| 394 |
82ca347 |
Dawsh |
2y ago |
esac |
| 395 |
82ca347 |
Dawsh |
2y ago |
shift |
| 396 |
82ca347 |
Dawsh |
2y ago |
done |
| 397 |
82ca347 |
Dawsh |
2y ago |
|
| 398 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 399 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 400 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin's not installed!" |
| 401 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 402 |
82ca347 |
Dawsh |
2y ago |
fi |
| 403 |
82ca347 |
Dawsh |
2y ago |
|
| 404 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 405 |
82ca347 |
Dawsh |
2y ago |
|
| 406 |
82ca347 |
Dawsh |
2y ago |
down_marzneshin |
| 407 |
82ca347 |
Dawsh |
2y ago |
up_marzneshin |
| 408 |
82ca347 |
Dawsh |
2y ago |
if [ "$no_logs" = false ]; then |
| 409 |
82ca347 |
Dawsh |
2y ago |
follow_marzneshin_logs |
| 410 |
82ca347 |
Dawsh |
2y ago |
fi |
| 411 |
82ca347 |
Dawsh |
2y ago |
} |
| 412 |
82ca347 |
Dawsh |
2y ago |
|
| 413 |
82ca347 |
Dawsh |
2y ago |
status_command() { |
| 414 |
82ca347 |
Dawsh |
2y ago |
|
| 415 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 416 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 417 |
82ca347 |
Dawsh |
2y ago |
echo -n "Status: " |
| 418 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Not Installed" |
| 419 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 420 |
82ca347 |
Dawsh |
2y ago |
fi |
| 421 |
82ca347 |
Dawsh |
2y ago |
|
| 422 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 423 |
82ca347 |
Dawsh |
2y ago |
|
| 424 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_up; then |
| 425 |
82ca347 |
Dawsh |
2y ago |
echo -n "Status: " |
| 426 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Down" |
| 427 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 428 |
82ca347 |
Dawsh |
2y ago |
fi |
| 429 |
82ca347 |
Dawsh |
2y ago |
|
| 430 |
82ca347 |
Dawsh |
2y ago |
echo -n "Status: " |
| 431 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green "Up" |
| 432 |
82ca347 |
Dawsh |
2y ago |
|
| 433 |
82ca347 |
Dawsh |
2y ago |
json=$($COMPOSE -f $COMPOSE_FILE ps -a --format=json) |
| 434 |
82ca347 |
Dawsh |
2y ago |
services=$(echo "$json" | jq -r 'if type == "array" then .[] else . end | .Service') |
| 435 |
82ca347 |
Dawsh |
2y ago |
states=$(echo "$json" | jq -r 'if type == "array" then .[] else . end | .State') |
| 436 |
82ca347 |
Dawsh |
2y ago |
# Print out the service names and statuses |
| 437 |
82ca347 |
Dawsh |
2y ago |
for i in $(seq 0 $(expr $(echo $services | wc -w) - 1)); do |
| 438 |
82ca347 |
Dawsh |
2y ago |
service=$(echo $services | cut -d' ' -f $(expr $i + 1)) |
| 439 |
82ca347 |
Dawsh |
2y ago |
state=$(echo $states | cut -d' ' -f $(expr $i + 1)) |
| 440 |
82ca347 |
Dawsh |
2y ago |
echo -n "- $service: " |
| 441 |
82ca347 |
Dawsh |
2y ago |
if [ "$state" == "running" ]; then |
| 442 |
82ca347 |
Dawsh |
2y ago |
colorized_echo green $state |
| 443 |
82ca347 |
Dawsh |
2y ago |
else |
| 444 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red $state |
| 445 |
82ca347 |
Dawsh |
2y ago |
fi |
| 446 |
82ca347 |
Dawsh |
2y ago |
done |
| 447 |
82ca347 |
Dawsh |
2y ago |
} |
| 448 |
82ca347 |
Dawsh |
2y ago |
|
| 449 |
82ca347 |
Dawsh |
2y ago |
logs_command() { |
| 450 |
82ca347 |
Dawsh |
2y ago |
help() { |
| 451 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Usage: marzneshin logs [options]" |
| 452 |
82ca347 |
Dawsh |
2y ago |
echo "" |
| 453 |
82ca347 |
Dawsh |
2y ago |
echo "OPTIONS:" |
| 454 |
82ca347 |
Dawsh |
2y ago |
echo " -h, --help display this help message" |
| 455 |
82ca347 |
Dawsh |
2y ago |
echo " -n, --no-follow do not show follow logs" |
| 456 |
82ca347 |
Dawsh |
2y ago |
} |
| 457 |
82ca347 |
Dawsh |
2y ago |
|
| 458 |
82ca347 |
Dawsh |
2y ago |
local no_follow=false |
| 459 |
82ca347 |
Dawsh |
2y ago |
while [[ "$#" -gt 0 ]]; do |
| 460 |
82ca347 |
Dawsh |
2y ago |
case "$1" in |
| 461 |
82ca347 |
Dawsh |
2y ago |
-n|--no-follow) |
| 462 |
82ca347 |
Dawsh |
2y ago |
no_follow=true |
| 463 |
82ca347 |
Dawsh |
2y ago |
;; |
| 464 |
82ca347 |
Dawsh |
2y ago |
-h|--help) |
| 465 |
82ca347 |
Dawsh |
2y ago |
help |
| 466 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 467 |
82ca347 |
Dawsh |
2y ago |
;; |
| 468 |
82ca347 |
Dawsh |
2y ago |
*) |
| 469 |
82ca347 |
Dawsh |
2y ago |
echo "Error: Invalid option: $1" >&2 |
| 470 |
82ca347 |
Dawsh |
2y ago |
help |
| 471 |
82ca347 |
Dawsh |
2y ago |
exit 0 |
| 472 |
82ca347 |
Dawsh |
2y ago |
;; |
| 473 |
82ca347 |
Dawsh |
2y ago |
esac |
| 474 |
82ca347 |
Dawsh |
2y ago |
shift |
| 475 |
82ca347 |
Dawsh |
2y ago |
done |
| 476 |
82ca347 |
Dawsh |
2y ago |
|
| 477 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 478 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 479 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not installed!" |
| 480 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 481 |
82ca347 |
Dawsh |
2y ago |
fi |
| 482 |
82ca347 |
Dawsh |
2y ago |
|
| 483 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 484 |
82ca347 |
Dawsh |
2y ago |
|
| 485 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_up; then |
| 486 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not up." |
| 487 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 488 |
82ca347 |
Dawsh |
2y ago |
fi |
| 489 |
82ca347 |
Dawsh |
2y ago |
|
| 490 |
82ca347 |
Dawsh |
2y ago |
if [ "$no_follow" = true ]; then |
| 491 |
82ca347 |
Dawsh |
2y ago |
show_marzneshin_logs |
| 492 |
82ca347 |
Dawsh |
2y ago |
else |
| 493 |
82ca347 |
Dawsh |
2y ago |
follow_marzneshin_logs |
| 494 |
82ca347 |
Dawsh |
2y ago |
fi |
| 495 |
82ca347 |
Dawsh |
2y ago |
} |
| 496 |
82ca347 |
Dawsh |
2y ago |
|
| 497 |
82ca347 |
Dawsh |
2y ago |
cli_command() { |
| 498 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 499 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 500 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not installed!" |
| 501 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 502 |
82ca347 |
Dawsh |
2y ago |
fi |
| 503 |
82ca347 |
Dawsh |
2y ago |
|
| 504 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 505 |
82ca347 |
Dawsh |
2y ago |
|
| 506 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_up; then |
| 507 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not up." |
| 508 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 509 |
82ca347 |
Dawsh |
2y ago |
fi |
| 510 |
82ca347 |
Dawsh |
2y ago |
|
| 511 |
82ca347 |
Dawsh |
2y ago |
marzneshin_cli "$@" |
| 512 |
82ca347 |
Dawsh |
2y ago |
} |
| 513 |
82ca347 |
Dawsh |
2y ago |
|
| 514 |
82ca347 |
Dawsh |
2y ago |
update_command() { |
| 515 |
82ca347 |
Dawsh |
2y ago |
check_running_as_root |
| 516 |
82ca347 |
Dawsh |
2y ago |
# Check if marzneshin is installed |
| 517 |
82ca347 |
Dawsh |
2y ago |
if ! is_marzneshin_installed; then |
| 518 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Marzneshin is not installed!" |
| 519 |
82ca347 |
Dawsh |
2y ago |
exit 1 |
| 520 |
82ca347 |
Dawsh |
2y ago |
fi |
| 521 |
82ca347 |
Dawsh |
2y ago |
|
| 522 |
82ca347 |
Dawsh |
2y ago |
detect_compose |
| 523 |
82ca347 |
Dawsh |
2y ago |
|
| 524 |
82ca347 |
Dawsh |
2y ago |
update_marzneshin_script |
| 525 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Pulling latest version" |
| 526 |
82ca347 |
Dawsh |
2y ago |
update_marzneshin |
| 527 |
82ca347 |
Dawsh |
2y ago |
|
| 528 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Restarting Marzneshin's services" |
| 529 |
82ca347 |
Dawsh |
2y ago |
down_marzneshin |
| 530 |
82ca347 |
Dawsh |
2y ago |
up_marzneshin |
| 531 |
82ca347 |
Dawsh |
2y ago |
|
| 532 |
82ca347 |
Dawsh |
2y ago |
colorized_echo blue "Marzneshin updated successfully" |
| 533 |
82ca347 |
Dawsh |
2y ago |
} |
| 534 |
82ca347 |
Dawsh |
2y ago |
|
| 535 |
82ca347 |
Dawsh |
2y ago |
|
| 536 |
82ca347 |
Dawsh |
2y ago |
usage() { |
| 537 |
82ca347 |
Dawsh |
2y ago |
colorized_echo red "Usage: $0 [command]" |
| 538 |
82ca347 |
Dawsh |
2y ago |
echo |
| 539 |
82ca347 |
Dawsh |
2y ago |
echo "Commands:" |
| 540 |
82ca347 |
Dawsh |
2y ago |
echo " up Start services" |
| 541 |
82ca347 |
Dawsh |
2y ago |
echo " down Stop services" |
| 542 |
82ca347 |
Dawsh |
2y ago |
echo " restart Restart services" |
| 543 |
82ca347 |
Dawsh |
2y ago |
echo " status Show status" |
| 544 |
82ca347 |
Dawsh |
2y ago |
echo " logs Show logs" |
| 545 |
82ca347 |
Dawsh |
2y ago |
echo " cli Marzneshin command-line interface" |
| 546 |
82ca347 |
Dawsh |
2y ago |
echo " install Install Marzneshin" |
| 547 |
82ca347 |
Dawsh |
2y ago |
echo " update Update latest version" |
| 548 |
82ca347 |
Dawsh |
2y ago |
echo " uninstall Uninstall Marzneshin" |
| 549 |
82ca347 |
Dawsh |
2y ago |
echo " install-script Install Marzneshin script" |
| 550 |
82ca347 |
Dawsh |
2y ago |
echo |
| 551 |
82ca347 |
Dawsh |
2y ago |
} |
| 552 |
82ca347 |
Dawsh |
2y ago |
|
| 553 |
82ca347 |
Dawsh |
2y ago |
case "$1" in |
| 554 |
82ca347 |
Dawsh |
2y ago |
up) |
| 555 |
82ca347 |
Dawsh |
2y ago |
shift; up_command "$@";; |
| 556 |
82ca347 |
Dawsh |
2y ago |
down) |
| 557 |
82ca347 |
Dawsh |
2y ago |
shift; down_command "$@";; |
| 558 |
82ca347 |
Dawsh |
2y ago |
restart) |
| 559 |
82ca347 |
Dawsh |
2y ago |
shift; restart_command "$@";; |
| 560 |
82ca347 |
Dawsh |
2y ago |
status) |
| 561 |
82ca347 |
Dawsh |
2y ago |
shift; status_command "$@";; |
| 562 |
82ca347 |
Dawsh |
2y ago |
logs) |
| 563 |
82ca347 |
Dawsh |
2y ago |
shift; logs_command "$@";; |
| 564 |
82ca347 |
Dawsh |
2y ago |
cli) |
| 565 |
82ca347 |
Dawsh |
2y ago |
shift; cli_command "$@";; |
| 566 |
82ca347 |
Dawsh |
2y ago |
install) |
| 567 |
82ca347 |
Dawsh |
2y ago |
shift; install_command "$@";; |
| 568 |
82ca347 |
Dawsh |
2y ago |
update) |
| 569 |
82ca347 |
Dawsh |
2y ago |
shift; update_command "$@";; |
| 570 |
82ca347 |
Dawsh |
2y ago |
uninstall) |
| 571 |
82ca347 |
Dawsh |
2y ago |
shift; uninstall_command "$@";; |
| 572 |
82ca347 |
Dawsh |
2y ago |
install-script) |
| 573 |
82ca347 |
Dawsh |
2y ago |
shift; install_marzneshin_script "$@";; |
| 574 |
82ca347 |
Dawsh |
2y ago |
*) |
| 575 |
82ca347 |
Dawsh |
2y ago |
usage;; |
| 576 |
82ca347 |
Dawsh |
2y ago |
esac |