(feat): add auto update for dev builds on dev builds
This commit is contained in:
parent
e146ae2710
commit
2440fedaad
4 changed files with 71 additions and 8 deletions
|
|
@ -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)}`;
|
||||
|
|
|
|||
|
|
@ -104,6 +104,18 @@ jobs:
|
|||
- name: Build packages
|
||||
run: bun run build:packages
|
||||
|
||||
- name: Set Electron prod version
|
||||
run: |
|
||||
VERSION="$(node -p "require('./package.json').version")"
|
||||
export 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.VERSION;
|
||||
fs.writeFileSync(path, JSON.stringify(pkg, null, 2) + "\n");
|
||||
'
|
||||
|
||||
- name: Build Electron desktop
|
||||
run: bun run build:desktop
|
||||
|
||||
|
|
@ -141,9 +153,6 @@ jobs:
|
|||
name: electron-desktop-linux
|
||||
path: apps/electron/release/
|
||||
|
||||
- name: Copy releases
|
||||
run: bun --bun run copy-releases
|
||||
|
||||
- name: Read version
|
||||
id: version
|
||||
run: |
|
||||
|
|
@ -151,6 +160,15 @@ jobs:
|
|||
echo "version=$VERSION" >> "$FORGEJO_OUTPUT"
|
||||
echo "tag=$VERSION" >> "$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 release and upload files
|
||||
env:
|
||||
TOKEN: ${{ forgejo.token }}
|
||||
|
|
@ -198,6 +216,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)}`;
|
||||
|
|
|
|||
Loading…
Reference in a new issue