Ma77Ball commented on code in PR #5849:
URL: https://github.com/apache/texera/pull/5849#discussion_r3488573632
##########
frontend/build-version.js:
##########
@@ -23,19 +23,32 @@
// Dev builds (`yarn start`) keep the static "dev" string in version.ts.
const { generate } = require("build-number-generator");
-const { version } = require("./package.json");
const { resolve } = require("path");
const { writeFileSync } = require("fs");
-const buildNumber = generate(version);
-const out = resolve(__dirname, "src", "environments", "version.prod.ts");
-writeFileSync(
- out,
- `// AUTO-GENERATED by build-version.js — do not edit or commit.
+// Returns the contents of version.prod.ts and version.json for a version.
+function renderVersionArtifacts(version, buildNumber = generate(version)) {
+ const prodTs = `// AUTO-GENERATED by build-version.js — do not edit or
commit.
export const Version = {
buildNumber: ${JSON.stringify(buildNumber)},
version: ${JSON.stringify(version)},
};
-`,
-);
-console.log(`build-version: ${buildNumber}`);
+`;
+ const manifestJson = JSON.stringify({ buildNumber, version }) + "\n";
+ return { buildNumber, prodTs, manifestJson };
+}
+
+function main() {
+ const { version } = require("./package.json");
+ const { buildNumber, prodTs, manifestJson } =
renderVersionArtifacts(version);
+ writeFileSync(resolve(__dirname, "src", "environments", "version.prod.ts"),
prodTs);
+ writeFileSync(resolve(__dirname, "src", "assets", "version.json"),
manifestJson);
+ console.log(`build-version: ${buildNumber}`);
+}
Review Comment:
the build number comes from the frontend build (timestamp-based) baked into
the dashboard image, and config-service never runs that build, so it'd need us
to inject the number at deploy, plus being a separate pod it can drift from
what's actually served. `version.json` ships right next to the bundles so it's
always in sync, so I'd lean toward keeping it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]