ソースを参照

Merge pull request #14048 from open-webui/main

dev
Tim Jaeryang Baek 4 ヶ月 前
コミット
5613cda5cf
2 ファイル変更21 行追加1 行削除
  1. 4 0
      .github/workflows/release-pypi.yml
  2. 17 1
      svelte.config.js

+ 4 - 0
.github/workflows/release-pypi.yml

@@ -17,6 +17,10 @@ jobs:
     steps:
       - name: Checkout repository
         uses: actions/checkout@v4
+        with:
+          fetch-depth: 0
+      - name: Install Git
+        run: sudo apt-get update && sudo apt-get install -y git
       - uses: actions/setup-node@v4
         with:
           node-version: 22

+ 17 - 1
svelte.config.js

@@ -1,6 +1,7 @@
 import adapter from '@sveltejs/adapter-static';
 import * as child_process from 'node:child_process';
 import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
+import fs from 'node:fs';
 
 /** @type {import('@sveltejs/kit').Config} */
 const config = {
@@ -18,7 +19,22 @@ const config = {
 		}),
 		// poll for new version name every 60 seconds (to trigger reload mechanic in +layout.svelte)
 		version: {
-			name: child_process.execSync('git rev-parse HEAD').toString().trim(),
+			name: (() => {
+				try {
+					return child_process.execSync('git rev-parse HEAD').toString().trim();
+				} catch {
+					// if git is not available, fallback to package.json version
+					// or current timestamp
+					try {
+						return (
+							JSON.parse(fs.readFileSync(new URL('./package.json', import.meta.url), 'utf8'))
+								?.version || Date.now().toString()
+						);
+					} catch {
+						return Date.now().toString();
+					}
+				}
+			})(),
 			pollInterval: 60000
 		}
 	},