Release CI/CD
CI / ci (push) Successful in 1m29s
Release Creation / build (release) Successful in 1m38s

This commit is contained in:
2026-05-25 15:25:30 +02:00
parent 4a43c0b6a6
commit 97ff77cbce
+56 -56
View File
@@ -8,69 +8,69 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- run: echo "💡 The ${{ gitea.repository }} repository will be cloned to the runner." - run: echo "💡 The ${{ gitea.repository }} repository will be cloned to the runner."
- uses: RouxAntoine/checkout@v3.5.4 - uses: RouxAntoine/checkout@v3.5.4
# get part of the tag after the `v` # get part of the tag after the `v`
- name: Extract tag version number - name: Extract tag version number
id: get_version id: get_version
uses: battila7/get-version-action@v2 uses: battila7/get-version-action@v2
# Substitute the Manifest and Download URLs in the module.json # Substitute the Manifest and Download URLs in the module.json
- name: Substitute Manifest and Download Links For Versioned Ones - name: Substitute Manifest and Download Links For Versioned Ones
id: sub_manifest_link_version id: sub_manifest_link_version
uses: microsoft/variable-substitution@v1 uses: microsoft/variable-substitution@v1
with: with:
files: 'module.json' files: "module.json"
env: env:
version: ${{steps.get_version.outputs.version-without-v}} version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/${{gitea.repository}} url: https://www.uberwald.me/gitea/${{gitea.repository}}
manifest: https://www.uberwald.me/gitea/public/${{gitea.repository}}/releases/download/latest/module.json manifest: https://www.uberwald.me/gitea/public/${{gitea.repository}}/releases/download/latest/module.json
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{gitea.event.release.tag_name}}/module.zip download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{gitea.event.release.tag_name}}/module.zip
# Set up Node.js # Set up Node.js
- name: Setup Node.js - name: Setup Node.js
uses: https://github.com/actions/setup-node@v4 uses: https://github.com/actions/setup-node@v4
with: with:
node-version: '20' node-version: "20"
- name: Install dependencies - name: Install dependencies
run: npm ci run: npm ci
- name: Build - name: Build
run: npm run build run: npm run build
# Create a zip file with all files required by the module to add to the release # Create a zip file with all files required by the module to add to the release
- run: | - run: |
apt update -y apt update -y
apt install -y zip apt install -y zip
- run: node scripts/package.mjs - run: node scripts/package.mjs
- name: Upload release assets - name: Upload release assets
run: | run: |
# Upload module.zip # Upload module.zip
curl -s -X POST \ curl -s -X POST \
-H "Content-Type: application/octet-stream" \ -H "Content-Type: application/octet-stream" \
-H "Authorization: token ${{secrets.ALLOW_PUSH_RELEASE}}" \ -H "Authorization: token ${{secrets.RELEASE_SCRYING_POOL}}" \
--data-binary @./module.zip \ --data-binary @./module.zip \
"https://www.uberwald.me/api/v1/repos/${{gitea.repository}}/releases/${{gitea.event.release.id}}/assets?name=module.zip" "https://www.uberwald.me/api/v1/repos/${{gitea.repository}}/releases/${{gitea.event.release.id}}/assets?name=module.zip"
# Upload module.json
curl -s -X POST \
-H "Content-Type: application/json" \
-H "Authorization: token ${{secrets.ALLOW_PUSH_RELEASE}}" \
--data-binary @./module.json \
"https://www.uberwald.me/api/v1/repos/${{gitea.repository}}/releases/${{gitea.event.release.id}}/assets?name=module.json"
- name: Publish to Foundry server # Upload module.json
uses: https://github.com/djlechuck/foundryvtt-publish-package-action@v1 curl -s -X POST \
with: -H "Content-Type: application/json" \
token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }} -H "Authorization: token ${{secrets.RELEASE_SCRYING_POOL}}" \
id: 'scrying-pool' --data-binary @./module.json \
version: ${{gitea.event.release.tag_name}} "https://www.uberwald.me/api/v1/repos/${{gitea.repository}}/releases/${{gitea.event.release.id}}/assets?name=module.json"
manifest: 'https://www.uberwald.me/gitea/public/${{gitea.repository}}/releases/download/latest/module.json'
notes: 'https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{gitea.event.release.tag_name}}/module.zip' # - name: Publish to Foundry server
compatibility-minimum: '14' # uses: https://github.com/djlechuck/foundryvtt-publish-package-action@v1
compatibility-verified: '14' # with:
# token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }}
# id: "scrying-pool"
# version: ${{gitea.event.release.tag_name}}
# manifest: "https://www.uberwald.me/gitea/public/${{gitea.repository}}/releases/download/latest/module.json"
# notes: "https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{gitea.event.release.tag_name}}/module.zip"
# compatibility-minimum: "14"
# compatibility-verified: "14"