From 1a420b428f333034e75d8980cf2e59e015466adc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=97=D0=B8=D0=BC=D0=B8=D0=BD?= Date: Mon, 8 Jun 2026 10:59:15 +0000 Subject: [PATCH] =?UTF-8?q?fix(ci):=20release=20=D0=BD=D0=B5=20=D0=B7?= =?UTF-8?q?=D0=B0=D0=B2=D0=B8=D1=81=D0=B8=D1=82=20=D0=BE=D1=82=20deploy-st?= =?UTF-8?q?aging=20=E2=80=94=20unblock=20tag=20chain?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a8ecb85..9b14acf 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -625,9 +625,22 @@ release: # рассинхронизирован с filesystem (claims old version, only newer files exist). # v3.20 mirror consistent, apk add работает. См. ci/apk-update-fix история. image: repo.nstart.cloud/library/node:22-alpine3.20 + # Раньше `needs: trigger-deploy-staging` блокировал release когда staging + # deploy hang'ался (helm pending-upgrade cascade — каждый retry оставлял + # stuck revision, helm wait timeout 15m → rollback → next pipeline стартует + # с new pending). Release job skipped → tag не создаётся → prod не катит. + # MR !290 / !291 / !292 / !294 застряли в "merged but no release". + # + # Убираем dep: release runs независимо от staging health. Tag создаётся, + # tag pipeline → retag images → infra auto-bump → deploy-prod катит + # через MR !95 fallback (image.tag из values.yaml). + # + # Trade-off: staging может оставаться на старой версии если deploy hang'ает. + # Это OK — staging это testing env, prod важнее. Manual staging recovery + # через helm rollback + delete pending secrets когда нужно. needs: - - job: trigger-deploy-staging - artifacts: false + - job: resolve-tag + artifacts: true rules: - if: '$CI_COMMIT_BRANCH == "main"' when: on_success