@eui/tools 6.14.20 → 6.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.version.properties +1 -1
  2. package/CHANGELOG.md +18 -0
  3. package/package.json +1 -1
  4. package/sandbox.js +15 -25
  5. package/scripts/csdr/audit/styles.js +1 -1
  6. package/scripts/csdr/config/remotes.js +1 -1
  7. package/scripts/csdr/install/build-app.js +2 -2
  8. package/scripts/csdr/install/build-package.js +2 -2
  9. package/scripts/csdr/install/common.js +1 -1
  10. package/scripts/csdr/install/composite-core.js +49 -87
  11. package/scripts/csdr/install/projects.js +5 -7
  12. package/scripts/csdr/install/remotes.js +11 -11
  13. package/scripts/csdr/metadata/app.js +2 -2
  14. package/scripts/csdr/metadata/backend.js +148 -0
  15. package/scripts/csdr/metadata/metadata-utils.js +3 -4
  16. package/scripts/csdr/metadata/{package.js → package-utils.js} +0 -164
  17. package/scripts/csdr/metadata/remote-history.js +353 -0
  18. package/scripts/csdr/metadata/remote-package.js +188 -1
  19. package/scripts/csdr/metadata/stats.js +79 -79
  20. package/scripts/csdr/release/app/release-app-group.js +0 -9
  21. package/scripts/csdr/release/app/release-app.js +9 -18
  22. package/scripts/csdr/release/package/common.js +19 -119
  23. package/scripts/csdr/release/package/release-backend.js +7 -6
  24. package/scripts/csdr/release/package/release-old-remote.js +4 -23
  25. package/scripts/csdr/release/package/release-package.js +1 -1
  26. package/scripts/csdr/release/package/release-ui.js +30 -47
  27. package/scripts/csdr/release/package/release-virtual-remote.js +45 -19
  28. package/scripts/csdr/version/common.js +0 -2
  29. package/scripts/csdr/version/package-remote.js +2 -4
  30. package/scripts/index.js +4 -4
  31. package/scripts/utils/notification/slack-utils.js +1 -1
  32. package/scripts/utils/remotes/remotes-utils.js +6 -0
  33. package/scripts/csdr/metadata/package-envs.js +0 -70
  34. package/scripts/csdr/metadata/package-history.js +0 -368
  35. package/scripts/csdr/metadata/package-versions.js +0 -91
  36. package/scripts/csdr/metadata/v2/app/_app.js +0 -21
  37. package/scripts/csdr/metadata/v2/app/app.js +0 -25
  38. package/scripts/csdr/metadata/v2/app/index.js +0 -3
  39. package/scripts/csdr/metadata/v2/global/_global.js +0 -21
  40. package/scripts/csdr/metadata/v2/global/global.js +0 -25
  41. package/scripts/csdr/metadata/v2/global/index.js +0 -3
  42. package/scripts/csdr/metadata/v2/index.js +0 -5
  43. package/scripts/csdr/metadata/v2/migrate-devops-metadata.js +0 -207
  44. package/scripts/csdr/metadata/v2/package/_package.js +0 -21
  45. package/scripts/csdr/metadata/v2/package/index.js +0 -3
  46. package/scripts/csdr/metadata/v2/package/package.js +0 -25
@@ -2,11 +2,107 @@
2
2
 
3
3
  // GLOBAL
4
4
  const path = require('path');
5
+ const moment = require('moment');
5
6
 
6
7
  // LOCAL
7
8
  const tools = require('../../utils/tools');
8
9
  const configUtils = require('../config/config-utils');
9
10
 
11
+ // ARGS
12
+ const { dryRun } = tools.getArgs();
13
+
14
+
15
+ module.exports.storeMetadata = (pkg, pkgVersion, pkgCompositeDeps, duration, envTarget) => {
16
+ tools.logTitle('Storing central and package metadata...');
17
+
18
+ return Promise.resolve()
19
+ .then(() => {
20
+ return storeMetadataVersions(pkg, pkgVersion, pkgCompositeDeps, duration, envTarget);
21
+ })
22
+
23
+ .then(() => {
24
+ return storeMetadataEnvs(pkg, pkgVersion, pkgCompositeDeps, envTarget);
25
+ })
26
+
27
+ .then(() => {
28
+ tools.logSuccess();
29
+ })
30
+
31
+ .catch((e) => {
32
+ throw e;
33
+ });
34
+ };
35
+
36
+ module.exports.getMetadataVersions = (pkg) => {
37
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
38
+
39
+ return Promise.resolve()
40
+ .then(() => {
41
+ if (!DEVOPS_METADATA_PATH) {
42
+ throw new Error(`Devops metadata folder ${DEVOPS_METADATA_PATH} NOT FOUND`) ;
43
+ }
44
+
45
+ return tools.getJsonFileContent(path.join(DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile));
46
+ })
47
+ .catch((e) => {
48
+ throw e;
49
+ })
50
+ }
51
+
52
+
53
+ const storeMetadataVersions = (pkg, pkgVersion, pkgCompositeDeps, duration, envTarget) => {
54
+ return Promise.resolve()
55
+ .then(() => {
56
+ tools.logInfo('Storing package version history metadata...');
57
+
58
+ const configOptions = configUtils.global.getConfigOptions();
59
+
60
+ let generatedMetadata = {};
61
+ let versions = [];
62
+
63
+ let pkgMetadataFile = path.join(configOptions.DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile);
64
+ if (pkg.backend) {
65
+ pkgMetadataFile = path.join(pkg.paths.root, 'package-versions-metadata.json');
66
+ }
67
+
68
+ if (tools.isFileExists(pkgMetadataFile)) {
69
+ generatedMetadata = require(pkgMetadataFile);
70
+ versions = generatedMetadata.versions;
71
+ }
72
+
73
+ const newVersionMetadata = {
74
+ name: pkg.name,
75
+ version: pkgVersion,
76
+ date: moment(new Date()).format("YYYYMMDD-HH:mm"),
77
+ npmPkg: pkg.npmPkg,
78
+ duration: duration,
79
+ envTarget: envTarget,
80
+ };
81
+
82
+ if (pkg.remote) {
83
+ tools.logInfo('Writing remote composite dependencies');
84
+ newVersionMetadata.dependencies = pkgCompositeDeps;
85
+ }
86
+ console.log(newVersionMetadata);
87
+ versions.push(newVersionMetadata);
88
+ generatedMetadata.versions = versions;
89
+
90
+ tools.logInfo(`Write metadata on ${pkgMetadataFile}`);
91
+
92
+ if (dryRun) {
93
+ tools.logInfo('DRY RUN...outputing newVersionMetadata');
94
+
95
+ } else {
96
+ tools.writeJsonFileSync(pkgMetadataFile, generatedMetadata);
97
+ }
98
+ })
99
+
100
+ .catch((e) => {
101
+ throw e;
102
+ })
103
+ }
104
+
105
+
10
106
 
11
107
  const getPackageVersionsJson = (pkg) => {
12
108
  if (!pkg) {
@@ -17,7 +113,6 @@ const getPackageVersionsJson = (pkg) => {
17
113
  tools.logInfo(`Getting package versions for : ${pkg.name}...`);
18
114
 
19
115
  const configOptions = configUtils.global.getConfigOptions();
20
-
21
116
  const pkgMetadataFile = path.join(configOptions.DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile);
22
117
 
23
118
  tools.logInfo(`from ${pkgMetadataFile}`);
@@ -34,3 +129,95 @@ module.exports.getPackageVersionsLatest = (pkg) => {
34
129
  });
35
130
  }
36
131
  }
132
+
133
+
134
+ module.exports.storeMetadataAssets = (pkg, pkgCompositeDeps) => {
135
+ return Promise.resolve()
136
+ .then(() => {
137
+ const pkgMetadataFile = path.join(pkg.paths.dist, 'bundles', 'package-metadata.json');
138
+ const pkgMetadataRootFile = path.join(pkg.paths.root, 'package-metadata.json');
139
+
140
+ const pkgMetadata = {
141
+ dependencies: pkgCompositeDeps,
142
+ };
143
+
144
+ if (dryRun) {
145
+ tools.logInfo('DRY RUN...outputing metadataAssets');
146
+ console.log(pkgMetadata);
147
+
148
+ } else {
149
+ tools.logInfo(`Creating ${pkgMetadataFile}`);
150
+ console.log(pkgMetadata);
151
+
152
+ tools.writeJsonFileSync(pkgMetadataFile, pkgMetadata);
153
+ tools.writeJsonFileSync(pkgMetadataRootFile, pkgMetadata);
154
+ }
155
+ })
156
+
157
+ .catch((e) => {
158
+ throw e;
159
+ });
160
+ };
161
+
162
+
163
+ module.exports.getMetadataEnvs = (pkg) => {
164
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
165
+
166
+ return Promise.resolve()
167
+ .then(() => {
168
+ if (DEVOPS_METADATA_PATH) {
169
+ return tools.getJsonFileContent(path.join(DEVOPS_METADATA_PATH, pkg.devopsEnvsMetadataFile));
170
+ } else {
171
+ return;
172
+ }
173
+ })
174
+ .catch((e) => {
175
+ throw e;
176
+ })
177
+ }
178
+
179
+
180
+
181
+ const storeMetadataEnvs = (pkg, newVersion, metadata, envTarget) => {
182
+ const releaseDate = moment(new Date()).format("DD/MM/YYYY HH:mm");
183
+ const infos = `${newVersion} - ${releaseDate}`;
184
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
185
+
186
+ return Promise.resolve()
187
+ .then(() => {
188
+ tools.logInfo('Storing package environment metadata...');
189
+
190
+ const metadataFile = path.join(DEVOPS_METADATA_PATH, pkg.devopsEnvsMetadataFile);
191
+
192
+ let generatedMetadata;
193
+ if (tools.isFileExists(metadataFile)) {
194
+ generatedMetadata = require(metadataFile);
195
+ } else {
196
+ generatedMetadata = {};
197
+ }
198
+
199
+ generatedMetadata[envTarget] = {
200
+ version: newVersion,
201
+ releaseDate: releaseDate,
202
+ infos: infos,
203
+ dependencies: metadata
204
+ };
205
+
206
+ if (dryRun) {
207
+ tools.logInfo('DRY RUN...storing envs metadata');
208
+ console.log(generatedMetadata[envTarget]);
209
+
210
+ } else {
211
+ tools.logInfo(`Writing envs metadata to ${metadataFile}`);
212
+ tools.writeJsonFileSync(metadataFile, generatedMetadata);
213
+ }
214
+ })
215
+
216
+ .then(() => {
217
+ tools.logSuccess();
218
+ })
219
+
220
+ .catch((e) => {
221
+ throw e;
222
+ })
223
+ }
@@ -455,83 +455,83 @@ module.exports.getCommitsByUsers = (packages, range = 'ALL') => {
455
455
  }
456
456
 
457
457
 
458
- module.exports.getRemoteAllStats = () => {
459
-
460
- let stats = [];
461
-
462
- return Promise.resolve()
463
- .then(() => {
464
- if (!dryRun && !skipClone && !tools.isDirExists(path.join(process.cwd(), 'packages', 'devops-metadata'))) {
465
- return metadataUtils.common.cloneMetadataRepo();
466
- }
467
- })
468
- .then(() => {
469
- let remotesArray = [
470
- ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '17.x'),
471
- ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '16.x'),
472
- ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '15.x'),
473
- ];
474
-
475
- remotesArray = tools.sortArray(remotesArray, 'name');
476
-
477
- remotesArray.forEach((r) => {
478
- try {
479
- const remote = configUtils.remotes.getRemote(r.name);
480
- const versionsMatadata = metadataUtils.packageVersions.getMetadataSync(remote);
481
- let versionsCount = 0, versionsCountEnvs = { "DEV": 0, "TST": 0, "INT": 0, "ACC": 0, "TRN": 0, "PROD": 0}, lastVersion = {};
482
- if (versionsMatadata.versions) {
483
- versionsCount = versionsMatadata.versions.length;
484
- versionsCountEnvs['DEV'] = versionsMatadata.versions.filter(v => v.envTarget === 'DEV').length;
485
- versionsCountEnvs['TST'] = versionsMatadata.versions.filter(v => v.envTarget === 'TST').length;
486
- versionsCountEnvs['INT'] = versionsMatadata.versions.filter(v => v.envTarget === 'INT').length;
487
- versionsCountEnvs['ACC'] = versionsMatadata.versions.filter(v => v.envTarget === 'ACC').length;
488
- versionsCountEnvs['TRN'] = versionsMatadata.versions.filter(v => v.envTarget === 'TRN').length;
489
- versionsCountEnvs['PROD'] = versionsMatadata.versions.filter(v => v.envTarget === 'PROD').length;
490
- lastVersion = versionsMatadata.versions.slice(-1).pop();
491
- }
492
- const remoteStats = {
493
- name: r.name,
494
- // versions: versionsMatadata.versions,
495
- lastVersion,
496
- summary: {
497
- versionsCount,
498
- versionsCountEnvs
499
- }
500
- }
501
- stats.push(remoteStats);
502
- } catch(e) {}
503
- })
504
- })
505
- .then(() => {
506
- return {
507
- stats
508
- }
509
- })
510
- .catch((e) => {
511
- throw e;
512
- })
513
- }
514
-
515
-
516
- module.exports.getRemoteStats = (remoteName) => {
517
- const remote = configUtils.remotes.getRemote(remoteName);
518
-
519
- let versions;
520
-
521
- return Promise.resolve()
522
- .then(() => {
523
- return metadataUtils.packageVersions.getMetadata(remote);
524
- })
525
- .then((metadata) => {
526
- versions = metadata.versions;
527
- })
528
- .then(() => {
529
- return {
530
- versions
531
- }
532
- })
533
- .catch((e) => {
534
- throw e;
535
- })
536
- }
458
+ // module.exports.getRemoteAllStats = () => {
459
+
460
+ // let stats = [];
461
+
462
+ // return Promise.resolve()
463
+ // .then(() => {
464
+ // if (!dryRun && !skipClone && !tools.isDirExists(path.join(process.cwd(), 'packages', 'devops-metadata'))) {
465
+ // return metadataUtils.common.cloneMetadataRepo();
466
+ // }
467
+ // })
468
+ // .then(() => {
469
+ // let remotesArray = [
470
+ // ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '17.x'),
471
+ // ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '16.x'),
472
+ // ...configUtils.remotes.getCsdrRemotesArray('my-workplace', '15.x'),
473
+ // ];
474
+
475
+ // remotesArray = tools.sortArray(remotesArray, 'name');
476
+
477
+ // remotesArray.forEach((r) => {
478
+ // try {
479
+ // const remote = configUtils.remotes.getRemote(r.name);
480
+ // const versionsMatadata = metadataUtils.packageVersions.getMetadataSync(remote);
481
+ // let versionsCount = 0, versionsCountEnvs = { "DEV": 0, "TST": 0, "INT": 0, "ACC": 0, "TRN": 0, "PROD": 0}, lastVersion = {};
482
+ // if (versionsMatadata.versions) {
483
+ // versionsCount = versionsMatadata.versions.length;
484
+ // versionsCountEnvs['DEV'] = versionsMatadata.versions.filter(v => v.envTarget === 'DEV').length;
485
+ // versionsCountEnvs['TST'] = versionsMatadata.versions.filter(v => v.envTarget === 'TST').length;
486
+ // versionsCountEnvs['INT'] = versionsMatadata.versions.filter(v => v.envTarget === 'INT').length;
487
+ // versionsCountEnvs['ACC'] = versionsMatadata.versions.filter(v => v.envTarget === 'ACC').length;
488
+ // versionsCountEnvs['TRN'] = versionsMatadata.versions.filter(v => v.envTarget === 'TRN').length;
489
+ // versionsCountEnvs['PROD'] = versionsMatadata.versions.filter(v => v.envTarget === 'PROD').length;
490
+ // lastVersion = versionsMatadata.versions.slice(-1).pop();
491
+ // }
492
+ // const remoteStats = {
493
+ // name: r.name,
494
+ // // versions: versionsMatadata.versions,
495
+ // lastVersion,
496
+ // summary: {
497
+ // versionsCount,
498
+ // versionsCountEnvs
499
+ // }
500
+ // }
501
+ // stats.push(remoteStats);
502
+ // } catch(e) {}
503
+ // })
504
+ // })
505
+ // .then(() => {
506
+ // return {
507
+ // stats
508
+ // }
509
+ // })
510
+ // .catch((e) => {
511
+ // throw e;
512
+ // })
513
+ // }
514
+
515
+
516
+ // module.exports.getRemoteStats = (remoteName) => {
517
+ // const remote = configUtils.remotes.getRemote(remoteName);
518
+
519
+ // let versions;
520
+
521
+ // return Promise.resolve()
522
+ // .then(() => {
523
+ // return metadataUtils.packageVersions.getMetadata(remote);
524
+ // })
525
+ // .then((metadata) => {
526
+ // versions = metadata.versions;
527
+ // })
528
+ // .then(() => {
529
+ // return {
530
+ // versions
531
+ // }
532
+ // })
533
+ // .catch((e) => {
534
+ // throw e;
535
+ // })
536
+ // }
537
537
 
