neuralgia/.github/workflows/release.yml
2023-12-14 19:32:43 +05:00

101 lines
4.1 KiB
YAML

name: Deploy modpack
on:
push:
tags:
- "*.*.*"
jobs:
Deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
- name: Get the version
id: get_version
run: echo ::set-output name=version::${GITHUB_REF#refs/tags/}
- name: Set the version
run: |
DEV=${{ steps.get_version.outputs.version }}
sed -i -e "s/DEV/${DEV}/g" .github/buildtools/modpack/manifest.json
sed -i -e "s/DEV/${DEV}/g" .github/buildtools/modpack/instance.cfg
sed -i -e "s/DEV/${DEV}/g" config/fancymenu/customization/main_menu.txt
sed -i -e "s/DEV/${DEV}/g" config/bcc-common.toml
- name: Changelog Parser
id: changelog
uses: coditory/changelog-parser@v1.0.2
with:
path: CHANGELOG.md
- name: Submodule init
run: |
git submodule init
cd mods
git config --global credential.helper '!f() { echo "username=Xikaro"; echo "password=${{ secrets.USER_TOKEN_XIKARO }}"; }; f'
git submodule update --recursive
- name: Archive CF
run: |
mkdir -p overrides
cp -r {config,defaultconfigs,kubejs} overrides/
mv -vf .github/buildtools/modpack/manifest.json ./
mv -vf .github/buildtools/modpack/modlist.html ./
zip -r ./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-cf.zip manifest.json modlist.html overrides
- name: Archive MMC
run: |
cp -r mods overrides/
mv -vf overrides/ .minecraft/
mv -vf .github/buildtools/modpack/mmc-pack.json ./
mv -vf .github/buildtools/modpack/instance.cfg ./
zip -r ./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-mmc.zip .github/buildtools/modpack/mmc-pack.json .github/buildtools/modpack/instance.cfg .minecraft/
- name: Archive Server
run: |
cp -r .github/buildtools/serverpack/* .minecraft/
cat .github/buildtools/client_mod.txt | while read -r line; do find .minecraft/mods -name "$line" -delete; done
cd .minecraft/
zip -r ../TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-server.zip ./
- name: Upload Curseforge
uses: henkelmax/upload-curseforge-modpack-action@v1.0.0
with:
api-token: ${{ secrets.CF_API_TOKEN }}
project-id: "385053"
modpack-path: ./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-cf.zip
modpack-server-path: ./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-server.zip
changelog: "${{ steps.changelog.outputs.description }}"
changelog-format: markdown
game-version: "1.20.1"
display-name: TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}
server-display-name: TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-server
release-type: "beta"
- name: Create GitHub Release
uses: softprops/action-gh-release@v0.1.15
if: startsWith(github.ref, 'refs/tags/')
with:
prerelease: false
generate_release_notes: true
name: ${{ steps.changelog.outputs.version }}
body: ${{ steps.changelog.outputs.description }}
files: |
./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-cf.zip
./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-mmc.zip
./TerraFirmaGreg-1.20.x-${{ steps.get_version.outputs.version }}-server.zip
- name: Discord notification
uses: tsickert/discord-webhook@v5.4.0
with:
webhook-url: ${{ secrets.RELEASES_1_20 }}
username: "GitHub"
avatar-url: https://github.com/TerraFirmaGreg-Team/.github/blob/main/branding/logo_new_year.png
embed-title: Release ${{ steps.changelog.outputs.version }}
embed-description: "${{ steps.changelog.outputs.description }}"
embed-url: https://github.com/TerraFirmaGreg-Team/TFG-Modpack-1.20.x/tree/main/CHANGELOG.md
embed-color: 5814783
embed-footer-text: ${{ steps.changelog.outputs.date }}