LoChat/.forgejo/workflows/release.yml
loki5512344 3e5dcbf3ac ci: добавить Forgejo Actions workflows
Добавлены 3 workflow для CI/CD:

1. build.yml - основная сборка и тесты
   - Запускается на push в main/develop и PR
   - Сборка с Gradle
   - Запуск тестов
   - Загрузка артефактов (jar файлы, отчеты тестов)

2. release.yml - автоматические релизы
   - Запускается при создании тега v*
   - Сборка без тестов
   - Создание релиза с артефактами

3. quality.yml - проверка качества кода
   - Проверка стиля кода
   - Тесты с покрытием (Jacoco)
   - Загрузка отчетов о покрытии

Требования:
- JDK 21 (Temurin)
- Gradle wrapper
- Forgejo Actions runner
2026-04-07 13:21:34 +02:00

39 lines
813 B
YAML

name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build release
run: ./gradlew build -x test --no-daemon
- name: Get version from tag
id: get_version
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: Create Release
uses: actions/forgejo-release@v2
with:
direction: upload
release-dir: build/libs
token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ github.ref_name }}