betterminecraft/.gitea/workflows/test-release.yml
Steev ca3a3de361
Some checks failed
Build and Release Minecraft Plugin / build-and-release (pull_request) Failing after 58s
.gitea/workflows/test-release.yml aktualisiert
2024-12-27 04:20:28 +01:00

84 lines
2.4 KiB
YAML

name: Build and Release Minecraft Plugin
on:
pull_request:
types: [closed]
branches:
- Testing
jobs:
build-and-release:
steps:
# Repository auschecken
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Vollständiges Repository abrufen
# Java 17 installieren
- name: Set up Java 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
# Maven installieren
- name: Install Maven
run: |
sudo apt-get update
sudo apt-get install -y maven
# Plugin-Version aus plugin.yml auslesen
- name: Extract Plugin Version
id: extract_version
run: |
VERSION=$(grep '^version:' src/main/resources/plugin.yml | awk '{print $2}')
echo "PLUGIN_VERSION=$VERSION" >> $GITHUB_ENV
# Projekt mit Maven bauen
- name: Build with Maven
run: mvn clean package
# Sicherstellen, dass alle Referenzen korrekt sind
- name: Fetch All References
run: |
# Sicherstellen, dass alle Remote-Referenzen abgerufen werden
git fetch --prune
# PR Commit-Nachrichten auslesen
- name: Get PR Commit Messages
id: pr_commits
run: |
# Abrufen der Commit-Nachrichten für den PR
PR_COMMITS=$(git log --format=%s origin/${{ github.event.pull_request.base.ref }}..${{ github.sha }} --oneline)
# Ausgabe in Umgebungsvariable speichern
echo "PR_COMMITS=$PR_COMMITS" >> $GITHUB_ENV
echo "$PR_COMMITS"
# JAR-Datei umbenennen
- name: Rename JAR File
run: |
mv target/*.jar target/BetterMinecraft-${{ env.PLUGIN_VERSION }}-b.jar
# Artefakt hochladen
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: BetterMinecraft-${{ env.PLUGIN_VERSION }}-b.jar
path: target/BetterMinecraft-${{ env.PLUGIN_VERSION }}-b.jar
# Release erstellen mit Changelog
- name: Create Release
uses: softprops/action-gh-release@v1
with:
files: target/BetterMinecraft-${{ env.PLUGIN_VERSION }}-b.jar
tag_name: ${{ env.PLUGIN_VERSION }}
release_name: Release ${{ env.PLUGIN_VERSION }}
draft: false
prerelease: true
body: |
## Changelog
${{ env.PR_COMMITS }}