Release #218
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.20.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 WorldMap Version NeoForge | |
run: | | |
echo "WORLDMAP_VERSION_NEO=$(./gradlew -q printWorldMapVersionNeo)" >> $GITHUB_ENV | |
- name: Get Minimap Version NeoForge | |
run: | | |
echo "MINIMAP_VERSION_NEO=$(./gradlew -q printMinimapVersionNeo)" >> $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: Get Neo Jar Filename | |
run: | | |
echo "XP_NEO=XaeroPlus-${{ env.XP_VERSION}}+neoforge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_NEO }}-MM${{ env.MINIMAP_VERSION_NEO }}" >> $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: Upload Neo Artifact | |
if: ${{ inputs.neo }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.XP_NEO }} | |
path: neo/build/libs/${{ env.XP_NEO }}.jar | |
if-no-files-found: error | |
- name: Generate changelog | |
id: changelog | |
uses: metcalfc/[email protected] | |
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 }} | |
xp_neo: ${{ env.XP_NEO }} | |
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 }} | |
worldmap_version_neo: ${{ env.WORLDMAP_VERSION_NEO }} | |
minimap_version_neo: ${{ env.MINIMAP_VERSION_NEO }} | |
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/[email protected] | |
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/[email protected] | |
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: Release Neo CurseForge and Modrinth | |
if: ${{ inputs.neo }} | |
uses: Kir-Antipov/[email protected] | |
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_neo }}.jar | |
name: ${{ needs.build.outputs.xp_version }} (NeoForge) (WM${{ needs.build.outputs.worldmap_version_neo }} MM${{ needs.build.outputs.minimap_version_neo }}) | |
version: ${{ needs.build.outputs.xp_version }}+neoforge-${{ env.MINECRAFT_VERSION }} | |
loaders: | | |
neoforge | |
game-versions: | | |
${{ env.MINECRAFT_VERSION }} | |
dependencies: | | |
xaerominimap@${{ needs.build.outputs.minimap_version_neo }}(required){modrinth:1bokaNcj}{curseforge:263420} | |
xaeroworldmap@${{ needs.build.outputs.worldmap_version_neo }}(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 }} || ${{ inputs.neo }} | |
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 }} | |
* NeoForge: WM${{ needs.build.outputs.worldmap_version_neo }} MM${{ needs.build.outputs.minimap_version_neo }} | |
${{ needs.build.outputs.changelog }} | |
omitBodyDuringUpdate: true |