diff --git a/apps/api/src/environments/environment.prod.ts b/apps/api/src/environments/environment.prod.ts index 90397fa89..e5e97e410 100644 --- a/apps/api/src/environments/environment.prod.ts +++ b/apps/api/src/environments/environment.prod.ts @@ -1,7 +1,30 @@ import { DEFAULT_HOST, DEFAULT_PORT } from '@ghostfolio/common/config'; +import { readFileSync } from 'node:fs'; +import { join } from 'node:path'; + +const getVersion = () => { + if (process.env.APP_VERSION) { + return process.env.APP_VERSION; + } + + if (process.env.npm_package_version) { + return process.env.npm_package_version; + } + + try { + const packageJson = JSON.parse( + readFileSync(join(process.cwd(), 'package.json'), 'utf8') + ); + + return packageJson.version ?? 'dev'; + } catch { + return 'dev'; + } +}; + export const environment = { production: true, rootUrl: `http://${DEFAULT_HOST}:${DEFAULT_PORT}`, - version: process.env.npm_package_version ?? 'dev' + version: getVersion() };