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
This commit is contained in:
loki5512344 2026-04-07 13:21:34 +02:00
parent 4107731014
commit 3e5dcbf3ac
3 changed files with 125 additions and 0 deletions

View file

@ -0,0 +1,47 @@
name: Build and Test
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main ]
jobs:
build:
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 with Gradle
run: ./gradlew build --no-daemon
- name: Run tests
run: ./gradlew test --no-daemon
- name: Upload build artifacts
uses: actions/upload-artifact@v4
if: success()
with:
name: lochat-plugin
path: build/libs/*.jar
retention-days: 30
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results
path: build/reports/tests/
retention-days: 7