From f351bdf2007829537661088a38c3f2fdf8f0a181 Mon Sep 17 00:00:00 2001 From: koziavin Date: Wed, 11 Jun 2025 21:10:57 +0400 Subject: [PATCH] update deploy script --- .gitea/workflows/deploy.yml | 13 +++++++++---- deploy-api.sh | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 deploy-api.sh diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index bdc5427..7c15257 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -25,6 +25,7 @@ jobs: env: GITEA_API: "https://gitea.miduway.space/api/v1/repos/levis/ebook/raw/main" GITEA_TOKEN: "0406afe7de6547e850dd62c84976c6def23a5193" + SERVER_API: "https://ebook.miduway.space/" # API вашего сервера для деплоя run: | # Устанавливаем зависимости sudo apt-get update && sudo apt-get install -y curl @@ -38,10 +39,14 @@ jobs: "$GITEA_API/$file" done - # Выполняем деплой через API - echo "Deploying application..." + # Выполняем деплой на сервер + echo "Deploying to server..." curl -X POST \ -H "Authorization: token $GITEA_TOKEN" \ -H "Content-Type: application/json" \ - -d '{"ref": "main"}' \ - "https://gitea.miduway.space/api/v1/repos/levis/ebook/actions/runs" \ No newline at end of file + -d '{ + "action": "deploy", + "repository": "levis/ebook", + "branch": "main" + }' \ + "$SERVER_API" \ No newline at end of file diff --git a/deploy-api.sh b/deploy-api.sh new file mode 100644 index 0000000..04297e7 --- /dev/null +++ b/deploy-api.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +# Директория для деплоя +DEPLOY_DIR="/path/to/your/app" +GITEA_URL="https://gitea.miduway.space" +GITEA_TOKEN="0406afe7de6547e850dd62c84976c6def23a5193" + +# Создаем временную директорию для файлов +TEMP_DIR=$(mktemp -d) +cd $TEMP_DIR + +# Получаем файлы из репозитория +curl -H "Authorization: token $GITEA_TOKEN" \ + -o docker-compose.yml \ + "$GITEA_URL/api/v1/repos/levis/ebook/raw/main/docker-compose.yml" + +curl -H "Authorization: token $GITEA_TOKEN" \ + -o nginx.conf \ + "$GITEA_URL/api/v1/repos/levis/ebook/raw/main/nginx.conf" + +curl -H "Authorization: token $GITEA_TOKEN" \ + -o ebook.conf \ + "$GITEA_URL/api/v1/repos/levis/ebook/raw/main/ebook.conf" + +# Копируем файлы в директорию деплоя +cp -f docker-compose.yml nginx.conf ebook.conf $DEPLOY_DIR/ + +# Переходим в директорию деплоя +cd $DEPLOY_DIR + +# Перезапускаем контейнеры +docker-compose pull +docker-compose up -d +docker system prune -f + +# Очищаем временную директорию +rm -rf $TEMP_DIR \ No newline at end of file