@eui/tools 5.0.0-rc.1 → 5.0.0-rc.13

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 (253) hide show
  1. package/.version.properties +1 -1
  2. package/CHANGELOG.md +690 -3
  3. package/bin/eui-scripts.js +6 -6
  4. package/bin/scripts/build-package-sub.js +20 -0
  5. package/bin/scripts/version.js +12 -0
  6. package/global.test.js +61 -45
  7. package/package.json +17 -21
  8. package/sandbox.js +158 -5
  9. package/scripts/csdr/audit/audit-utils.js +2 -2
  10. package/scripts/csdr/cli/app.js +43 -5
  11. package/scripts/csdr/cli/package.js +93 -9
  12. package/scripts/csdr/cli/skeletons/app-eui10/angular-config.json +20 -0
  13. package/scripts/csdr/cli/skeletons/app-eui10/dependencies-base.json +2 -0
  14. package/scripts/csdr/cli/skeletons/app-eui10/dependencies-composite.json +5 -0
  15. package/scripts/csdr/cli/skeletons/app-eui10/gitignore_TO_REPLACE +63 -0
  16. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/models/user.js +8 -0
  17. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/index.js +5 -0
  18. package/scripts/csdr/cli/skeletons/app-eui10/mock/app/routes/user_routes.js +24 -0
  19. package/scripts/csdr/cli/skeletons/app-eui10/mock/db/db.json +12 -0
  20. package/scripts/csdr/cli/skeletons/app-eui10/mock/server.js +16 -0
  21. package/scripts/csdr/cli/skeletons/app-eui10/package.json +6 -0
  22. package/scripts/csdr/cli/skeletons/app-eui10/scripts.json +5 -0
  23. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-routing.module.ts +18 -0
  24. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app-starter.service.ts +68 -0
  25. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.html +29 -0
  26. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.component.ts +55 -0
  27. package/scripts/csdr/cli/skeletons/app-eui10/src/app/app.module.ts +27 -0
  28. package/scripts/{utils/pre-build/translations/common.js → csdr/cli/skeletons/app-eui10/src/app/core/components/.gitkeep} +0 -0
  29. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/core.module.ts +84 -0
  30. package/scripts/csdr/cli/skeletons/app-eui10/src/app/core/reducers/index.ts +33 -0
  31. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home-routing.module.ts +15 -0
  32. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.html +7 -0
  33. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.component.ts +19 -0
  34. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/home/home.module.ts +18 -0
  35. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.html +7 -0
  36. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page1/page1.component.ts +7 -0
  37. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.html +7 -0
  38. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/components/page2/page2.component.ts +7 -0
  39. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1-routing.module.ts +18 -0
  40. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.html +7 -0
  41. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.component.ts +8 -0
  42. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module1/module1.module.ts +21 -0
  43. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2-routing.module.ts +16 -0
  44. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.html +8 -0
  45. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.component.ts +7 -0
  46. package/scripts/csdr/cli/skeletons/app-eui10/src/app/features/module2/module2.module.ts +17 -0
  47. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/shared.module.ts +21 -0
  48. package/scripts/csdr/cli/skeletons/app-eui10/src/app/shared/testing/router.mock.ts +18 -0
  49. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/config/env-json-config.json +8 -0
  50. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/en.json +7 -0
  51. package/scripts/csdr/cli/skeletons/app-eui10/src/assets/i18n/fr.json +7 -0
  52. package/scripts/csdr/cli/skeletons/app-eui10/src/config/global.ts +20 -0
  53. package/scripts/csdr/cli/skeletons/app-eui10/src/config/index.ts +8 -0
  54. package/scripts/csdr/cli/skeletons/app-eui10/src/config/modules.ts +4 -0
  55. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.prod.ts +9 -0
  56. package/scripts/csdr/cli/skeletons/app-eui10/src/environments/environment.ts +9 -0
  57. package/scripts/csdr/cli/skeletons/app-eui10/src/index.html +21 -0
  58. package/scripts/csdr/cli/skeletons/app-eui10/src/styles.scss +1 -0
  59. package/scripts/csdr/cli/skeletons/app-eui10/tslint.json +17 -0
  60. package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +33 -0
  61. package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +5 -0
  62. package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +50 -0
  63. package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +6 -0
  64. package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +3 -0
  65. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +21 -0
  66. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +26 -0
  67. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +19 -0
  68. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +7 -0
  69. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +15 -0
  70. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +7 -0
  71. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +8 -0
  72. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +17 -0
  73. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/shared/shared.module.ts +15 -0
  74. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +8 -0
  75. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +41 -0
  76. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/index.html +22 -0
  77. package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/en.json +3 -0
  78. package/scripts/csdr/cli/skeletons/package/frontend-eui10/assets/i18n/fr.json +3 -0
  79. package/scripts/csdr/cli/skeletons/package/frontend-eui10/gitignore_TO_REPLACE +46 -0
  80. package/scripts/csdr/cli/skeletons/package/frontend-eui10/karma.conf.js +7 -0
  81. package/scripts/csdr/cli/skeletons/package/frontend-eui10/ng-package.json +7 -0
  82. package/scripts/csdr/cli/skeletons/package/frontend-eui10/package.json +4 -0
  83. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/dummy.spec.ts.TO_REPLACE +5 -0
  84. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/index.ts +1 -0
  85. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/lib/module.ts +11 -0
  86. package/scripts/csdr/cli/skeletons/package/frontend-eui10/src/test.ts.TO_REPLACE +21 -0
  87. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.lib.json +32 -0
  88. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tsconfig.spec.json +17 -0
  89. package/scripts/csdr/cli/skeletons/package/frontend-eui10/tslint.json +17 -0
  90. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.html +1 -0
  91. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.spec.ts.TO_REPLACE +25 -0
  92. package/scripts/csdr/cli/skeletons/package/frontend-option-route/src/lib/components/cmp1/cmp1.component.ts +14 -0
  93. package/scripts/csdr/cli/skeletons/package/frontend-remote/angular.json +3 -3
  94. package/scripts/csdr/cli/skeletons/package/frontend-remote/dependencies-composite.json +1 -0
  95. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.scss +3 -0
  96. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/dummy.spec.ts +6 -0
  97. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.component.ts +62 -28
  98. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/module.ts +44 -39
  99. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/app/routing.module.ts +23 -9
  100. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/en.json +1 -0
  101. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/assets/i18n-compiled/fr.json +1 -0
  102. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/config/global.ts +6 -5
  103. package/scripts/csdr/cli/skeletons/package/frontend-remote/src/index.html +1 -1
  104. package/scripts/csdr/cli/skeletons/package/frontend-remote/tsconfig.app.json +3 -1
  105. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/angular.json +90 -0
  106. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/browserslist +10 -0
  107. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-base.json +2 -0
  108. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/dependencies-composite.json +6 -0
  109. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/gitignore_TO_REPLACE +64 -0
  110. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/karma.conf.js +7 -0
  111. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/package.json_TO_REPLACE +8 -0
  112. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/dummy.scss +3 -0
  113. package/scripts/csdr/cli/skeletons/package/{frontend-remote/src/app/dummy.spec.ts.TO_REPLACE → frontend-remote-eui10/src/app/dummy.spec.ts} +0 -0
  114. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/fallback.component.ts +11 -0
  115. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.component.ts +90 -0
  116. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/module.ts +219 -0
  117. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/custom-route-serializer.ts +28 -0
  118. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/reducers/index.ts +42 -0
  119. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/app/routing.module.ts +55 -0
  120. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/assets/.gitkeep +0 -0
  121. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/global.ts +31 -0
  122. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/index.ts +20 -0
  123. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/config/modules.ts +3 -0
  124. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.prod.ts +3 -0
  125. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/environments/environment.ts +15 -0
  126. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/favicon.ico +0 -0
  127. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/index.html +10 -0
  128. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/main.ts +12 -0
  129. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/polyfills.ts +86 -0
  130. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/src/test.ts.TO_REPLACE +20 -0
  131. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.app.json +20 -0
  132. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tsconfig.spec.json +18 -0
  133. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint-remote.json +7 -0
  134. package/scripts/csdr/cli/skeletons/package/frontend-remote-eui10/tslint.json +17 -0
  135. package/scripts/csdr/cli/skeletons/package/{frontend-remote → frontend-remote-eui10}/webpack.extra.js +0 -0
  136. package/scripts/csdr/config/angular.js +734 -47
  137. package/scripts/csdr/config/global.js +43 -6
  138. package/scripts/csdr/config/packages.js +64 -1
  139. package/scripts/csdr/config/projects.js +24 -6
  140. package/scripts/csdr/config/projects.test.js +11 -9
  141. package/scripts/csdr/config/sync.js +6 -3
  142. package/scripts/csdr/init/init-utils.js +72 -0
  143. package/scripts/csdr/init/init.js +6 -0
  144. package/scripts/csdr/init/prompt.js +3 -1
  145. package/scripts/csdr/init/resources/10.x/yarn.lock +16428 -0
  146. package/scripts/csdr/init/resources/13.x/browserslistrc +6 -0
  147. package/scripts/csdr/init/resources/13.x/resolutions.json +6 -0
  148. package/scripts/csdr/init/resources/14.x/browserslistrc +6 -0
  149. package/scripts/csdr/init/resources/14.x/resolutions.json +5 -0
  150. package/scripts/csdr/install/build-app.js +6 -38
  151. package/scripts/csdr/install/build-package.js +16 -157
  152. package/scripts/csdr/install/common.js +21 -13
  153. package/scripts/csdr/install/composite-core.js +256 -0
  154. package/scripts/csdr/install/install-utils.js +8 -4
  155. package/scripts/csdr/install/local-dev.js +5 -3
  156. package/scripts/csdr/install/packages.js +90 -0
  157. package/scripts/csdr/install/projects.js +76 -0
  158. package/scripts/csdr/install/{remote.js → remotes.js} +46 -51
  159. package/scripts/csdr/metadata/app-envs.js +1 -39
  160. package/scripts/csdr/metadata/app-history.js +1 -66
  161. package/scripts/csdr/metadata/app-versions.js +2 -12
  162. package/scripts/csdr/metadata/app.js +49 -9
  163. package/scripts/csdr/metadata/common.js +21 -45
  164. package/scripts/csdr/metadata/metadata-utils.js +2 -0
  165. package/scripts/csdr/metadata/package-envs.js +71 -0
  166. package/scripts/csdr/metadata/package-history.js +5 -1
  167. package/scripts/csdr/metadata/package-versions.js +79 -0
  168. package/scripts/csdr/metadata/package.js +169 -101
  169. package/scripts/csdr/metadata/stats.js +9 -5
  170. package/scripts/csdr/release/app/release-app.js +16 -21
  171. package/scripts/csdr/release/package/backend.js +26 -0
  172. package/scripts/csdr/release/package/common.js +160 -13
  173. package/scripts/csdr/release/package/release-package.js +40 -6
  174. package/scripts/csdr/release/package/remote.js +2 -17
  175. package/scripts/csdr/release/package/ui.js +86 -3
  176. package/scripts/csdr/sync/sync-utils.js +9 -2
  177. package/scripts/csdr/version/app-common.js +32 -0
  178. package/scripts/csdr/version/app-env-target.js +5 -295
  179. package/scripts/csdr/version/app.js +5 -3
  180. package/scripts/csdr/version/{app-env-target.test.js → common..test.js} +32 -31
  181. package/scripts/csdr/version/common.js +277 -0
  182. package/scripts/csdr/version/package-common.js +158 -0
  183. package/scripts/csdr/version/package-default.js +144 -0
  184. package/scripts/csdr/version/package-remote.js +51 -0
  185. package/scripts/csdr/version/package.js +16 -270
  186. package/scripts/utils/api-utils.js +90 -0
  187. package/scripts/utils/build/app/build-app-utils.js +11 -9
  188. package/scripts/utils/build/package/angular.js +4 -30
  189. package/scripts/utils/build/package/build-package-utils.js +50 -1
  190. package/scripts/utils/build/package/element.js +15 -16
  191. package/scripts/utils/build/package/nodeJs.js +2 -1
  192. package/scripts/utils/build/package/skeletons/elements/index.html +9 -0
  193. package/scripts/utils/build/package/styles.js +83 -86
  194. package/scripts/utils/git-utils.js +69 -6
  195. package/scripts/utils/index.js +0 -2
  196. package/scripts/utils/notification/common.js +5 -0
  197. package/scripts/utils/notification/mail-utils.js +3 -0
  198. package/scripts/utils/notification/mailstack.js +3 -5
  199. package/scripts/utils/notification/package.js +0 -2
  200. package/scripts/utils/notification/slack-utils.js +6 -7
  201. package/scripts/utils/pre-build/elements.js +8 -4
  202. package/scripts/utils/pre-build/injection/app-sources-full-skeleton/src/_generated/favicon.ico +0 -0
  203. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/app.module.ts +52 -0
  204. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/core/reducers/index.ts +40 -0
  205. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/global.ts +4 -0
  206. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/index.ts +8 -0
  207. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/modules.ts +4 -0
  208. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.dev.ts +9 -0
  209. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.prod.ts +9 -0
  210. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.ts +21 -0
  211. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/favicon.ico +0 -0
  212. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/karma.conf.js +7 -0
  213. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/main.ts +21 -0
  214. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/polyfills.ts +86 -0
  215. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/tst.ts +33 -0
  216. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.app.json +19 -0
  217. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.spec.json +9 -0
  218. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tslint.json +17 -0
  219. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/app.module.ts +52 -0
  220. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/app/core/reducers/index.ts +40 -0
  221. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/global.ts +4 -0
  222. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/index.ts +8 -0
  223. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/config/modules.ts +4 -0
  224. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.dev.ts +9 -0
  225. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.prod.ts +9 -0
  226. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/environments/environment.ts +21 -0
  227. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/favicon.ico +0 -0
  228. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/karma.conf.js +7 -0
  229. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/main.ts +21 -0
  230. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/polyfills.ts +86 -0
  231. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/src/_generated/tst.ts +33 -0
  232. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.app.json +19 -0
  233. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.spec.json +9 -0
  234. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tslint.json +17 -0
  235. package/scripts/utils/pre-build/injection/config.js +30 -31
  236. package/scripts/utils/pre-build/injection/externals.js +70 -72
  237. package/scripts/utils/pre-build/injection/injection-utils.js +2 -0
  238. package/scripts/utils/pre-build/injection/routes-replacement.js +318 -0
  239. package/scripts/utils/pre-build/injection/skeletons.js +9 -3
  240. package/scripts/utils/pre-build/projects.js +28 -15
  241. package/scripts/utils/pre-build/translations/elements.js +21 -11
  242. package/scripts/utils/serve/app.js +7 -4
  243. package/scripts/utils/test/test-utils.js +39 -1
  244. package/scripts/utils/tools.js +370 -285
  245. package/bin/scripts/csdr-jira-update.js +0 -12
  246. package/bin/scripts/csdr-migrate-package.js +0 -17
  247. package/bin/scripts/e2e-app.js +0 -62
  248. package/scripts/csdr/install/composite-utils.js +0 -292
  249. package/scripts/csdr/jira/jira-utils.js +0 -169
  250. package/scripts/csdr/jira/update.js +0 -153
  251. package/scripts/migration/eui8-migration.js +0 -94
  252. package/scripts/migration/migrate-utils.js +0 -191
  253. package/scripts/utils/confluence-utils.js +0 -126
