Build release script

This commit is contained in:
2026-04-21 18:57:53 +02:00
parent 6ef454d533
commit bdc305abd8

View File

@@ -0,0 +1,81 @@
name: Release Creation
on:
release:
types: [published]
jobs:
build:
runs-on: ubuntu-latest
steps:
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
- uses: RouxAntoine/checkout@v3.5.4
# get part of the tag after the `v`
- name: Extract tag version number
id: get_version
uses: battila7/get-version-action@v2
# Substitute the Manifest and Download URLs in the system.json
- name: Substitute Manifest and Download Links For Versioned Ones
id: sub_manifest_link_version
uses: microsoft/variable-substitution@v1
with:
files: "system.json"
env:
version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/${{gitea.repository}}
manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/latest/system.json
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/mgt2.zip
# Install Node.js and build the JS bundle
- name: Setup Node.js
uses: https://github.com/actions/setup-node@v3
with:
node-version: "20"
- name: Install JS dependencies
run: npm install
- name: Build JS bundle
run: npm run build
# Install Sass and compile CSS
- name: Install Sass
run: npm install -g sass
- name: Build CSS
run: sass src/sass/mgt2.sass styles/mgt2.min.css --style=compressed --no-source-map
# Create a zip file with all files required by the system to add to the release
- name: Install zip
run: apt update -y && apt install -y zip
- name: Create release zip
run: zip -r ./mgt2.zip system.json template.json README.md LICENSE mgt2.bundle.js assets/ lang/ styles/ templates/
- name: setup go
uses: https://github.com/actions/setup-go@v4
with:
go-version: ">=1.20.1"
- name: Use Go Action
id: use-go-action
uses: https://gitea.com/actions/release-action@main
with:
files: |-
./mgt2.zip
system.json
api_key: "${{secrets.ALLOW_PUSH_RELEASE}}"
- name: Publish to Foundry server
uses: https://github.com/djlechuck/foundryvtt-publish-package-action@v1
with:
token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }}
id: "mgt2"
version: ${{github.event.release.tag_name}}
manifest: "https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/latest/system.json"
notes: "https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/mgt2.zip"
compatibility-minimum: "13"
compatibility-verified: "14"