(feat): add auto update for dev builds on dev builds
All checks were successful
/ build-web (push) Successful in 1m17s
/ build-desktop (linux) (push) Successful in 5m42s
/ build-mobile (push) Successful in 11m33s
/ release (push) Successful in 29s

This commit is contained in:
Alois 2026-05-25 14:05:20 +02:00
commit 2440fedaad
4 changed files with 71 additions and 8 deletions

View file

@ -104,6 +104,20 @@ jobs:
- name: Build packages
run: bun run build:packages
- name: Set Electron dev version
run: |
VERSION="$(node -p "require('./package.json').version")"
SHORT_SHA="$(git rev-parse --short HEAD)"
DEV_VERSION="$VERSION-dev-$SHORT_SHA"
export DEV_VERSION
node -e '
const fs = require("fs");
const path = "apps/electron/package.json";
const pkg = JSON.parse(fs.readFileSync(path, "utf8"));
pkg.version = process.env.DEV_VERSION;
fs.writeFileSync(path, JSON.stringify(pkg, null, 2) + "\n");
'
- name: Build Electron desktop
run: bun run build:desktop
@ -143,9 +157,6 @@ jobs:
name: electron-desktop-linux
path: apps/electron/release/
- name: Copy releases
run: bun --bun run copy-releases
- name: Read version and hash
id: version
run: |
@ -156,6 +167,15 @@ jobs:
echo "tag=${VERSION}-dev-${SHORT_SHA}" >> "$FORGEJO_OUTPUT"
echo "title=${VERSION}-dev-${SHORT_SHA}" >> "$FORGEJO_OUTPUT"
- name: Copy releases
env:
TENSAMIN_RELEASE_VERSION: ${{ steps.version.outputs.tag }}
TENSAMIN_RELEASE_TAG: ${{ steps.version.outputs.tag }}
run: |
ASSET_BASE_URL="${{ forgejo.api_url }}"
ASSET_BASE_URL="${ASSET_BASE_URL%/api/v1}/${{ forgejo.repository }}/releases/download/${{ steps.version.outputs.tag }}"
FORGEJO_RELEASE_ASSET_BASE_URL="$ASSET_BASE_URL" bun --bun run copy-releases
- name: Create pre-release and upload files
env:
TOKEN: ${{ forgejo.token }}
@ -239,6 +259,7 @@ jobs:
const fs = require("fs");
const path = "releases/electron-release-metadata.json";
const metadata = JSON.parse(fs.readFileSync(path, "utf8"));
metadata.version = process.env.TAG;
metadata.tag = process.env.TAG;
for (const artifact of metadata.artifacts || []) {
artifact.url = `${process.env.ASSET_BASE_URL}/${encodeURIComponent(artifact.name)}`;