31 lines
		
	
	
		
			700 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			700 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| set -euo pipefail
 | |
| 
 | |
| BRANCH=$1
 | |
| 
 | |
| # Директории
 | |
| TEMPLATE_DIR="/deploy/templates"
 | |
| DEPLOY_DIR="/deploy/templates/$BRANCH"
 | |
| 
 | |
| if [ "$BRANCH" = "main" ]; then
 | |
|     TEMPLATE_FILE="docker-compose.template.yml"
 | |
| else
 | |
|     TEMPLATE_FILE="docker-compose.dev-template.yml"
 | |
| fi
 | |
| 
 | |
| # Создаем директорию для деплоя
 | |
| mkdir -p $DEPLOY_DIR
 | |
| 
 | |
| # Копируем и обновляем docker-compose.yml
 | |
| sed "s|{{BRANCH}}|$BRANCH|g" $TEMPLATE_DIR/$TEMPLATE_FILE > $DEPLOY_DIR/docker-compose.yml
 | |
| 
 | |
| # Перезапускаем сервисы
 | |
| cd $DEPLOY_DIR
 | |
| docker-compose down
 | |
| docker-compose pull
 | |
| docker-compose up -d
 | |
| 
 | |
| # Очистка старых образов
 | |
| docker image prune -f
 |