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: Changelog Parser id: changelog uses: coditory/changelog-parser@v1.0.2 with: path: CHANGELOG.md - name: Set the version run: | DEV=${{ steps.get_version.outputs.version }} sed -i -e "s/DEV/${DEV}/g" manifest.json sed -i -e "s/DEV/${DEV}/g" 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: Move run: | rsync -av --exclude-from='.github/buildtools/filelist.txt' ./ .minecraft/ - name: Archive MMC run: | zip -r ./TerraFirmaGreg-1.20-${{ steps.get_version.outputs.version }}-mmc.zip mmc-pack.json instance.cfg .minecraft/ - name: Archive CF run: | mv -vf .minecraft/ overrides/ zip -r ./TerraFirmaGreg-1.20-${{ steps.get_version.outputs.version }}-cf.zip manifest.json modlist.html overrides/config/ overrides/kubejs/ overrides/defaultconfigs/ - name: Archive Server run: | cp -r .github/buildtools/serverfiles/* overrides/ cat .github/buildtools/client_mod.txt | while read -r line; do find overrides/mods -name "$line" -delete; done cd overrides/ zip -r ../TerraFirmaGreg-1.20-${{ 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-${{ steps.get_version.outputs.version }}-cf.zip modpack-server-path: ./TerraFirmaGreg-1.20-${{ 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-${{ steps.get_version.outputs.version }} server-display-name: TerraFirmaGreg-1.20-${{ 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: Release ${{ steps.changelog.outputs.version }} body: ${{ steps.changelog.outputs.description }} files: | ./TerraFirmaGreg-1.20-${{ steps.get_version.outputs.version }}-cf.zip ./TerraFirmaGreg-1.20-${{ steps.get_version.outputs.version }}-mmc.zip ./TerraFirmaGreg-1.20-${{ steps.get_version.outputs.version }}-server.zip - name: Discord notification uses: tsickert/discord-webhook@v5.3.0 with: webhook-url: ${{ secrets.RELEASES_1_20 }} username: "GitHub" avatar-url: https://github.com/TerraFirmaGreg-Team/.github/blob/6279c7b205e642fd6b1398f55df988dfd306d265/branding/logo.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: 15430476 embed-footer-text: ${{ steps.changelog.outputs.date }}