From 6aab887b506ac66e0db8a98fe2f01524c01860d2 Mon Sep 17 00:00:00 2001 From: Dmitry Date: Sun, 16 Nov 2025 17:10:33 +0300 Subject: [PATCH] feat: add manual workflow dispatch support for UI deployment - Add workflow_dispatch to ci-main.yml for manual full pipeline runs - Add workflow_dispatch to cd-deploy.yml with component selection - Update documentation with UI deployment instructions - Allow backend and web deployment via Forgejo UI Actions tab --- check_deploy_ready.sh | 1 + tools/ci/README.md | 20 ++++++++++++++++++-- tools/ci/cd-deploy.yml | 16 ++++++++++++++-- tools/ci/ci-main.yml | 1 + 4 files changed, 34 insertions(+), 4 deletions(-) create mode 120000 check_deploy_ready.sh diff --git a/check_deploy_ready.sh b/check_deploy_ready.sh new file mode 120000 index 0000000..53258a5 --- /dev/null +++ b/check_deploy_ready.sh @@ -0,0 +1 @@ +tools/scripts/check_deploy_ready.sh \ No newline at end of file diff --git a/tools/ci/README.md b/tools/ci/README.md index a1f86c2..a57e2f1 100644 --- a/tools/ci/README.md +++ b/tools/ci/README.md @@ -21,7 +21,10 @@ Forgejo Actions workflows для автоматической сборки, те 4. **Запустите деплой:** ```bash + # Автоматический деплой git push origin main + + # ИЛИ ручной запуск через UI Forgejo ``` ## Workflows @@ -59,12 +62,25 @@ DEPLOY_SSH_PRIVATE_KEY # SSH ключ для доступа к серверу 1 ## Ручной запуск -### Backend деплой +### Через UI Forgejo + +1. Перейдите в репозиторий на Forgejo +2. Откройте вкладку **Actions** +3. Выберите workflow: + - **"Main CI Pipeline"** - полный цикл (сборка + деплой) + - **"Deploy Applications"** - только деплой (без пересборки) +4. Нажмите **"Run workflow"** (кнопка с плей-иконкой) +5. Выберите компонент для деплоя (для Deploy Applications) +6. Нажмите **"Run workflow"** + +### Через командную строку + +#### Backend деплой ```bash ../../deploy/backend-build_app.sh ``` -### Web app деплой +#### Web app деплой ```bash ../../deploy/web-app/deploy.sh ``` diff --git a/tools/ci/cd-deploy.yml b/tools/ci/cd-deploy.yml index fecb1e7..70f494b 100644 --- a/tools/ci/cd-deploy.yml +++ b/tools/ci/cd-deploy.yml @@ -3,10 +3,22 @@ name: Deploy Applications on: push: branches: [ main, master ] + workflow_dispatch: + inputs: + component: + description: 'Component to deploy' + required: false + default: 'all' + type: choice + options: + - all + - backend + - web + - mobile jobs: deploy-backend: - if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' + if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' || github.event_name == 'workflow_dispatch' runs-on: ubuntu-latest steps: @@ -30,7 +42,7 @@ jobs: ./backend-build_app.sh deploy-web: - if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' + if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' || github.event_name == 'workflow_dispatch' runs-on: ubuntu-latest steps: diff --git a/tools/ci/ci-main.yml b/tools/ci/ci-main.yml index dcd1d81..b4142e5 100644 --- a/tools/ci/ci-main.yml +++ b/tools/ci/ci-main.yml @@ -5,6 +5,7 @@ on: branches: [ main, master ] pull_request: branches: [ main, master ] + workflow_dispatch: jobs: code-quality: