@@ -3,11 +3,25 @@ import packageJson from './package.json';
33import { Configuration } from '@rspack/cli' ;
44import rspack from '@rspack/core' ;
55import { ModuleFederationPlugin } from '@module-federation/enhanced/rspack' ;
6+ import fs from 'fs' ;
67
78const deps = packageJson . dependencies ;
89
910const isProduction = process . env . NODE_ENV === 'production' ;
1011
12+ let version = process . env . VERSION ;
13+ if ( ! version ) {
14+ const versionFileContents = fs . readFileSync (
15+ path . join ( __dirname , '../VERSION' ) ,
16+ { encoding : 'utf-8' } ,
17+ ) ;
18+ const versionRegex =
19+ / .* V E R S I O N _ M A J O R = (?< versionMajor > \d + ) ( \n ) { 0 , 1 } .* V E R S I O N _ M I N O R = (?< versionMinor > \d + ) ( \n ) { 0 , 1 } .* V E R S I O N _ P A T C H = (?< versionPatch > \d + ) ( \n ) { 0 , 1 } .* V E R S I O N _ S U F F I X = (?< versionSuffix > .* ) / m;
20+ const { versionMajor, versionMinor, versionPatch, versionSuffix } =
21+ versionRegex . exec ( versionFileContents ) . groups ;
22+ version = `${ versionMajor } .${ versionMinor } .${ versionPatch } ${ versionSuffix } ` ;
23+ }
24+
1125const config : Configuration = {
1226 entry : {
1327 metalk8s_ui : './src/index.ts' ,
@@ -97,7 +111,7 @@ const config: Configuration = {
97111 plugins : [
98112 new ModuleFederationPlugin ( {
99113 name : 'metalk8s' ,
100- filename : ' static/js/remoteEntry.js' ,
114+ filename : ` static/js/remoteEntry.${ version } .js` ,
101115 exposes : {
102116 './FederableApp' : './src/FederableApp.tsx' ,
103117 './platformLibrary' : './src/services/platformlibrary/k8s.ts' ,
0 commit comments