Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Refactor build-linux-bundle.mjs to include package version and build number from environment variables and package.json. Update headless.js to streamline initialization and improve error handling. Introduce serverVersion.js to centralize version information retrieval, replacing redundant code in localserver.js. Enhance logging in index.js to display build number and version more clearly.
30 lines
757 B
JavaScript
30 lines
757 B
JavaScript
import { readFileSync } from "node:fs";
|
|
|
|
const readJsonFile = (fileUrl) => {
|
|
try {
|
|
return JSON.parse(readFileSync(fileUrl, "utf8"));
|
|
} catch {
|
|
return {};
|
|
}
|
|
};
|
|
|
|
const packageJsonUrl = new URL("../package.json", import.meta.url);
|
|
const buildInfoUrl = new URL("./buildInfo.json", import.meta.url);
|
|
|
|
export const getServerVersionInfo = () => {
|
|
if (process.env.FC_PACKAGE_VERSION && process.env.FC_BUILD_NUMBER) {
|
|
return {
|
|
version: process.env.FC_PACKAGE_VERSION,
|
|
buildNumber: process.env.FC_BUILD_NUMBER,
|
|
};
|
|
}
|
|
|
|
const packageJson = readJsonFile(packageJsonUrl);
|
|
const buildInfo = readJsonFile(buildInfoUrl);
|
|
|
|
return {
|
|
version: packageJson.version ?? "dev",
|
|
buildNumber: buildInfo.buildNumber ?? "dev",
|
|
};
|
|
};
|