Skip to content

Auto Publish & Release #49

Auto Publish & Release

Auto Publish & Release #49

Workflow file for this run

name: Auto Publish & Release
on:
workflow_dispatch:
inputs:
releaseType:
description: 'release type'
required: true
type: choice
default: 'beta'
options:
- 'release'
- 'beta'
- 'alpha'
publishMaven:
description: 'whether publish to the maven'
required: true
type: boolean
default: false
publishCurseForgeAndModrinth:
description: 'whether publish to curseforge and modrinth'
required: true
type: boolean
default: true
jobs:
build:
runs-on: ubuntu-latest
env:
MAVEN_PASS: ${{ secrets.MAVEN_PASS }}
MAVEN_USER: ${{ secrets.MAVEN_USER }}
steps:
- uses: actions/checkout@v3
with:
submodules: true
- uses: actions/setup-java@v3
with:
java-version: '21'
distribution: 'adopt'
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build
uses: gradle/[email protected]
with:
arguments: build
- if: ${{ inputs.publishMaven }}
name: Publish to Maven
uses: gradle/[email protected]
with:
arguments: publish
- if: ${{ inputs.publishCurseForgeAndModrinth }}
name: Get Version
id: var
run: |
MESSAGE=$(ls build/libs/* | grep sources.jar -v | grep shadow.jar -v | awk -F 'gcyr-|.jar' '{print $2}')
echo version=$MESSAGE >> $GITHUB_OUTPUT
- if: ${{ inputs.publishCurseForgeAndModrinth }}
name: mc-publish
uses: Kir-Antipov/[email protected]
with:
# Only include this section if you wish to publish
# your assets on Modrinth.
modrinth-id: 4VJrCEMZ
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
# Only include this section if you wish to publish
# your assets on CurseForge.
curseforge-id: 922713
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
files: |
build/libs/!(*-@(dev|sources|javadoc|dev-shadow)).jar
build/libs/*-@(dev|sources|javadoc|dev-shadow).jar
name: GCYR ${{ steps.var.outputs.version }}
version: mc${{ steps.var.outputs.version }}
version-type: ${{ inputs.releaseType }}
changelog-file: CHANGELOG.*
loaders: |
neoforge
game-versions: |
${{ github.ref_name }}
1.21.1
dependencies: |
gtceu{modrinth:7tG215v7}{curseforge:890405}
game-version-filter: none
java: |
21
retry-attempts: 2
retry-delay: 10000
fail-mode: fail