Skip to content

Commit

Permalink
Add mod publishing
Browse files Browse the repository at this point in the history
  • Loading branch information
DrexHD committed Jul 28, 2024
1 parent 9ea6680 commit f90250b
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 33 deletions.
44 changes: 14 additions & 30 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,21 @@
name: release

on:
workflow_dispatch:
push:
tags:
- 'v*.*.*\+1.**'
on: [workflow_dispatch]

jobs:
upload:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v2
with:
java-version: '21'
distribution: 'temurin'
- name: Grant execute permission to gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build
- name: Set up Environment Variables
run: |
echo "MOD_VERSION="$(grep 'mod_version' gradle.properties | cut -f2- -d=)"" >> $GITHUB_ENV
- name: Install changelog parser
uses: taiki-e/install-action@parse-changelog
- name: Parse changelog
run: parse-changelog CHANGELOG.md ${{ env.MOD_VERSION }} > changes.md
- uses: Kir-Antipov/[email protected]
uses: actions/setup-java@v4
with:
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
github-token: ${{ secrets.GITHUB_TOKEN }}
changelog-file: changes.md
files: build/libs/!(*-@(dev|sources)).jar
distribution: 'adopt'
java-version: 21
- name: Make gradlew executable
run: chmod +x ./gradlew
- name: Publish mods
run: ./gradlew build publishMods
env:
CURSEFORGE_TOKEN: ${{ secrets.CURSEFORGE_TOKEN }}
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [4.1.2] - 2024-07-29
### Changed
- Removed `trade_enchantments` field from `enchant_randomly` loot function

Expand Down Expand Up @@ -70,7 +72,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Updated to 1.19

## [3.0.1] - 2022-03-03
## Added
### Added
- Trade validator
- Behaviour pack support
- Infinite trade setting
Expand Down
44 changes: 43 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
import org.jetbrains.changelog.Changelog

plugins {
id 'fabric-loom' version '1.6-SNAPSHOT'
id 'maven-publish'
id "me.modmuss50.mod-publish-plugin" version "0.+"
id 'org.jetbrains.changelog' version '2.+'
}

sourceCompatibility = JavaVersion.VERSION_21
Expand Down Expand Up @@ -37,6 +41,32 @@ dependencies {

}

publishMods {
file = remapJar.archiveFile
type = STABLE
changelog = fetchChangelog()

displayName = "VillagerConfig ${version.get()}"
modLoaders.add("fabric")
modLoaders.add("quilt")

curseforge {
accessToken = providers.environmentVariable("CURSEFORGE_TOKEN")
projectId = "400741"
minecraftVersions.add(project.minecraft_version)
}
modrinth {
accessToken = providers.environmentVariable("MODRINTH_TOKEN")
projectId = "OClpEDe3"
minecraftVersions.add(project.minecraft_version)
}
github {
accessToken = providers.environmentVariable("GITHUB_TOKEN")
repository = providers.environmentVariable("GITHUB_REPOSITORY").getOrElse("DrexHD/dryrun")
commitish = providers.environmentVariable("GITHUB_REF_NAME").getOrElse("dryrun")
}
}

processResources {
inputs.property "version", project.version

Expand All @@ -54,4 +84,16 @@ jar {
from("LICENSE") {
rename { "${it}_${project.archivesBaseName}" }
}
}
}

private String fetchChangelog() {
def log = getChangelog.changelog.get()
if (log.has(project.mod_version)) {
return log.renderItem(
log.get(project.mod_version).withHeader(false),
Changelog.OutputType.MARKDOWN
)
} else {
return ""
}
}
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down

0 comments on commit f90250b

Please sign in to comment.