# Онбординг: мы переехали с GitLab на Forgejo 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 в дефолт-ветку | | скорость | ~1–2 мин | ~20–60 сек | **Что сделать:** форкни **`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 в 10–30× быстрее 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 Застрял — пиши админу.