Merge branch 'fix/ci-release-bookworm' into 'main'

fix(ci): release job на node:22-bookworm (без apk)

See merge request 2-6/2-6-4/terravault/ordinis!303
This commit is contained in:
Александр Зимин
2026-06-21 07:44:35 +00:00
+7 -8
View File
@@ -620,10 +620,12 @@ trigger-deploy-prod:
# `[skip release]` и semantic-release пропустит этот commit (см. parserOpts).
release:
stage: release
# Pinned к alpine3.20 (не latest) — Nexus mirror APKINDEX для v3.23
# рассинхронизирован с filesystem (claims old version, only newer files exist).
# v3.20 mirror consistent, apk add работает. См. ci/apk-update-fix история.
image: repo.nstart.cloud/dockerhub/library/node:22-alpine3.20
# Debian-based node:22-bookworm — git, ca-certificates, bash уже встроены,
# никакого apk/apt install не нужно. Раньше использовали node:22-alpine3.20
# + apk add git ca-certificates через `repo.nstart.cloud/repository/alpine/...`,
# но этот alpine mirror в Nexus отдаёт IO ERROR (см. pipeline 14938 release-job).
# ~1GB vs 200MB alpine, но release запускается раз в релиз — overhead OK.
image: repo.nstart.cloud/dockerhub/library/node:22-bookworm
# Раньше `needs: trigger-deploy-staging` блокировал release когда staging
# deploy hang'ался (helm pending-upgrade cascade — каждый retry оставлял
# stuck revision, helm wait timeout 15m → rollback → next pipeline стартует
@@ -667,10 +669,7 @@ release:
echo "═══════════════════════════════════════════════════════════════"
exit 0
fi
# Internal Alpine mirror — см. commit-msg-lint выше для контекста.
- sed -i 's|https://dl-cdn.alpinelinux.org/alpine|https://repo.nstart.cloud/repository/alpine|g' /etc/apk/repositories
- apk update
- apk add --no-cache git ca-certificates
# git + ca-certificates уже в node:22-bookworm image — apt install не нужен.
# Configure git remote с токеном для push. CI default remote — HTTPS с
# CI_JOB_TOKEN scope, который НЕ может push'ить tags/commits. Переопределяем
# на Project Access Token (GITLAB_TOKEN).