|
|
|
|
@ -3,14 +3,20 @@ import { defineConfig } from "vite";
@@ -3,14 +3,20 @@ import { defineConfig } from "vite";
|
|
|
|
|
import { execSync } from "child_process"; |
|
|
|
|
|
|
|
|
|
// Function to get the latest git tag
|
|
|
|
|
function getLatestGitTag() { |
|
|
|
|
function getAppVersionString() { |
|
|
|
|
// if running in ci context, we can assume the package has been properly versioned
|
|
|
|
|
if (process.env.ALEXANDIRA_IS_CI_BUILD) { |
|
|
|
|
return process.env.npm_package_version; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
// Get the latest git tag
|
|
|
|
|
// Get the latest git tag, assuming git is installed and tagged branch is available
|
|
|
|
|
const tag = execSync('git describe --tags --abbrev=0').toString().trim(); |
|
|
|
|
return tag; |
|
|
|
|
} catch (error) { |
|
|
|
|
console.error("Failed to get git tag:", error); |
|
|
|
|
return "unknown"; |
|
|
|
|
// Fallback to package version
|
|
|
|
|
return process.env.npm_package_version; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -26,7 +32,7 @@ export default defineConfig({
@@ -26,7 +32,7 @@ export default defineConfig({
|
|
|
|
|
include: ['./tests/unit/**/*.unit-test.js'] |
|
|
|
|
}, |
|
|
|
|
define: { |
|
|
|
|
// Expose the git tag as a global variable
|
|
|
|
|
'import.meta.env.GIT_TAG': JSON.stringify(getLatestGitTag()) |
|
|
|
|
// Expose the app version as a global variable
|
|
|
|
|
'import.meta.env.APP_VERSION': JSON.stringify(getAppVersionString()) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|