Release #274
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
workflow_dispatch: | |
inputs: | |
fabric: | |
description: "Fabric Release" | |
required: true | |
type: boolean | |
forge: | |
description: "Forge Release" | |
required: true | |
type: boolean | |
neo: | |
description: "Neo Release" | |
required: true | |
type: boolean | |
baseRef: | |
description: "Base ref for changelog generator" | |
required: true | |
type: string | |
headRef: | |
description: "Head ref for changelog generator" | |
required: true | |
type: string | |
env: | |
MINECRAFT_VERSION: "1.19.4" | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Gradle Wrapper Verification | |
uses: gradle/actions/wrapper-validation@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
- name: Elevate wrapper permissions | |
run: chmod +x ./gradlew | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
- name: Build Mods | |
run: ./gradlew build | |
- name: Get WorldMap Version Fabric | |
run: echo "WORLDMAP_VERSION_FABRIC=$(./gradlew -q printWorldMapVersionFabric)" >> $GITHUB_ENV | |
- name: Get Minimap Version Fabric | |
run: echo "MINIMAP_VERSION_FABRIC=$(./gradlew -q printMinimapVersionFabric)" >> $GITHUB_ENV | |
- name: Get WorldMap Version Forge | |
run: echo "WORLDMAP_VERSION_FORGE=$(./gradlew -q printWorldMapVersionForge)" >> $GITHUB_ENV | |
- name: Get Minimap Version Forge | |
run: echo "MINIMAP_VERSION_FORGE=$(./gradlew -q printMinimapVersionForge)" >> $GITHUB_ENV | |
- name: Get XaeroPlus Version | |
run: echo "XP_VERSION=$(./gradlew -q printXaeroPlusVersion)" >> $GITHUB_ENV | |
- name: Get Fabric Jar Filename | |
run: echo "XP_FABRIC=XaeroPlus-${{ env.XP_VERSION}}+fabric-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FABRIC }}-MM${{ env.MINIMAP_VERSION_FABRIC }}" >> $GITHUB_ENV | |
- name: Get Forge Jar Filename | |
run: echo "XP_FORGE=XaeroPlus-${{ env.XP_VERSION}}+forge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FORGE }}-MM${{ env.MINIMAP_VERSION_FORGE }}" >> $GITHUB_ENV | |
- name: Upload Fabric Artifact | |
if: ${{ inputs.fabric }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.XP_FABRIC }} | |
path: fabric/build/libs/${{ env.XP_FABRIC }}.jar | |
if-no-files-found: error | |
- name: Upload Forge Artifact | |
if: ${{ inputs.forge }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.XP_FORGE }} | |
path: forge/build/libs/${{ env.XP_FORGE }}.jar | |
if-no-files-found: error | |
- name: Generate changelog | |
id: changelog | |
uses: metcalfc/changelog-generator@v4.3.1 | |
with: | |
myToken: ${{ secrets.GITHUB_TOKEN }} | |
base-ref: ${{ inputs.baseRef }} | |
head-ref: ${{ inputs.headRef }} | |
outputs: | |
changelog: ${{ steps.changelog.outputs.changelog }} | |
xp_version: ${{ env.XP_VERSION }} | |
xp_fabric: ${{ env.XP_FABRIC }} | |
xp_forge: ${{ env.XP_FORGE }} | |
worldmap_version_fabric: ${{ env.WORLDMAP_VERSION_FABRIC }} | |
minimap_version_fabric: ${{ env.MINIMAP_VERSION_FABRIC }} | |
worldmap_version_forge: ${{ env.WORLDMAP_VERSION_FORGE }} | |
minimap_version_forge: ${{ env.MINIMAP_VERSION_FORGE }} | |
release: | |
needs: | |
- build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Download job artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
merge-multiple: true | |
path: artifacts/ | |
- name: Release Fabric CurseForge and Modrinth | |
if: ${{ inputs.fabric }} | |
uses: Kir-Antipov/mc-publish@v3.3 | |
with: | |
changelog: ${{ needs.build.outputs.changelog }} | |
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }} | |
curseforge-id: 866084 | |
modrinth-token: ${{ secrets.MODRINTH_TOKEN }} | |
modrinth-id: EnPUzSTg | |
files: | | |
artifacts/${{ needs.build.outputs.xp_fabric }}.jar | |
name: ${{ needs.build.outputs.xp_version }} (Fabric) (WM${{ needs.build.outputs.worldmap_version_fabric }} MM${{ needs.build.outputs.minimap_version_fabric }}) | |
version: ${{ needs.build.outputs.xp_version }}+fabric-${{ env.MINECRAFT_VERSION }} | |
loaders: | | |
fabric | |
quilt | |
game-versions: | | |
${{ env.MINECRAFT_VERSION }} | |
dependencies: | | |
xaerominimap@${{ needs.build.outputs.minimap_version_fabric }}(required){modrinth:1bokaNcj}{curseforge:263420} | |
xaeroworldmap@${{ needs.build.outputs.worldmap_version_fabric }}(required){modrinth:NcUtCpym}{curseforge:317780} | |
fabric-api(required){modrinth:P7dR8mSH}{curseforge:306612} | |
worldtools(optional){modrinth:FlFKBOIX}{curseforge:909868} | |
waystones(optional){modrinth:LOpKHB2A}{curseforge:245755} | |
fwaystones(optional){modrinth:sTZr7NVo}{curseforge:410902} | |
- name: Release Forge CurseForge and Modrinth | |
if: ${{ inputs.forge }} | |
uses: Kir-Antipov/mc-publish@v3.3 | |
with: | |
changelog: ${{ needs.build.outputs.changelog }} | |
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }} | |
curseforge-id: 866084 | |
modrinth-token: ${{ secrets.MODRINTH_TOKEN }} | |
modrinth-id: EnPUzSTg | |
files: | | |
artifacts/${{ needs.build.outputs.xp_forge }}.jar | |
name: ${{ needs.build.outputs.xp_version }} (Forge) (WM${{ needs.build.outputs.worldmap_version_forge }} MM${{ needs.build.outputs.minimap_version_forge }}) | |
version: ${{ needs.build.outputs.xp_version }}+forge-${{ env.MINECRAFT_VERSION }} | |
loaders: | | |
forge | |
game-versions: | | |
${{ env.MINECRAFT_VERSION }} | |
dependencies: | | |
xaerominimap@${{ needs.build.outputs.minimap_version_forge }}(required){modrinth:1bokaNcj}{curseforge:263420} | |
xaeroworldmap@${{ needs.build.outputs.worldmap_version_forge }}(required){modrinth:NcUtCpym}{curseforge:317780} | |
worldtools(optional){modrinth:FlFKBOIX}{curseforge:909868} | |
waystones(optional){modrinth:LOpKHB2A}{curseforge:245755} | |
- name: Github Release | |
if: ${{ inputs.fabric }} || ${{ inputs.forge }} | |
uses: ncipollo/release-action@v1 | |
with: | |
tag: "${{ needs.build.outputs.xp_version }}" | |
commit: 1.20.1 | |
artifacts: "artifacts/*.jar" | |
allowUpdates: true | |
makeLatest: true | |
body: | | |
For WorldMap and Minimap Versions: | |
* Fabric: WM${{ needs.build.outputs.worldmap_version_fabric }} MM${{ needs.build.outputs.minimap_version_fabric }} | |
* Forge: WM${{ needs.build.outputs.worldmap_version_forge }} MM${{ needs.build.outputs.minimap_version_forge }} | |
${{ needs.build.outputs.changelog }} | |
omitBodyDuringUpdate: true |