95 lines
3.1 KiB
YAML
95 lines
3.1 KiB
YAML
on:
|
|
push:
|
|
tags:
|
|
- "*"
|
|
|
|
jobs:
|
|
release:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- run: |
|
|
mkdir bin
|
|
cd bin
|
|
curl -L https://gitea.sugoidogo.com/sugoidogo/packwiz/releases/download/latest/packwiz_snapshot_linux_arm64.tar.gz | tar -xzvf - packwiz
|
|
chmod +x packwiz
|
|
echo "$PWD" >> "$GITHUB_PATH"
|
|
|
|
- working-directory: ./packwiz
|
|
run: packwiz refresh --build
|
|
|
|
- working-directory: ./packwiz
|
|
run: sed -i "s/version = \"0.0.0\"/version = \"$(git describe --tags --abbrev=0 HEAD)\"/g" pack.toml
|
|
|
|
- run: for var in $(grep = pack.toml | tr -d ' "'); do echo $var; done >> $GITHUB_ENV
|
|
working-directory: ./packwiz
|
|
|
|
- working-directory: ./packwiz
|
|
run: |
|
|
packwiz modrinth export
|
|
mv *.mrpack ../${{ env.name }}.mrpack
|
|
|
|
- working-directory: ./packwiz
|
|
run: |
|
|
packwiz curseforge export
|
|
mv *.zip ../${{ env.name }}-curseforge.zip
|
|
|
|
- run: npm ci
|
|
|
|
- run: npx wrangler deploy
|
|
env:
|
|
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
|
|
- uses: actions/setup-java@v5
|
|
with:
|
|
distribution: 'temurin'
|
|
java-version: '21'
|
|
|
|
- working-directory: ./prism
|
|
run: |
|
|
mkdir minecraft
|
|
cd minecraft
|
|
wget https://gitea.sugoidogo.com/sugoidogo/packwiz-installer-bootstrap/releases/download/latest/packwiz-installer-bootstrap-all.jar
|
|
java -jar packwiz-installer-bootstrap-all.jar -g ../../packwiz/pack.toml
|
|
|
|
- uses: montudor/action-zip@v1
|
|
with:
|
|
args: zip -r ${{ env.name }}-prism.zip prism
|
|
|
|
- run: git log $(git describe --tags --abbrev=0 HEAD~1)..HEAD --oneline > changelog.txt
|
|
|
|
- uses: softprops/action-gh-release@v2
|
|
with:
|
|
make_latest: true
|
|
body_path: changelog.txt
|
|
files: |
|
|
${{ env.name }}.mrpack
|
|
${{ env.name }}-curseforge.zip
|
|
${{ env.name }}-prism.zip
|
|
|
|
- if: ${{ env.MODRINTH_TOKEN && env.MODRINTH_ID }}
|
|
run: |
|
|
if [[ ! -z "${{ env.forge }} "]]; then echo "LOADER=forge" >> $GITHUB_ENV
|
|
if [[ ! -z "${{ env.fabric }} "]]; then echo "LOADER=fabric" >> $GITHUB_ENV
|
|
if [[ ! -z "${{ env.neoforge }} "]]; then echo "LOADER=neoforge" >> $GITHUB_ENV
|
|
if [[ ! -z "${{ env.quilt }} "]]; then echo "LOADER=quilt" >> $GITHUB_ENV
|
|
|
|
- if: ${{ env.MODRINTH_TOKEN && env.MODRINTH_ID }}
|
|
uses: cloudnode-pro/modrinth-publish@v2
|
|
with:
|
|
project: ${{ env.MODRINTH_ID }}
|
|
loaders: ${{ env.LOADER }}
|
|
token: ${{ env.MODRINTH_TOKEN }}
|
|
version: ${{ env.version }}
|
|
files: ${{ env.name }}.mrpack
|
|
|
|
- if: ${{ env.CURSEFORGE_TOKEN && env.CURSEFORGE_ID }}
|
|
uses: itsmeow/curseforge-upload@v3
|
|
with:
|
|
project_id: ${{ env.CURSEFORGE_ID }}
|
|
token: ${{ env.CURSEFORGE_TOKEN }}
|
|
game_endpoint: 'minecraft'
|
|
file_path: ${{ env.name }}-curseforge.zip |