@@ -7,7 +7,6 @@ const path = require('path');
7
7
  const tools = require('../../utils/tools');
8
8
  const gitUtils = require('../../utils/git-utils');
9
9
  const configUtils = require('../config/config-utils');
10
- const confluenceUtils = require('../../utils/confluence-utils');
11
10
 
12
11
  // fetching command parameters
13
12
  const { dryRun, skipClone } = tools.getArgs();
@@ -38,6 +37,27 @@ module.exports.cloneMetadataRepo = () => {
38
37
  }
39
38
 
40
39
 
40
+ module.exports.cloneMetadataLocksRepo = () => {
41
+ const configOptions = configUtils.global.getConfigOptions();
42
+
43
+ tools.logTitle('Cloning devops metadata locks repo');
44
+
45
+ if (dryRun || skipClone) {
46
+ tools.logInfo('DRY-RUN: cloning skipped');
47
+ return Promise.resolve();
48
+
49
+ } else {
50
+ return Promise.resolve()
51
+ .then(() => {
52
+ return gitUtils.cloneRepo(configOptions.DEVOPS_METADATA_LOCKS_REPOSITORY, configOptions.DEVOPS_METADATA_LOCKS_PATH, false, true);
53
+ })
54
+ .catch((e) => {
55
+ throw e;
56
+ })
57
+ }
58
+ }
59
+
60
+
41
61
  module.exports.getDevopsMetadata = () => {
42
62
  const configOptions = configUtils.global.getConfigOptions();
43
63
  const DEVOPS_METADATA_PATH = configOptions.DEVOPS_METADATA_PATH;
@@ -143,47 +163,3 @@ module.exports.isSonarEnabled = () => {
143
163
  throw e;
144
164
  })
