12 — Actions (CI) и выпуски
С помощью Actions можно автоматически запускать тесты, собирать пакеты или публиковать файлы при каждом коммите.
Ваш первый рабочий процесс
Добавьте в репозиторий файл .gitea/workflows/test.yml:
name: test
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: echo "репозиторий получен"
- run: ./scripts/test.sh
Запуск начнётся во вкладке Actions сразу после коммита. Зарегистрированный на этом сервере раннер отзывается на метки ubuntu-latest, ubuntu-24.04 и ubuntu-22.04; runs-on должен быть одной из них.
Чтение логов
Actions → запуск → задание → шаг: вывод каждого шага разворачивается отдельно. Красный шаг показывает, где всё остановилось; справа вверху запуск можно повторить.
Когда запускать
on:
push:
branches: [main] # только при отправке в main
pull_request: # при каждом пул-реквесте
schedule:
- cron: '0 3 * * *' # каждую ночь в 03:00
Секреты
Никогда не пишите пароли и токены в файле рабочего процесса. Задайте их в Настройки → Actions → Секреты и используйте так:
- run: ./deploy.sh
env:
TOKEN: ${{ secrets.DEPLOY_TOKEN }}
В логах секреты маскируются.
Публикация выпуска
Когда работа закончена, поставьте тег и создайте выпуск:
- Выпуски → Новый выпуск.
- Тег — например
v1.0.0. Если его нет, он будет создан. - Заголовок и заметки — что изменилось; список коммитов поможет.
- Приложите установщики, архивы или документы (Вложения).
- Сохраните как черновик или нажмите Опубликовать выпуск.
Каждый опубликованный выпуск автоматически предлагает архивы исходного кода (.zip, .tar.gz) и постоянные ссылки для скачивания.
Тег или выпуск?
- Тег — метка, прибитая к точке истории; живёт в git.
- Выпуск — человеческая сторона этого тега: заметки, вложения, счётчик загрузок.
Пакеты
Вкладка Пакеты показывает реестры пакетов, привязанные к репозиторию (npm, контейнеры, generic и другие). Как только пакет опубликован, он появляется здесь вместе с инструкцией по установке.