Files
Deal/deploy/gitea-runner/README.md
T
Rustam Khalimov 46969d399f
ci / build-test (push) Failing after 20m4s
Перенести CI в Gitea Actions и добавить пакет раннера
.gitea/workflows/ci.yml (из .github — Gitea сканирует оба пути, оставлен один
канонический); deploy/gitea-runner: docker-compose act_runner с метками
ubuntu-latest -> gitea/runner-images, .env.example и README (токен регистрации
в .env, в git не попадает). Первый прогон — push этого коммита.
2026-09-11 20:40:20 +03:00

35 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Gitea Actions Runner (Deal CI)
Раннер для `.gitea/workflows/ci.yml`. Workflow требует метку `ubuntu-latest`;
job-контейнер — `gitea/runner-images:ubuntu-latest`, .NET 10 и Node 20 ставятся
шагами `setup-dotnet`/`setup-node` внутри job'а.
## Поднять на любой машине с Docker (в той же сети, что Gitea)
```sh
cp .env.example .env # вписать RUNNER_TOKEN
docker compose up -d
```
Токен: Gitea → **Site Administration → Actions → Runners → Create new runner**
или API (см. `.env.example`).
Проверка: Gitea → репозиторий → **Actions → Runners** — раннер `deal-runner`
должен быть Idle. Далее любой `git push` в `main` запускает workflow
(`.gitea/workflows/ci.yml`: `sh scripts/ci.sh` — сборка 5 решений, тесты,
скан уязвимостей, сборка и линтер фронта).
## Перенос на сервер Gitea
1. Скопировать каталог на сервер, заполнить `.env`, `docker compose up -d`.
2. Локальный раннер погасить: `docker compose down` (каталог `data/` содержит
регистрацию — при переносе можно удалить и перерегистрировать).
## Заметки
- Первая строка pulls ~1.5 GB (`gitea/runner-images:ubuntu-latest` + SDK ~200 MB
при первом прогоне); последующие прогоны — инкрементальные.
- `restart: unless-stopped` — раннер переживает перезагрузку хоста.
- Токен регистрации используется один раз при `register`; хранить его в
репозитории нельзя — только в `.env``.gitignore`).