145
165
  }
146
-
147
- module.exports.publishMetadata = (project) => {
148
- var envsTableContent;
149
- var historyTableContent;
150
-
151
- if (!project.confluencePageId) {
152
- tools.logWarning(`WARNING - project ${project.name} has NO Confluence page id defined`);
153
-
154
- } else {
155
-
156
- return Promise.resolve()
157
-
158
- // generate history metadata table
159
- .then(() => {
160
- return innerAppHistory.getMetadata(project);
161
- })
162
- .then((historyMetadata) => {
163
- return innerAppHistory.historyMetadataToTable(historyMetadata);
164
- })
165
- .then((tableContent) => {
166
- historyTableContent = tableContent;
167
- })
168
-
169
- // generate envs metadata table
170
- .then(() => {
171
- return innerAppEnvs.getMetadata(project);
172
- })
173
- .then((envsMetadata) => {
174
- return innerAppEnvs.envsMetadataToTable(envsMetadata);
175
- })
176
- .then((tableContent) => {
177
- envsTableContent = tableContent;
178
- })
179
-
180
- .then(() => {
181
- if (envsTableContent !== '' || historyTableContent !== '') {
182
- return confluenceUtils.updatePageContent(project.confluencePageId, envsTableContent + '\n' + historyTableContent);
183
- }
184
- })
185
- .catch((e) => {
186
- throw e;
187
- })
188
- }
189
- }
@@ -9,4 +9,6 @@ module.exports.commit = require('./commit');
9
9
  module.exports.common = require('./common');