@@ -46,15 +46,6 @@ module.exports.run = () => {
46
46
  isMaster = branch === 'master';
47
47
  }
48
48
 
49
- // deducting envTarget from branch
50
- let envTargetGen;
51
-
52
- if (isSnapshot || isSupportSnapshotBranch) {
53
- envTargetGen = 'DEV';
54
- } else {
55
- envTargetGen = 'PROD';
56
- }
57
-
58
49
  // Starting the release process
59
50
  return (
60
51
  Promise.resolve()
@@ -17,7 +17,7 @@ module.exports.run = () => {
17
17
  const project = configUtils.projects.getProject();
18
18
 
19
19
  // fetching command parameters
20
- var { branch, dryRun, envTarget, compositeType, configEnvTarget } = utils.tools.getArgs();
20
+ let { branch, envTarget, configEnvTarget } = utils.tools.getArgs();
21
21
 
22
22
  // checking branch and envTarget types
23
23
  if (branch && typeof branch === 'boolean') {
@@ -37,9 +37,9 @@ module.exports.run = () => {
37
37
  }
38
38
 
39
39
  // Getting branch flags
40
- var isSupportSnapshotBranch;
41
- var isSupportBranch;
42
- var isSnapshot;
40
+ let isSupportSnapshotBranch;
41
+ let isSupportBranch;
42
+ let isSnapshot;
43
43
 
44
44
  if (branch) {
45
45
  isSupportSnapshotBranch = branch !== 'master' && branch.indexOf('support/develop') > -1;
@@ -51,7 +51,7 @@ module.exports.run = () => {
51
51
  // Classical app repo develop/master branches can still be used
52
52
  // the envTarget generated is deducted in that case
53
53
 
54
- var envTargetGen;
54
+ let envTargetGen;
55
55
  // when envTarget is provided in process v2 for MWP, this take the lead
56
56
  if (envTarget) {
57
57
  envTargetGen = envTarget;
@@ -61,21 +61,12 @@ module.exports.run = () => {
61
61
  if (isSnapshot || isSupportSnapshotBranch) {
62
62
  envTargetGen = 'DEV';
63
63
  } else {
64
- envTargetGen = 'PROD';
64
+ envTargetGen = 'TST';
65
65
  }
66
66
  }
67
67
 
68
- // Initialize composite type
69
- if (compositeType && typeof compositeType === 'boolean') {
70
- compositeType = null;
71
- }
72
-
73
- if (!compositeType) {
74
- compositeType = 'DEFAULT';
75
- }
76
-
77
68
  // Modules global declarations
78
- var newVersion, packagesDeps;
69
+ let newVersion, packagesDeps;
79
70
 
80
71
  // Starting the release process
81
72
  return (
@@ -100,7 +91,7 @@ module.exports.run = () => {
100
91
 
101
92
  return utils.notification.project.sendProjectMessage({
102
93
  project: project,
103
- text: `:arrow_forward: :arrow_forward: :arrow_forward: :arrow_forward: :arrow_forward: Launching *${project.name}* release for *${envTargetGen}* environment - composite type: *${compositeType}`,
94
+ text: `:arrow_forward: :arrow_forward: :arrow_forward: :arrow_forward: :arrow_forward: Launching *${project.name}* release for *${envTargetGen}* environment`,
104
95
  });
105
96
  })
106
97
 
@@ -125,7 +116,7 @@ module.exports.run = () => {
125
116
  .then(() => {
126
117
  // installing the dependencies by composite definition, it's outputting the app package dependencies declared
127
118
  // in the dependencies-composite.json file of the project, remapped with the composite declaration per env.
128
- return installUtils.buildApp.install(project, envTargetGen, compositeType);
119
+ return installUtils.buildApp.install(project, envTargetGen);
129
120
  })
130
121
  // saving current generated deps metadata for build version
131
122
  .then((deps) => {