This commit is contained in:
+38
-3
@@ -11,18 +11,34 @@ GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# Функция для записи в лог-файл
|
||||
write_to_log() {
|
||||
local message="$1"
|
||||
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||
echo "[$timestamp] [PostDeploy] $message" >> "$LOG_FILE"
|
||||
}
|
||||
|
||||
# Функция для логирования
|
||||
log() {
|
||||
echo -e "${GREEN}[$(date '+%Y-%m-%d %H:%M:%S')] $1${NC}"
|
||||
local message="$1"
|
||||
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||
echo -e "${GREEN}[$timestamp] $1${NC}"
|
||||
write_to_log "$message"
|
||||
}
|
||||
|
||||
error() {
|
||||
echo -e "${RED}[$(date '+%Y-%m-%d %H:%M:%S')] ERROR: $1${NC}"
|
||||
local message="$1"
|
||||
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||
echo -e "${RED}[$timestamp] ERROR: $1${NC}"
|
||||
write_to_log "ERROR: $message"
|
||||
exit 1
|
||||
}
|
||||
|
||||
warning() {
|
||||
echo -e "${YELLOW}[$(date '+%Y-%m-%d %H:%M:%S')] WARNING: $1${NC}"
|
||||
local message="$1"
|
||||
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||
echo -e "${YELLOW}[$timestamp] WARNING: $1${NC}"
|
||||
write_to_log "WARNING: $message"
|
||||
}
|
||||
|
||||
# Определяем корневую директорию проекта
|
||||
@@ -35,8 +51,27 @@ SERVICES_DIR="$PROJECT_ROOT/services"
|
||||
SERVICES_BACKUP_DIR="$SERVICES_DIR/backups"
|
||||
SYSTEMD_DIR="/etc/systemd/system"
|
||||
|
||||
# Загружаем переменные окружения из .env файла
|
||||
if [ -f "$PROJECT_ROOT/.env" ]; then
|
||||
source "$PROJECT_ROOT/.env"
|
||||
fi
|
||||
|
||||
# Определяем лог-файл из переменной окружения или используем значение по умолчанию
|
||||
LOG_FILE="${LOG_FILE:-$PROJECT_ROOT/post-deploy.log}"
|
||||
|
||||
log "Начинаем post-deploy процесс для проекта: $PROJECT_ROOT"
|
||||
|
||||
# 0. Установка прав на исполнение для всех .sh файлов в основном каталоге проекта
|
||||
log "Устанавливаем права на исполнение для всех .sh файлов в проекте..."
|
||||
|
||||
# Находим все .sh файлы в основном каталоге проекта (не в подкаталогах)
|
||||
for sh_file in "$PROJECT_ROOT"/*.sh; do
|
||||
if [ -f "$sh_file" ]; then
|
||||
chmod +x "$sh_file"
|
||||
log "Установлены права на исполнение для: $(basename "$sh_file")"
|
||||
fi
|
||||
done
|
||||
|
||||
# 1. Проверка и создание виртуального окружения Python
|
||||
log "Проверяем наличие виртуального окружения Python..."
|
||||
|
||||
|
||||
Reference in New Issue
Block a user