Dominion/.github/workflows/main.yml

53 lines
1.6 KiB
YAML

name: Java CI-CD with Gradle
on:
push:
tags:
- '*'
jobs:
build:
# 配置权限
permissions: write-all
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: "Set up JDK 21"
uses: actions/setup-java@v3
with:
java-version: '21'
distribution: 'zulu'
cache: gradle
- name: "Build with Gradle"
run: ./gradlew buildPlugin
- name: "Copy jar to staging"
run: |
mkdir staging && cp build/libs/*.jar staging/
env:
JAR_FILE: "staging/$(ls staging | grep .jar)"
- name: "Build & test"
run: |
TAG=$(echo $GITHUB_REF | sed 's/refs\/tags\///')
echo "done!"
- name: "GitHub Release"
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "${{ steps.build.outputs.TAG }}"
prerelease: false
files: |
staging/*.jar
- name: "Upload to Modrinth"
uses: RubixDev/modrinth-upload@v1
with:
token: ${{ secrets.MODRINTH_TOKEN }}
file_path: ${{ env.JAR_FILE }}
name: ${{ github.event.release.tag_name }}
version: ${{ github.event.release.tag_name }}
changelog: ${{ github.event.release.body }}
game_versions: 1.20.1,1.20.2,1.20.3,1.20.4,1.20.5,1.20.6,1.21,1.21.1
release_type: beta
loaders: Bukkit,Folia,Paper,Purpur,Spigot
featured: true
project_id: vVZc7jAV