dev onboarding doc

This commit is contained in:
ops 2026-06-02 13:41:15 +00:00
parent ec5f9b43b1
commit d29aef4b09

View file

@ -1,3 +1,90 @@
# onboarding
# Онбординг: мы переехали с GitLab на Forgejo
Dev onboarding — what changed in the GitLab→Forgejo move
GitLab выключен. Весь код, CI и деплой теперь на **Forgejo**:
**https://git.154.83.149.72.nip.io**
Твой аккаунт и все репы (код + история) уже перенесены — заводить ничего не надо.
Ниже — что поменялось лично для тебя и что сделать один раз.
---
## TL;DR (5 минут)
1. Зайди на https://git.154.83.149.72.nip.io — логин тот же, **временный пароль возьми у админа** → смени при первом входе.
2. Добавь свой SSH-ключ (Settings → SSH/GPG Keys). Новый порт — **2223**.
3. Перепривяжи `remote` своих реп на новый хост.
4. Деплой теперь через `.forgejo/workflows/deploy.yml` + `.env` (форкни `templates/starter`). Push в `main` → сайт с SSL.
---
## 1. Доступ
- Форж: **https://git.154.83.149.72.nip.io**
- Логин: **твой прежний username** (как на GitLab).
- Пароль: **временный, возьми у админа**. При первом входе форж заставит сменить.
> ⚠️ Пока не сменишь пароль в вебе — git по HTTPS/паролю работать НЕ будет (так задумано: временный пароль одноразовый).
## 2. Git: новый хост, порт и ключ
SSH-ключи с GitLab **не переехали** — добавь заново.
| | было (GitLab) | стало (Forgejo) |
|---|---|---|
| SSH | `git@gitlab.extractl.online:2222` | `git@git.154.83.149.72.nip.io:2223` |
| HTTPS | `https://gitlab.extractl.online/…` | `https://git.154.83.149.72.nip.io/…` |
1. **Settings → SSH/GPG Keys → Add Key** → вставь `~/.ssh/id_ed25519.pub`.
2. `~/.ssh/config`:
```
Host git.154.83.149.72.nip.io
Port 2223
User git
```
3. Перепривяжи каждую репу:
```
git remote set-url origin git@git.154.83.149.72.nip.io:<твой-логин>/<репа>.git
```
(Или HTTPS — логин + новый пароль, без `~/.ssh/config`.)
## 3. Твои репы
Уже на Forgejo, код и история целы. Просто перепривяжи `remote` (см. выше) — и работаешь как раньше.
## 4. Деплой: новый флоу
Принцип тот же (`.env` с `DOMAIN` → push → сайт с SSL), формат CI поменялся.
| | было (GitLab) | стало (Forgejo) |
|---|---|---|
| CI-файл | `.gitlab-ci.yml` (`include auto.yml`) | `.forgejo/workflows/deploy.yml` |
| конфиг | `.env` | `.env` (почти то же) |
| триггер | push в `main` | push в дефолт-ветку |
| скорость | ~12 мин | ~2060 сек |
**Что сделать:** форкни **`templates/starter`** (https://git.154.83.149.72.nip.io/templates/starter)
или скопируй из него 2 файла в корень своей репы:
- `.forgejo/workflows/deploy.yml` — трогать не надо
- `.env` — минимум `DOMAIN=твойсайт.com`
Push в `main` → сайт встаёт.
### Тип проекта — новое поле `DEPLOY` в `.env` (можно не указывать, авто-детект)
- **`static`** — фронт (Vite / CRA / Next static export): build → раздаётся статикой. Дефолт, если в корне НЕТ `Dockerfile`. Самый быстрый.
- **`docker`** — свой `Dockerfile` → контейнер. Дефолт, если `Dockerfile` есть.
- **`docker-db`** — docker + персистентная **SQLite**: монтируется volume в `/data`, прокидывается `DATABASE_URL=file:/data/app.db`.
## 5. Секреты (DATABASE_URL, API-ключи) — поменялось
| | было (GitLab) | стало (Forgejo) |
|---|---|---|
| где задать | CI/CD Variables с префиксом `RUNTIME_` | **Settings → Actions → Secrets** (имя секрета = имя переменной) |
| как включить | автоматом все `RUNTIME_*` | перечислить в `.env`: `RUNTIME_KEYS=DATABASE_URL,JWT_SECRET` |
В коде читаешь как раньше — `process.env.DATABASE_URL`. Для `DEPLOY=docker-db` переменную `DATABASE_URL` указывать не надо (ставится автоматически).
## 6. Ещё мелочи
- **Build на bun** — если закоммитишь `bun.lock`, install в 1030× быстрее npm. Для Web3/Solana-проектов огромная разница.
- **Registry больше не нужен** — образ собирается и запускается на месте.
- **Kill-switch** как раньше: `ENABLED=false` в `.env` → сайт отдаёт 404; убери строку (или `true`) → вернётся.
- **БД**: вместо общего Postgres — своя SQLite в volume (`docker-db`). Если нужна была твоя старая Postgres-дата — скажи админу, достанем из бэкапа.
## 7. Полная дока
Деплой во всех деталях (CRA, Next.js, монорепо, кастомный Dockerfile, авто-www и т.д.) —
**README в `templates/starter`**: https://git.154.83.149.72.nip.io/templates/starter
Застрял — пиши админу.