10
10
  module.exports.package = require('./package');
11
11
  module.exports.packageHistory = require('./package-history');
12
+ module.exports.packageEnvs = require('./package-envs');
13
+ module.exports.packageVersions = require('./package-versions');
12
14
  module.exports.stats = require('./stats');
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ // GLOBAL
4
+ const path = require('path');
5
+ const moment = require('moment');
6
+
7
+ // LOCAL
8
+ const tools = require('../../utils/tools');
9
+ const configUtils = require('../config/config-utils');
10
+
11
+
12
+ // FETCH ARGS
13
+ const { dryRun } = tools.getArgs();
14
+
15
+
16
+ module.exports.getMetadata = (pkg) => {
17
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
18
+
19
+ return Promise.resolve()
20
+ .then(() => {
21
+ if (!DEVOPS_METADATA_PATH) {
22
+ throw new Error(`Devops metadata folder ${DEVOPS_METADATA_PATH} NOT FOUND`) ;
23
+ }
24
+
25
+ return tools.getJsonFileContent(path.join(DEVOPS_METADATA_PATH, pkg.devopsEnvsMetadataFile));
26
+ })
27
+ .catch((e) => {
28
+ throw e;
29
+ })
30
+ }
31
+
32
+
33
+
34
+ module.exports.storeMetadata = (pkg, newVersion, metadata, envTarget) => {
35
+ const releaseDate = moment(new Date()).format("DD/MM/YYYY HH:mm");
36
+ const infos = `${newVersion} - ${releaseDate}`;
37
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
38
+
39
+ return Promise.resolve()
40
+ .then(() => {
41
+ tools.logTitle('Storing package environment metadata...');
42
+
43
+ const metadataFile = path.join(DEVOPS_METADATA_PATH, pkg.devopsEnvsMetadataFile);
44
+
45
+ var generatedMetadata;
46
+ if (tools.isFileExists(metadataFile)) {
47
+ generatedMetadata = require(metadataFile);
48
+ } else {
49
+ generatedMetadata = {};
50
+ }
51
+
52
+ generatedMetadata[envTarget] = {
53
+ version: newVersion,
54
+ releaseDate: releaseDate,
55
+ infos: infos,
56
+ dependencies: metadata
57
+ };
58
+
59
+ if (!dryRun) {
60
+ tools.writeJsonFileSync(metadataFile, generatedMetadata);
61
+ }
62
+ })
63
+
64
+ .then(() => {
65
+ tools.logSuccess();
66
+ })
67
+
68
+ .catch((e) => {
69
+ throw e;
70
+ })
71
+ }
@@ -3,7 +3,6 @@
3
3
  // GLOBAL
4
4
  const path = require('path');
5
5
  const execa = require('execa');
6
- const sanitizeHtml = require('sanitize-html');
7
6
  const moment = require('moment');
8
7
  const semver = require('semver');
9
8
 
@@ -127,6 +126,11 @@ const getDiffBetweenBuildVersions = (pkg, fromBuildMetadata, toBuildMetadata) =>
127
126
 
128
127
  const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
