From f2c18f521686433ef793072bc1f9986e90f42c01 Mon Sep 17 00:00:00 2001 From: lekss361 Date: Tue, 15 Sep 2026 16:48:57 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9C=D0=B5=D1=82=D1=80=D0=B8=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BA=D0=BE=D1=80=D0=BF=D0=BE=D1=80=D0=B0=D1=82?= =?UTF-8?q?=D0=B8=D0=B2=D0=BD=D0=BE=D0=BC=20=D0=B0=D0=BA=D0=BA=D0=B0=D1=83?= =?UTF-8?q?=D0=BD=D1=82=D0=B5=20=D0=B8=20=D0=BF=D0=BE=D0=B4=D1=82=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D0=B6=D0=B4=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=20=D0=B2=20=D0=AF=D0=BD=D0=B4=D0=B5=D0=BA=D1=81.?= =?UTF-8?q?=D0=92=D0=B5=D0=B1=D0=BC=D0=B0=D1=81=D1=82=D0=B5=D1=80=D0=B5=20?= =?UTF-8?q?(#3530)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VQ8jqr4SFirX5tFLwdSrXh --- .forgejo/workflows/deploy-tradein.yml | 34 +++++++++++++++++---------- tradein-mvp/frontend/Dockerfile | 5 +++- 2 files changed, 26 insertions(+), 13 deletions(-) diff --git a/.forgejo/workflows/deploy-tradein.yml b/.forgejo/workflows/deploy-tradein.yml index 99fda74f..7b7457fd 100644 --- a/.forgejo/workflows/deploy-tradein.yml +++ b/.forgejo/workflows/deploy-tradein.yml @@ -511,14 +511,24 @@ jobs: # NEXT_PUBLIC_APP_VERSION/BUILD_SHA/BUILD_DATE — build-time (Next.js # инлайнит NEXT_PUBLIC_* в статику, runtime env их не подхватит, # см. frontend/Dockerfile комментарий у соответствующих ARG). - # NEXT_PUBLIC_YM_ID — счётчик Яндекс.Метрики публичного контура, - # заведён владельцем 15.09.2026. Литерал, а не secret: номер - # счётчика и так уходит в разметку каждой страницы, прятать нечего, - # а secret'ом его нельзя проверить глазами в диффе. - # NEXT_PUBLIC_GA_ID/YANDEX_VERIFICATION/GOOGLE_VERIFICATION — - # ПОКА ПУСТЫЕ: ресурс GA4 и права в поисковых консолях ещё не - # заведены. Пустая строка = соответствующий тег НЕ рендерится - # вообще (контракт фронта, см. тот же Dockerfile-комментарий). + # NEXT_PUBLIC_YM_ID — счётчик Яндекс.Метрики публичного контура. + # Живёт на корпоративном аккаунте info@meraocenka.ru, там же, где + # Вебмастер: счётчик и права на сайт на одном аккаунте связываются + # автоматически, на разных — только через письмо-подтверждение + # владельцу счётчика. Прежний номер 112563104 был заведён на личном + # аккаунте подрядчика и на сайт не попал ни разу, данных не потерял. + # NEXT_PUBLIC_YANDEX_VERIFICATION — токен подтверждения прав в + # Яндекс.Вебмастере, отдаётся мета-тегом (mera-public/layout.tsx). + # Токен привязан к аккаунту: у другого аккаунта он будет свой. + # Удалять его после подтверждения НЕЛЬЗЯ — Вебмастер перепроверяет + # права и снимает их, если тег исчез. + # Литералы, а не secret'ы: оба значения и так уходят в разметку + # каждой страницы, прятать нечего, а secret'ом их не проверить + # глазами в диффе. + # NEXT_PUBLIC_GA_ID/GOOGLE_VERIFICATION — ПОКА ПУСТЫЕ: ресурс GA4 и + # права в Search Console ещё не заведены. Пустая строка = + # соответствующий тег НЕ рендерится вообще (контракт фронта, см. + # тот же Dockerfile-комментарий). # ЛЮБОЕ из этих значений вписывать литералом СЮДА И в retry-блок # ниже — оба обязательны, иначе ретрай без кеша уедет без счётчика. # Требует пересборки образа: build-time bake, не runtime-правка. @@ -528,9 +538,9 @@ jobs: NEXT_PUBLIC_APP_VERSION=${{ needs.changes.outputs.app_version }} NEXT_PUBLIC_BUILD_SHA=${{ needs.changes.outputs.build_sha }} NEXT_PUBLIC_BUILD_DATE=${{ needs.changes.outputs.build_date }} - NEXT_PUBLIC_YM_ID=112563104 + NEXT_PUBLIC_YM_ID=112672927 NEXT_PUBLIC_GA_ID= - NEXT_PUBLIC_YANDEX_VERIFICATION= + NEXT_PUBLIC_YANDEX_VERIFICATION=82cf8932658461d1 NEXT_PUBLIC_GOOGLE_VERIFICATION= cache-from: type=registry,ref=${{ env.IMAGE_FRONTEND }}:buildcache cache-to: type=registry,ref=${{ env.IMAGE_FRONTEND }}:buildcache,mode=max @@ -555,9 +565,9 @@ jobs: NEXT_PUBLIC_APP_VERSION=${{ needs.changes.outputs.app_version }} NEXT_PUBLIC_BUILD_SHA=${{ needs.changes.outputs.build_sha }} NEXT_PUBLIC_BUILD_DATE=${{ needs.changes.outputs.build_date }} - NEXT_PUBLIC_YM_ID=112563104 + NEXT_PUBLIC_YM_ID=112672927 NEXT_PUBLIC_GA_ID= - NEXT_PUBLIC_YANDEX_VERIFICATION= + NEXT_PUBLIC_YANDEX_VERIFICATION=82cf8932658461d1 NEXT_PUBLIC_GOOGLE_VERIFICATION= cache-to: type=registry,ref=${{ env.IMAGE_FRONTEND }}:buildcache,mode=max tags: | diff --git a/tradein-mvp/frontend/Dockerfile b/tradein-mvp/frontend/Dockerfile index 9695f441..2e56fcb2 100644 --- a/tradein-mvp/frontend/Dockerfile +++ b/tradein-mvp/frontend/Dockerfile @@ -40,7 +40,10 @@ ENV NEXT_PUBLIC_ENABLE_PREVIEW=$NEXT_PUBLIC_ENABLE_PREVIEW # соответствующий script/meta отсутствует в разметке) — так решает # frontend-код, потребляющий эти env (Dockerfile сам их не читает). # -# СЧЁТЧИКОВ ПОКА НЕТ — владелец заведёт их позже. Когда появятся номера: +# ЗАВЕДЕНЫ (15.09.2026, аккаунт info@meraocenka.ru): NEXT_PUBLIC_YM_ID — +# счётчик Метрики, NEXT_PUBLIC_YANDEX_VERIFICATION — токен подтверждения прав +# в Вебмастере. Пустыми остаются GA_ID и GOOGLE_VERIFICATION. +# Когда появятся остальные номера — порядок тот же: # 1) вписать литералом в build-args джоба build-frontend # (.forgejo/workflows/deploy-tradein.yml) — В ОБОИХ блоках, основном # И retry-без-кеша, иначе ретрай молча уедет без счётчика;