diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index 2457294..b436918 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -83,44 +83,43 @@ jobs: TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_DEPLOY_BOT_TOKEN }} TELEGRAM_CHAT: ${{ secrets.TELEGRAM_DEPLOY_CHAT_ID }} PROXY_URL: ${{ secrets.PROXY_URL }} - SUCCESS_MSG: |- - ✅ Деплой успешен! - - Сервер применил релиз: ${{ env.CLEAN_REF_NAME }} - FAILURE_MSG: |- + SUCCESS_MESSAGE: |- + ✅ Успешный делой! + Релиз: ${{ gitea.ref_name }} + FAILURE_MESSAGE: |- ❌ Ошибка деплоя! - - Сервер не применил релиз: ${{ env.CLEAN_REF_NAME }} + Релиз: ${{ gitea.ref_name }} run: | sshpass -e ssh -p 22 "$SSH_USERNAME@$SSH_HOST" bash -s << EOT set -e cd "$DEPLOY_DIRECTORY" + DEPLOY_LOG_FILE="/tmp/deploy-${REF_NAME}.log" + nohup bash -c ' - sleep 10 + sleep 5 - if docker compose --dry-run -f "docker-compose-${REF_NAME}.yml" up -d --remove-orphans > /tmp/docker_deploy.log 2>&1; then + if docker compose --dry-run -f "docker-compose-${REF_NAME}.yml" up -d --remove-orphans > \${DEPLOY_LOG_FILE} 2>&1; then curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \ --proxy "${PROXY_URL}" \ -d "chat_id=${TELEGRAM_CHAT}" \ -d "parse_mode=HTML" \ - --data-urlencode "text=${SUCCESS_MSG}" > /dev/null + --data-urlencode "text=${SUCCESS_MESSAGE}" > /dev/null else curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \ --proxy "${PROXY_URL}" \ -d "chat_id=${TELEGRAM_CHAT}" \ -d "parse_mode=HTML" \ - --data-urlencode "text=${FAILURE_MSG}" > /dev/null + --data-urlencode "text=${FAILURE_MESSAGE}" > /dev/null curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendDocument" \ --proxy "${PROXY_URL}" \ -F "chat_id=${TELEGRAM_CHAT}" \ - -F "document=@/tmp/docker_deploy.log" \ - -F "caption=logs" > /dev/null + -F "document=@\${DEPLOY_LOG_FILE}" > /dev/null fi - rm -f /tmp/docker_deploy.log + rm -f \${DEPLOY_LOG_FILE} ' > /dev/null 2>&1 & EOT - echo "New containers will be started after 10 seconds" \ No newline at end of file + echo "New containers will be started after 5 seconds" \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 88805ba..0682072 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,7 +7,7 @@ services: ports: - '80:80' - '443:443' - volumes: + volumes: - ./data/nginx-proxy-manager/data:/data - ./data/nginx-proxy-manager/letsencrypt:/etc/letsencrypt healthcheck: