/
Clown1331
/
Salt_GUI
Обзор
Документация
Войти
/
Clown1331
/
Salt_GUI
Код
Запросы
0
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
deploy/install.sh
55 строк
2 KB
Salt GUI
Add offline Flask wheels (vendor/), miniflask zero-dep fallback, offline installer, PORT env support
17 июл 2026, 09:25
Верифицирован
17 июл 2026, 09:25
d91778c
Код
Авторство
О чём код?
#!/bin/bash # Salt WebUI - installation helper # # This script installs the Salt WebUI on an already-running Salt master. # It does NOT hardcode any credentials. Set MASTER_HOST and SSH_USER below, # or pass them as environment variables. For authentication it relies on # SSH public keys (ssh-copy-id) - no passwords are stored in this script. # # Usage: # MASTER_HOST=10.0.0.10 SSH_USER=ubuntu ./install.sh # set -euo pipefail MASTER_HOST="${MASTER_HOST:-}" SSH_USER="${SSH_USER:-$(whoami)}" REMOTE_DIR="/opt/salt-webui" LOCAL_APP="webui/app.py" if [[ -z "$MASTER_HOST" ]]; then echo "ERROR: set MASTER_HOST, e.g. MASTER_HOST=10.0.0.10 $0" exit 1 fi if [[ ! -f "$LOCAL_APP" ]]; then echo "ERROR: $LOCAL_APP not found (run this script from the repo root)" exit 1 fi echo "==> Installing Salt WebUI on $SSH_USER@$MASTER_HOST" # 1. Create remote directory ssh "$SSH_USER@$MASTER_HOST" "sudo mkdir -p $REMOTE_DIR && sudo chown \$(whoami) $REMOTE_DIR" # 2. Upload app scp "$LOCAL_APP" "$SSH_USER@$MASTER_HOST:$REMOTE_DIR/app.py" # 3. Install Flask if missing ssh "$SSH_USER@$MASTER_HOST" "sudo pip3 install --quiet flask || sudo apt-get install -y python3-flask" # 4. Install systemd unit scp deploy/salt-webui.service "$SSH_USER@$MASTER_HOST:/tmp/salt-webui.service" ssh "$SSH_USER@$MASTER_HOST" "sudo mv /tmp/salt-webui.service /etc/systemd/system/ && sudo systemctl daemon-reload" # 5. Copy .env if present (user must create it from .env.example) if [[ -f .env ]]; then scp .env "$SSH_USER@$MASTER_HOST:$REMOTE_DIR/.env" ssh "$SSH_USER@$MASTER_HOST" "sudo chmod 600 $REMOTE_DIR/.env" else echo "WARNING: no .env found. Create $REMOTE_DIR/.env from .env.example before starting." fi # 6. Enable & start ssh "$SSH_USER@$MASTER_HOST" "sudo systemctl enable --now salt-webui" echo "==> Done. Open http://$MASTER_HOST:8080"