157 lines
7.6 KiB
YAML
157 lines
7.6 KiB
YAML
name: Publish Release
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version:
|
|
description: 'Version to release'
|
|
required: true
|
|
after-version:
|
|
description: 'Snapshot version after release'
|
|
required: true
|
|
|
|
jobs:
|
|
set-release-version:
|
|
uses: ./.github/workflows/set-version.yml
|
|
with:
|
|
version: ${{ inputs.version }}
|
|
|
|
build:
|
|
needs: set-release-version
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v7
|
|
with:
|
|
ref: ${{ github.ref }}
|
|
|
|
- name: Set up Gradle
|
|
uses: gradle/actions/setup-gradle@v6
|
|
|
|
- name: Set up JDK 25
|
|
uses: actions/setup-java@v5
|
|
with:
|
|
java-version: '25'
|
|
distribution: 'temurin'
|
|
|
|
- name: Build with Gradle
|
|
run: ./gradlew chiseledBuild
|
|
|
|
- name: Build Changelog
|
|
id: changelog
|
|
uses: mikepenz/release-changelog-builder-action@v6
|
|
with:
|
|
mode: COMMIT
|
|
toTag: ${{ github.ref }}
|
|
configurationJson: |
|
|
{
|
|
"template": "#{{CHANGELOG}}",
|
|
"commit_template": "- [`#{{SHORT_MERGE_SHA}}`](https://github.com/#{{OWNER}}/#{{REPO}}/commit/#{{MERGE_SHA}}) #{{TITLE}}",
|
|
"categories": [
|
|
{ "title": "## Features", "labels": ["feat", "feature"] },
|
|
{ "title": "## Fixes", "labels": ["fix", "bug"] },
|
|
{ "title": "## Performance", "labels": ["perf"] },
|
|
{ "title": "## Refactor", "labels": ["refactor"] },
|
|
{ "title": "## Documentation", "labels": ["docs"] },
|
|
{ "title": "## Build", "labels": ["build", "chore", "ci"] },
|
|
{ "title": "## Other", "labels": [] }
|
|
],
|
|
"empty_template": "no changes",
|
|
"label_extractor": [
|
|
{
|
|
"pattern": "^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test){1}(\\([\\w\\-\\.]+\\))?(!)?: ([\\w ])+([\\s\\S]*)",
|
|
"on_property": "title",
|
|
"target": "$1"
|
|
}
|
|
],
|
|
"custom_placeholders": [
|
|
{
|
|
"name": "SHORT_MERGE_SHA",
|
|
"source": "MERGE_SHA",
|
|
"transformer": {
|
|
"pattern": "^([0-9a-f]{7})[0-9a-f]*$",
|
|
"target": "$1"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
env:
|
|
GITHUB_TOKEN: ${{ github.token }}
|
|
|
|
- name: Create GitHub Release
|
|
env:
|
|
GH_TOKEN: ${{ github.token }}
|
|
CHANGELOG: ${{ steps.changelog.outputs.changelog }}
|
|
run: |
|
|
VERSION="${{ inputs.version }}"
|
|
REPO="${{ github.repository }}"
|
|
DOWNLOAD_URL="https://github.com/${REPO}/releases/download/${VERSION}"
|
|
|
|
NOTES=$(cat <<EOF
|
|
## Downloads
|
|
|
|
| Minecraft Version | Download |
|
|
|---|---|
|
|
| 1.19.4 | [\`anarchymod-mc-1.19.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.19.4-${VERSION}.jar) |
|
|
| 1.20 | [\`anarchymod-mc-1.20-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20-${VERSION}.jar) |
|
|
| 1.20.1 | [\`anarchymod-mc-1.20.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.1-${VERSION}.jar) |
|
|
| 1.20.2 | [\`anarchymod-mc-1.20.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.2-${VERSION}.jar) |
|
|
| 1.20.3 | [\`anarchymod-mc-1.20.3-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.3-${VERSION}.jar) |
|
|
| 1.20.4 | [\`anarchymod-mc-1.20.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.4-${VERSION}.jar) |
|
|
| 1.20.5 | [\`anarchymod-mc-1.20.5-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.5-${VERSION}.jar) |
|
|
| 1.20.6 | [\`anarchymod-mc-1.20.6-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.20.6-${VERSION}.jar) |
|
|
| 1.21 | [\`anarchymod-mc-1.21-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21-${VERSION}.jar) |
|
|
| 1.21.1 | [\`anarchymod-mc-1.21.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.1-${VERSION}.jar) |
|
|
| 1.21.2 | [\`anarchymod-mc-1.21.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.2-${VERSION}.jar) |
|
|
| 1.21.3 | [\`anarchymod-mc-1.21.3-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.3-${VERSION}.jar) |
|
|
| 1.21.4 | [\`anarchymod-mc-1.21.4-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.4-${VERSION}.jar) |
|
|
| 1.21.5 | [\`anarchymod-mc-1.21.5-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.5-${VERSION}.jar) |
|
|
| 1.21.6 | [\`anarchymod-mc-1.21.6-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.6-${VERSION}.jar) |
|
|
| 1.21.7 | [\`anarchymod-mc-1.21.7-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.7-${VERSION}.jar) |
|
|
| 1.21.8 | [\`anarchymod-mc-1.21.8-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.8-${VERSION}.jar) |
|
|
| 1.21.9 | [\`anarchymod-mc-1.21.9-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.9-${VERSION}.jar) |
|
|
| 1.21.10 | [\`anarchymod-mc-1.21.10-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.10-${VERSION}.jar) |
|
|
| 1.21.11 | [\`anarchymod-mc-1.21.11-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-1.21.11-${VERSION}.jar) |
|
|
| 26.1 | [\`anarchymod-mc-26.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1-${VERSION}.jar) |
|
|
| 26.1.1 | [\`anarchymod-mc-26.1.1-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1.1-${VERSION}.jar) |
|
|
| 26.1.2 | [\`anarchymod-mc-26.1.2-${VERSION}.jar\`](${DOWNLOAD_URL}/anarchymod-mc-26.1.2-${VERSION}.jar) |
|
|
|
|
${CHANGELOG}
|
|
EOF
|
|
)
|
|
|
|
gh release create "${VERSION}" \
|
|
--title "AnarchyMod ${VERSION}" \
|
|
--notes "${NOTES}" \
|
|
versions/1.19.4/build/libs/anarchymod-mc-1.19.4-${VERSION}.jar \
|
|
versions/1.20/build/libs/anarchymod-mc-1.20-${VERSION}.jar \
|
|
versions/1.20.1/build/libs/anarchymod-mc-1.20.1-${VERSION}.jar \
|
|
versions/1.20.2/build/libs/anarchymod-mc-1.20.2-${VERSION}.jar \
|
|
versions/1.20.3/build/libs/anarchymod-mc-1.20.3-${VERSION}.jar \
|
|
versions/1.20.4/build/libs/anarchymod-mc-1.20.4-${VERSION}.jar \
|
|
versions/1.20.5/build/libs/anarchymod-mc-1.20.5-${VERSION}.jar \
|
|
versions/1.20.6/build/libs/anarchymod-mc-1.20.6-${VERSION}.jar \
|
|
versions/1.21/build/libs/anarchymod-mc-1.21-${VERSION}.jar \
|
|
versions/1.21.1/build/libs/anarchymod-mc-1.21.1-${VERSION}.jar \
|
|
versions/1.21.2/build/libs/anarchymod-mc-1.21.2-${VERSION}.jar \
|
|
versions/1.21.3/build/libs/anarchymod-mc-1.21.3-${VERSION}.jar \
|
|
versions/1.21.4/build/libs/anarchymod-mc-1.21.4-${VERSION}.jar \
|
|
versions/1.21.5/build/libs/anarchymod-mc-1.21.5-${VERSION}.jar \
|
|
versions/1.21.6/build/libs/anarchymod-mc-1.21.6-${VERSION}.jar \
|
|
versions/1.21.7/build/libs/anarchymod-mc-1.21.7-${VERSION}.jar \
|
|
versions/1.21.8/build/libs/anarchymod-mc-1.21.8-${VERSION}.jar \
|
|
versions/1.21.9/build/libs/anarchymod-mc-1.21.9-${VERSION}.jar \
|
|
versions/1.21.10/build/libs/anarchymod-mc-1.21.10-${VERSION}.jar \
|
|
versions/1.21.11/build/libs/anarchymod-mc-1.21.11-${VERSION}.jar \
|
|
versions/26.1/build/libs/anarchymod-mc-26.1-${VERSION}.jar \
|
|
versions/26.1.1/build/libs/anarchymod-mc-26.1.1-${VERSION}.jar \
|
|
versions/26.1.2/build/libs/anarchymod-mc-26.1.2-${VERSION}.jar
|
|
|
|
set-after-version:
|
|
needs: build
|
|
uses: ./.github/workflows/set-version.yml
|
|
with:
|
|
version: ${{ inputs.after-version }}
|