Skip to content

Release

Release #34

Workflow file for this run

name: Release
on:
workflow_dispatch:
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Tag prefix
id: tag-prefix
shell: pwsh
run: |
$branch = '1.20.1'
if ('${{ github.ref }}' -eq 'refs/heads/1.21') {
$branch = '1.21.1'
}
Write-Output "prefix=$branch" >> $env:GITHUB_OUTPUT
- id: version
uses: paulhatch/semantic-version@v5.3.0
with:
tag_prefix: '${{ steps.tag-prefix.outputs.prefix }}-'
major_pattern: '/\w+(?:\([\w.]+\))?!:.+/'
minor_pattern: '/feat(?:\([\w.]+\))?:.+/'
- uses: actions/setup-java@v4
with:
distribution: jetbrains
java-version: 21
- uses: gradle/actions/setup-gradle@v4
- name: Verify distribution jar
run: ./gradlew -Pversion=${{ steps.version.outputs.version }} --no-daemon :create_factory_logistics-1.21.1:verifyJarJarMetadata
- name: Publish with Gradle
run: ./gradlew -Dorg.gradle.s3.endpoint=${{ secrets.S3_ENDPOINT }} -Pversion=${{ steps.version.outputs.version }} publish
env:
S3_KEY_ID: ${{ secrets.S3_KEY_ID }}
S3_KEY: ${{ secrets.S3_KEY }}
- name: Generate changelog
uses: orhun/git-cliff-action@v4
with:
config: cliff.toml
args: --tag-pattern '${{ steps.tag-prefix.outputs.prefix }}-*' --latest
env:
OUTPUT: forge/CHANGELOG.md
- name: Push new tag
run: |
git config user.email "you@example.com"
git config user.name "Your Name"
git tag -a ${{ steps.version.outputs.version_tag }} -m ${{ steps.version.outputs.version_tag }}
git push --follow-tags
- name: Publish Mods with Gradle
run: ./gradlew -Pversion=${{ steps.version.outputs.version }} :create_factory_logistics-1.21.1:publishMods
env:
CURSEFORGE_TOKEN: ${{ secrets.CURSEFORGE_TOKEN }}
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}