feat: use "entry read" unlocks instead of "advancement" unlocks until… #960
Workflow file for this run
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: Build and Publish | |
on: | |
push: | |
tags: | |
- 'alpha/v**' | |
- 'beta/v**' | |
- 'release/v**' | |
- 'test/v**' | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: 'Tag to build from' | |
required: true | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up OpenJDK 21 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 21 | |
distribution: temurin | |
- name: Get release type from github tag | |
id: get_release_type | |
uses: actions/github-script@v7 | |
with: | |
github-token: ${{ secrets.RELEASE_NOTES_TOKEN }} | |
result-encoding: string | |
script: | | |
const ref = process.env.GITHUB_REF || github.event.inputs.tag || ''; | |
return ref.match(/refs\/tags\/(.*)\/v((.*)-(.*))/)[1]; | |
- name: Get file version from tag | |
id: get_version | |
uses: actions/github-script@v7 | |
with: | |
github-token: ${{ secrets.RELEASE_NOTES_TOKEN }} | |
result-encoding: string | |
script: | | |
const ref = process.env.GITHUB_REF || github.event.inputs.tag || ''; | |
return ref.match(/refs\/tags\/(.*)\/v((.*)-(.*))/)[4]; | |
- name: Get main mc version from tag | |
id: get_mc_version | |
uses: actions/github-script@v7 | |
with: | |
github-token: ${{ secrets.RELEASE_NOTES_TOKEN }} | |
result-encoding: string | |
script: | | |
const ref = process.env.GITHUB_REF || github.event.inputs.tag || ''; | |
return ref.match(/refs\/tags\/(.*)\/v((.*)-(.*))/)[3]; | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v3 | |
with: | |
gradle-home-cache-cleanup: true | |
- name: Build | |
run: ./gradlew build | |
env: | |
MOD_VERSION: ${{ steps.get_version.outputs.result }} | |
- name: Update CHANGELOG | |
id: changelog | |
uses: klikli-dev/changelog-action@main | |
with: | |
token: ${{ github.token }} | |
tag: ${{ github.ref_name }} | |
mcVersion: ${{ steps.get_mc_version.outputs.result }} | |
- name: Create Release | |
id: create_release | |
uses: ncipollo/release-action@v1 | |
with: | |
allowUpdates: true | |
draft: false | |
name: occultism-${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }}-${{ steps.get_release_type.outputs.result }} | |
body: ${{ steps.changelog.outputs.changes }} | |
token: ${{ github.token }} | |
tag: ${{ github.ref }} | |
artifacts: ./build/libs/occultism-${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }}.jar | |
artifactContentType: application/java-archive | |
- name: Commit CHANGELOG.md | |
uses: stefanzweifel/git-auto-commit-action@v5 | |
if: ${{ steps.get_release_type.outputs.result != 'test' }} | |
with: | |
branch: version/1.21.1 | |
commit_message: 'docs: update CHANGELOG.md for ${{ github.ref_name }} [skip ci]' | |
file_pattern: CHANGELOG.md | |
- name: Upload to Mod Platforms | |
uses: Kir-Antipov/[email protected] | |
if: ${{ steps.get_release_type.outputs.result != 'test' }} | |
with: | |
modrinth-id: sbJh4AZw | |
modrinth-token: ${{ secrets.MODRINTH_API_KEY }} | |
curseforge-id: 361026 | |
curseforge-token: ${{ secrets.CURSEFORGE_API_KEY }} | |
files: | | |
build/libs/occultism-${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }}.jar | |
build/libs/occultism-${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }}-sources.jar | |
name: occultism-${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }}.jar | |
version: ${{ steps.get_mc_version.outputs.result }}-neoforge-${{ steps.get_version.outputs.result }} | |
version-type: ${{ steps.get_release_type.outputs.result }} | |
loaders: | | |
neoforge | |
game-versions: | | |
${{ steps.get_mc_version.outputs.result }} | |
changelog: |- | |
${{ steps.changelog.outputs.changes }} | |
Find changes for all versions at https://github.com/klikli-dev/occultism/releases | |
dependencies: | | |
modonomicon(required) | |
geckolib(required) | |
smartbrainlib(required) | |
theurgy(optional) | |
jei(optional) | |
emi(optional) | |
almost-unified(optional) | |
perviaminvenire(optional) | |
curios-continuation(optional) | |
adorned(optional) | |
# Publish at the end because it creates a non reobfed jarjar which otherwise would be distributed | |
- name: Publish | |
run: ./gradlew publish | |
if: ${{ steps.get_release_type.outputs.result != 'test' }} | |
env: | |
MAVEN_USER: ${{ secrets.MAVEN_USER }} | |
MAVEN_PASS: ${{ secrets.MAVEN_PASS }} | |
MOD_VERSION: ${{ steps.get_version.outputs.result }} |