Files
AWatch-rus/docs/registry/BUILD_RUNNER_SETUP_RUNBOOK_RU.md
T

3.3 KiB

Build-runner setup runbook

Статус: registry-readiness runbook. Команды предназначены для нового российского build-runner awatch-build-01. Runbook не меняет product runtime, API, UI или deployment behavior.

Базовая подготовка

hostnamectl set-hostname awatch-build-01
apt update
apt upgrade

Базовые пакеты

apt install -y \
  curl \
  wget \
  git \
  jq \
  ca-certificates \
  gnupg \
  build-essential \
  pkg-config \
  libssl-dev \
  clang \
  cmake \
  protobuf-compiler \
  nodejs \
  npm \
  python3 \
  unzip \
  tar \
  rsync

protobuf-compiler, nodejs и npm нужны только если соответствующие components/checks используются в текущем release candidate. Если package policy организации требует другой способ установки, использовать корпоративный approved mirror/toolchain и зафиксировать это в release evidence.

Rust toolchain

Вариант через rustup допустим только если он разрешен политикой владельца инфраструктуры:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs -o /tmp/rustup-init.sh
sh /tmp/rustup-init.sh

Альтернатива: установить Rust toolchain из корпоративного mirror/package repository и зафиксировать источник установки в release evidence. Скрипты репозитория не должны выполнять curl | sh и не должны сами устанавливать toolchain.

Проверка инструментов

rustc --version
cargo --version
git --version
node --version
npm --version
jq --version

Если Node.js/npm не устанавливались, зафиксировать это как skipped: tool not installed для соответствующих smoke checks.

Пользователь build

useradd --create-home --shell /bin/bash build
usermod -aG sudo build

Доступ должен быть key-based SSH. Пароли, токены, приватные ключи и cookies не хранить в репозитории.

Безопасная модель доступа

  • SSH key based access.
  • No secrets in repo.
  • GitHub tokens, Gitea tokens и SSH private keys только в environment variables или protected files outside repo.
  • Protected files должны иметь ограниченные permissions и не попадать в source archive.
  • Build scripts не должны менять remotes, git history, tags или выполнять auto-push.

Подключение к Gitea

HTTPS clone:

git clone https://git.iri1968.dpdns.org/awatch-rus/AWatch-rus.git

SSH clone может быть добавлен отдельным шагом после настройки ключей Gitea. SSH private key не хранить в репозитории.

Первичная проверка репозитория

cd AWatch-rus
git remote -v
bash scripts/registry_readiness_check.sh

GitHub используется как public mirror only и не является primary registry source/build/release contour.