129
128
 
129
+ if (!fromBuildMetadata) {
130
+ tools.logWarning('No previous metadata found for package...skipping');
131
+ return null;
132
+ }
133
+
130
134
  return Promise.resolve()
131
135
  .then(() => {
132
136
  return innerCommon.getDevopsMetadata();
@@ -0,0 +1,79 @@
1
+ 'use strict';
2
+
3
+ // GLOBAL
4
+ const path = require('path');
5
+ const moment = require('moment');
6
+
7
+ // LOCAL
8
+ const tools = require('../../utils/tools');
9
+ const configUtils = require('../config/config-utils');
10
+
11
+
12
+ // FETCH ARGS
13
+ const { dryRun } = tools.getArgs();
14
+
15
+
16
+ module.exports.getMetadata = (pkg) => {
17
+ const DEVOPS_METADATA_PATH = configUtils.global.getConfigOptions().DEVOPS_METADATA_PATH;
18
+
19
+ return Promise.resolve()
20
+ .then(() => {
21
+ if (!DEVOPS_METADATA_PATH) {
22
+ throw new Error(`Devops metadata folder ${DEVOPS_METADATA_PATH} NOT FOUND`) ;
23
+ }
24
+
25
+ return tools.getJsonFileContent(path.join(DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile));
26
+ })
27
+ .catch((e) => {
28
+ throw e;
29
+ })
30
+ }
31
+
32
+
33
+
34
+ module.exports.storeMetadata = (pkg, pkgVersion, pkgCompositeDeps, duration, envTarget) => {
35
+ return Promise.resolve()
36
+ .then(() => {
37
+ tools.logInfo('Storing package version history metadata...');
38
+
39
+ const configOptions = configUtils.global.getConfigOptions();
40
+
41
+ var generatedMetadata = {};
42
+ var versions = [];
43
+
44
+ const pkgMetadataFile = path.join(configOptions.DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile);
45
+
46
+ if (tools.isFileExists(pkgMetadataFile)) {
47
+ generatedMetadata = require(pkgMetadataFile);
48
+ versions = generatedMetadata.versions;
49
+ }
50
+
51
+ const newVersionMetadata = {
52
+ name: pkg.name,
53
+ version: pkgVersion,
54
+ date: moment(new Date()).format("YYYYMMDD-HH:mm"),
55
+ npmPkg: pkg.npmPkg,
56
+ duration: duration,
57
+ envTarget: envTarget
58
+ };
59
+
60
+ if (pkg.remote) {
61
+ tools.logInfo('Writing remote composite dependencies');
62
+ newVersionMetadata.dependencies = pkgCompositeDeps;
63
+ }
64
+ console.log(newVersionMetadata);
65
+
66
+ versions.push(newVersionMetadata);
67
+
68
+ generatedMetadata.versions = versions;
69
+
70
+ tools.logInfo(`Write metadata on ${pkgMetadataFile}`);
71
+ if (!dryRun) {
72
+ tools.writeJsonFileSync(pkgMetadataFile, generatedMetadata);
73
+ }
74
+ })
75
+
76
+ .catch((e) => {
77
+ throw e;
78
+ })
79
+ }
@@ -11,6 +11,8 @@ const gitUtils = require('../../utils/git-utils');
11
11
 
12
12
  // INNER MODULES
13
13
  const innerCommon = require('./common');
14
+ const innerPackageEnvs = require('./package-envs');
15
+ const innerPackageVersions = require('./package-versions');
14
16
 
15
17
  // FETCH ARGS
16
18
  const { dryRun } = tools.getArgs();
@@ -57,8 +59,8 @@ module.exports.getPackagesDeps = (depsType) => {
57
59
 
58
60
 
59
61
  module.exports.storeMetadata = (
60
- pkg, pkgVersion, pkgMetadata, isSnapshot, isMaster, isSupportBranch, isNextBranch, isSupportSnapshotBranch,
61
- pkgCompositeDeps, duration,
62
+ pkg, pkgVersion, pkgMetadata, isSnapshot, isMaster, isSupportBranch, isNextBranch, isSupportSnapshotBranch, isHotfixBranch,
63
+ pkgCompositeDeps, duration, envTarget
62
64
  ) => {
63
65
 
64
66
  tools.logTitle('Storing central and package metadata...');
@@ -83,6 +85,7 @@ module.exports.storeMetadata = (
83
85
  var packagesPrevTag = [];
84
86
  var packagesNextTag = [];
85
87
  var packagesPrevSnapshotsTag = [];
88
+ var packagesHotfixTag = [0];
86
89
 
87
90
  if (tools.isFileExists(metadataFile)) {
88
91
  metadata = require(metadataFile);
@@ -91,6 +94,7 @@ module.exports.storeMetadata = (
91
94
  packagesPrevTag = metadata.packagesPrevTag;
92
95
  packagesNextTag = metadata.packagesNextTag;
93
96
  packagesPrevSnapshotsTag = metadata.packagesPrevSnapshotsTag;
97
+ packagesHotfixTag = metadata.packages.packagesHotfixTag;
94
98
  }
95
99
 
96
100
  const newPackage = {
@@ -209,11 +213,30 @@ module.exports.storeMetadata = (
209
213
  }
210
214
  }
211
215
 
216
+ if (isHotfixBranch) {
217
+ var pkgIdxHOTFIX;
218
+ if (packagesHotfixTag) {
219
+ pkgIdxHOTFIX = packagesHotfixTag.findIndex(item => item.name === pkg.name);
220
+ } else {
221
+ pkgIdxHOTFIX = -1;
222
+ }
223
+
224
+ if (pkgIdxHOTFIX > -1) {
225
+ packagesHotfixTag[pkgIdxHOTFIX] = newPackage;
226
+ } else {
227
+ if (!packagesHotfixTag) {
228
+ packagesHotfixTag = [];
229
+ }
230
+ packagesHotfixTag.push(newPackage);
231
+ }
232
+ }
233
+
212
234
  metadata.packages = packages;
213
235
  metadata.packagesLatestTag = packagesLatestTag;
214
236
  metadata.packagesPrevTag = packagesPrevTag;
215
237
  metadata.packagesNextTag = packagesNextTag;
216
238
  metadata.packagesPrevSnapshotsTag = packagesPrevSnapshotsTag;
239
+ metadata.packagesHotfixTag = packagesHotfixTag;
217
240
 
218
241
  if (!dryRun) {
219
242
  tools.writeJsonFileSync(metadataFile, metadata);
@@ -226,12 +249,18 @@ module.exports.storeMetadata = (
226
249
  })
227
250
 
228
251
  .then(() => {
229
- return storeVersionsMetadata(pkg, pkgVersion, pkgCompositeDeps, duration);
252
+ return innerPackageVersions.storeMetadata(pkg, pkgVersion, pkgCompositeDeps, duration, envTarget);
253
+ })
254
+
255
+ .then(() => {
256
+ if (pkg.remote) {
257
+ return innerPackageEnvs.storeMetadata(pkg, pkgVersion, pkgCompositeDeps, envTarget);
258
+ }
230
259
  })
231
260
 
232
261
  .then(() => {
233
262
  if (isMaster) {
234
- return storeBuildMetadata(pkg, pkgVersion, pkgMetadata);
263
+ return storeBuildMetadata(pkg, pkgVersion, pkgMetadata, envTarget);
235
264
  }
236
265
  })
237
266
 
@@ -264,54 +293,9 @@ module.exports.storeMetadata = (
264
293
  }
265
294
 
266
295
 
267
- const storeVersionsMetadata = module.exports.storeVersionsMetadata = (pkg, pkgVersion, pkgCompositeDeps, duration) => {
268
- return Promise.resolve()
269
- .then(() => {
270
- tools.logInfo('Storing package version history metadata...');
271
-
272
- const configOptions = configUtils.global.getConfigOptions();
273
-
274
- var generatedMetadata = {};
275
- var versions = [];
276
-
277
- const pkgMetadataFile = path.join(configOptions.DEVOPS_METADATA_PATH, pkg.devopsVersionsMetadataFile);
278
-
279
- if (tools.isFileExists(pkgMetadataFile)) {
280
- generatedMetadata = require(pkgMetadataFile);
281
- versions = generatedMetadata.versions;
282
- }
283
-
284
- const newVersionMetadata = {
285
- name: pkg.name,
286
- version: pkgVersion,
287
- date: moment(new Date()).format("YYYYMMDD-HH:mm"),
288
- npmPkg: pkg.npmPkg,
289
- duration: duration
290
- };
291
-
292
- if (pkg.remote) {
293
- tools.logInfo('Writing remote composite dependencies');
294
- newVersionMetadata.dependencies = pkgCompositeDeps;
295
- }
296
- console.log(newVersionMetadata);
297
-
298
- versions.push(newVersionMetadata);
299
-
300
- generatedMetadata.versions = versions;
301
-
302
- tools.logInfo(`Write metadata on ${pkgMetadataFile}`);
303
- if (!dryRun) {
304
- tools.writeJsonFileSync(pkgMetadataFile, generatedMetadata);
305
- }
306
- })
307
-
308
- .catch((e) => {
309
- throw e;
310
- })
311
- }
312
296
 
313
297
 
314
- const storeBuildMetadata = module.exports.storeBuildMetadata = (pkg, pkgVersion, pkgMetadata) => {
298
+ const storeBuildMetadata = module.exports.storeBuildMetadata = (pkg, pkgVersion, pkgMetadata, envTarget) => {
315
299
  return Promise.resolve()
316
300
  .then(() => {
317
301
  tools.logInfo('Storing package LATEST metadata...');
@@ -328,7 +312,7 @@ const storeBuildMetadata = module.exports.storeBuildMetadata = (pkg, pkgVersion,
328
312
  versions = generatedMetadata.versions;
329
313
  }
330
314
 
331
- versions.push({ name: pkgVersion, gitMetadata: pkgMetadata });
315
+ versions.push({ name: pkgVersion, envTarget: envTarget, gitMetadata: pkgMetadata });
332
316
  generatedMetadata.versions = versions;
333
317
 
334
318
  tools.logInfo(`Write metadata on ${pkgMetadataFile}`);
@@ -377,6 +361,31 @@ const storePipelineMetadata = module.exports.storePipelineMetadata = (pkgMetadat
377
361
  }
378
362
 
379
363
 
364
+ module.exports.storeMetadataAssets = (pkg, pkgCompositeDeps) => {
365
+ return Promise.resolve()
366
+ .then(() => {
367
+ const pkgMetadataFile = path.join(pkg.paths.pkgBuild, 'bundles', 'package-metadata.json');
368
+ const pkgMetadataRootFile = path.join(pkg.paths.pkgDirectory, 'package-metadata.json');
369
+
370
+ const pkgMetadata = {
371
+ dependencies: pkgCompositeDeps
372
+ };
373
+
374
+ tools.logInfo(`Creating ${pkgMetadataFile}`);
375
+ console.log(pkgMetadata);
376
+
377
+ if (!dryRun) {
378
+ tools.writeJsonFileSync(pkgMetadataFile, pkgMetadata);
379
+ tools.writeJsonFileSync(pkgMetadataRootFile, pkgMetadata);
380
+ }
381
+ })
382
+
383
+ .catch((e) => {
384
+ throw e;
385
+ })
386
+ }
387
+
388
+
380
389
  module.exports.getPackageVersionsJson = (pkg) => {
381
390
  if (!pkg) {
382
391
  tools.logWarning('provided pkg is empty...skipping');
@@ -413,67 +422,30 @@ module.exports.getPackageVersionsLatest = (pkg) => {
413
422
  }
414
423
 
415
424
 
416
- module.exports.getPackageVersionsByMajor = (pkg, major) => {
425
+ module.exports.getPackageVersionsByMajor = (pkg, major, isMaster) => {
417
426
  const pkgVersions = this.getPackageVersions(pkg);
418
427
 
419
428
  if (pkgVersions) {
420
429
  return pkgVersions.filter((v) => {
421
430
  return (v.version.split('.')[0] === major && v.version.indexOf('snapshot') === -1) ||
422
- (v.version.split('.')[0] === major && pkg.build && pkg.build.isNextMajorSnapshotAllowed);
431
+ (v.version.split('.')[0] === major && pkg.build && pkg.build.isNextMajorSnapshotAllowed) ||
432
+ (v.version.split('.')[0] === major && pkg.build && pkg.build.supportSnapshotBranch) ||
433
+ (v.version.split('.')[0] === major && v.version.indexOf('snapshot') === -1 && isMaster);
423
434
  })
424
435
  }
425
436
  }
426
437
 
427
- module.exports.getLastMajorVersion = (pkg, major) => {
428
- const pkgVersionsMajor = this.getPackageVersionsByMajor(pkg, major);
438
+ module.exports.getLastMajorVersion = (pkg, major, isMaster) => {
439
+ const pkgVersionsMajor = this.getPackageVersionsByMajor(pkg, major, isMaster);
429
440
 
430
441
  if (pkgVersionsMajor && pkgVersionsMajor.length !== 0) {
431
442
  return pkgVersionsMajor.splice(-1)[0].version;
432
443
  }
433
444
  }
434
445
 
435
- module.exports.devopsMetadataToTable = (metadata) => {
436
- tools.logTitle('Generating table from metadata...');
437
-
438
- var content = '';
439
-
440
- content += '<h3>Latest packages status</h3>';
441
- content += '<table><thead><tr>';
442
- content += '<th>PACKAGE</th>';
443
- content += '<th>VERSION</th>';
444
- content += '<th>DATE</th>';
445
- content += '<th>STATUS</th>';
446
- content += '</tr></thead>';
447
- content += '<tbody>';
448
- tools.sortArray(metadata.packages, 'name').forEach((item) => {
449
- content += '<tr>';
450
- content += `<td>${item.name}</td><td>${item.version}</td><td>${item.date}</td><td>${item.status}</td>`
451
- content += '</tr>';
452
- })
453
- content += '</tbody>';
454
- content += '</table>';
455
-
456
- if (metadata.packagesLatestTag && metadata.packagesLatestTag.length !== 0) {
457
- content += '<h3>Latest package tags</h3>';
458
- content += '<table><thead><tr>';
459
- content += '<th>PACKAGE</th>';
460
- content += '<th>VERSION</th>';
461
- content += '<th>DATE</th>';
462
- // content+= '<th>STATUS</th>';
463
- content += '</tr></thead>';
464
- content += '<tbody>';
465
- tools.sortArray(metadata.packagesLatestTag, 'name').forEach((item) => {
466
- content += '<tr>';
467
- content += `<td>${item.name}</td><td>${item.version}</td><td>${item.date}</td>`
468
- content += '</tr>';
469
- })
470
- content += '</tbody>';
471
- content += '</table>';
472
- }
473
446
 
474
- tools.logSuccess();
475
- return content;
476
- }
447
+
448
+
477
449
 
478
450
 
479
451
 
@@ -484,7 +456,7 @@ module.exports.lockPackage = (pkg) => {
484
456
  .then(() => {
485
457
 
486
458
  const configOptions = configUtils.global.getConfigOptions();
487
- const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_PATH, `${pkg.name}-lock.json`);
459
+ const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_LOCKS_PATH, `${pkg.name}-lock.json`);
488
460
 
489
461
  const lockContent = {
490
462
  locked: true,
@@ -498,7 +470,7 @@ module.exports.lockPackage = (pkg) => {
498
470
  return gitUtils.commitAndPush(
499
471
  'master',
500
472
  `chore: locking ${pkg.name}`,
501
- configOptions.DEVOPS_METADATA_PATH
473
+ configOptions.DEVOPS_METADATA_LOCKS_PATH
502
474
  );
503
475
  }
504
476
  })
@@ -517,7 +489,7 @@ module.exports.unlockPackage = (pkg) => {
517
489
  .then(() => {
518
490
 
519
491
  const configOptions = configUtils.global.getConfigOptions();
520
- const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_PATH, `${pkg.name}-lock.json`);
492
+ const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_LOCKS_PATH, `${pkg.name}-lock.json`);
521
493
 
522
494
  tools.remove(pkgLockFile);
523
495
 
@@ -526,7 +498,7 @@ module.exports.unlockPackage = (pkg) => {
526
498
  return gitUtils.commitAndPush(
527
499
  'master',
528
500
  `chore: unlocking ${pkg.name}`,
529
- configOptions.DEVOPS_METADATA_PATH
501
+ configOptions.DEVOPS_METADATA_LOCKS_PATH
530
502
  );
531
503
  }
532
504
  })
@@ -539,7 +511,7 @@ module.exports.unlockPackage = (pkg) => {
539
511
 
540
512
  module.exports.isPackageLocked = (pkg) => {
541
513
  const configOptions = configUtils.global.getConfigOptions();
542
- const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_PATH, `${pkg.name}-lock.json`);
514
+ const pkgLockFile = path.join(configOptions.DEVOPS_METADATA_LOCKS_PATH, `${pkg.name}-lock.json`);
543
515
 
544
516
  if (dryRun) return false;
545
517
 
@@ -573,3 +545,99 @@ module.exports.isPackageLocked = (pkg) => {
573
545
 
574
546
  return false;
575
547
  }
548
+
549
+
550
+
551
+ module.exports.syncDevopsMetadata = () => {
552
+ return Promise.resolve()
553
+ .then(() => {
554
+ const pkgsObject = configUtils.packages.getCsdrPackages();
555
+ const pkgs = Object.keys(pkgsObject);
556
+
557
+ const metadataFile = path.join(process.cwd(), 'packages', 'devops-metadata', '.devops-metadata.json');
558
+ const metadata = require(metadataFile);
559
+
560
+ let packages = metadata.packages;
561
+ let packagesLatestTag = metadata.packagesLatestTag;
562
+ let packagesNextTag = metadata.packagesNextTag;
563
+ let packagesPrevTag = metadata.packagesPrevTag;
564
+ let packagesPrevSnapshotsTag = metadata.packagesPrevSnapshotsTag;
565
+
566
+ const getMissingPackages = (inArray) => {
567
+ let outArray = [];
568
+
569
+ pkgs.forEach((p) => {
570
+ const pkgIdx = inArray.findIndex(item => item.name === p);
571
+ if (pkgIdx === -1) {
572
+ outArray.push(p);
573
+ }
574
+ });
575
+
576
+ return outArray;
577
+ }
578
+
579
+ const addPackages = (inArray, pkgsToAdd) => {
580
+ const outArray = inArray;
581
+ pkgsToAdd.forEach((p) => {
582
+ outArray.push({
583
+ name: p,
584
+ version: null,
585
+ date: require('moment')(new Date()).format("YYYYMMDD-HH:mm"),
586
+ status: 'INITIALIZED',
587
+ npmPkg: null
588
+ });
589
+ })
590
+
591
+ return outArray;
592
+ }
593
+
594
+ console.log('processing packages');
595
+ let packagesToAdd = [] = getMissingPackages(packages);
596
+ let packagesLatestTagToAdd = [] = getMissingPackages(packagesLatestTag);
597
+ let packagesNextTagToAdd = [] = getMissingPackages(packagesNextTag);
598
+ let packagesPrevTagToAdd = [] = getMissingPackages(packagesPrevTag);
599
+ let packagesPrevSnapshotsTagToAdd = [] = getMissingPackages(packagesPrevSnapshotsTag);
600
+
601
+ console.log(packagesToAdd.length);
602
+ console.log(packagesLatestTagToAdd.length);
603
+ console.log(packagesNextTagToAdd.length);
604
+ console.log(packagesPrevTagToAdd.length);
605
+ console.log(packagesPrevSnapshotsTagToAdd.length);
606
+
607
+ console.log(`packages before : ${packages.length}`);
608
+ packages = addPackages(packages, packagesToAdd);
609
+ console.log(`packages after : ${packages.length}`);
610
+
611
+ console.log(`packages before : ${packagesLatestTag.length}`);
612
+ packagesLatestTag = addPackages(packagesLatestTag, packagesLatestTagToAdd);
613
+ console.log(`packages after : ${packagesLatestTag.length}`);
614
+
615
+ console.log(`packages before : ${packagesNextTag.length}`);
616
+ packagesNextTag = addPackages(packagesNextTag, packagesNextTagToAdd);
617
+ console.log(`packages after : ${packagesNextTag.length}`);
618
+
619
+ console.log(`packages before : ${packagesPrevTag.length}`);
620
+ packagesPrevTag = addPackages(packagesPrevTag, packagesPrevTagToAdd);
621
+ console.log(`packages after : ${packagesPrevTag.length}`);
622
+
623
+ console.log(`packages before : ${packagesPrevSnapshotsTag.length}`);
624
+ packagesPrevSnapshotsTag = addPackages(packagesPrevSnapshotsTag, packagesPrevSnapshotsTagToAdd);
625
+ console.log(`packages after : ${packagesPrevSnapshotsTag.length}`);
626
+
627
+ metadata.packages = packages;
628
+ metadata.packagesLatestTag = packagesLatestTag;
629
+ metadata.packagesPrevTag = packagesPrevTag;
630
+ metadata.packagesNextTag = packagesNextTag;
631
+ metadata.packagesPrevSnapshotsTag = packagesPrevSnapshotsTag;
632
+
633
+ if (!dryRun) {
634
+ tools.writeJsonFileSync(metadataFile, metadata);
635
+ } else {
636
+ tools.logInfo(`Write metadata on ${metadataFile}`);
637
+ }
638
+ })
639
+
640
+ .catch((e) => {
641
+ throw e;
642
+ })
643
+ }