@squiz/dxp-cli-next 5.32.0 → 5.33.0-develop.10

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 (370) hide show
  1. package/README.md +1 -0
  2. package/bin/dxp.js +6 -1
  3. package/dist/dxp.js +4480 -0
  4. package/package.json +36 -30
  5. package/lib/ApiService.d.ts +0 -39
  6. package/lib/ApiService.js +0 -120
  7. package/lib/ApiService.spec.d.ts +0 -1
  8. package/lib/ApiService.spec.js +0 -182
  9. package/lib/ApplicationConfig.d.ts +0 -7
  10. package/lib/ApplicationConfig.js +0 -38
  11. package/lib/ApplicationConfig.spec.d.ts +0 -1
  12. package/lib/ApplicationConfig.spec.js +0 -84
  13. package/lib/ApplicationStore.d.ts +0 -13
  14. package/lib/ApplicationStore.js +0 -53
  15. package/lib/__tests__/cmp/dev-mode.spec.d.ts +0 -1
  16. package/lib/__tests__/cmp/dev-mode.spec.js +0 -54
  17. package/lib/__tests__/helpers.d.ts +0 -17
  18. package/lib/__tests__/helpers.js +0 -54
  19. package/lib/__tests__/integration/main.spec.d.ts +0 -1
  20. package/lib/__tests__/integration/main.spec.js +0 -45
  21. package/lib/__tests__/smoke/validate.spec.d.ts +0 -1
  22. package/lib/__tests__/smoke/validate.spec.js +0 -37
  23. package/lib/__tests__/unit/cli.d.ts +0 -0
  24. package/lib/__tests__/unit/cli.js +0 -7
  25. package/lib/auth/index.d.ts +0 -3
  26. package/lib/auth/index.js +0 -14
  27. package/lib/auth/login/login.d.ts +0 -22
  28. package/lib/auth/login/login.js +0 -268
  29. package/lib/auth/login/login.spec.d.ts +0 -1
  30. package/lib/auth/login/login.spec.js +0 -179
  31. package/lib/auth/logout/logout.d.ts +0 -3
  32. package/lib/auth/logout/logout.js +0 -115
  33. package/lib/auth/logout/logout.spec.d.ts +0 -1
  34. package/lib/auth/logout/logout.spec.js +0 -67
  35. package/lib/cdp/constants.d.ts +0 -1
  36. package/lib/cdp/constants.js +0 -4
  37. package/lib/cdp/index.d.ts +0 -3
  38. package/lib/cdp/index.js +0 -16
  39. package/lib/cdp/instance/activate/activate.d.ts +0 -5
  40. package/lib/cdp/instance/activate/activate.js +0 -107
  41. package/lib/cdp/instance/activate/activate.spec.d.ts +0 -1
  42. package/lib/cdp/instance/activate/activate.spec.js +0 -274
  43. package/lib/cdp/instance/instanceCommand.d.ts +0 -3
  44. package/lib/cdp/instance/instanceCommand.js +0 -15
  45. package/lib/cdp/schema/deploy/deploy.const.d.ts +0 -5
  46. package/lib/cdp/schema/deploy/deploy.const.js +0 -8
  47. package/lib/cdp/schema/deploy/deploy.d.ts +0 -4
  48. package/lib/cdp/schema/deploy/deploy.js +0 -107
  49. package/lib/cdp/schema/deploy/deploy.spec.d.ts +0 -1
  50. package/lib/cdp/schema/deploy/deploy.spec.js +0 -137
  51. package/lib/cdp/schema/schemaCommand.d.ts +0 -3
  52. package/lib/cdp/schema/schemaCommand.js +0 -15
  53. package/lib/cdp/utils.d.ts +0 -23
  54. package/lib/cdp/utils.js +0 -133
  55. package/lib/cmp/deploy.d.ts +0 -3
  56. package/lib/cmp/deploy.js +0 -124
  57. package/lib/cmp/dev-mode-ui.d.ts +0 -4
  58. package/lib/cmp/dev-mode-ui.js +0 -51
  59. package/lib/cmp/dev-mode.d.ts +0 -4
  60. package/lib/cmp/dev-mode.js +0 -58
  61. package/lib/cmp/edge-components/compiler.d.ts +0 -13
  62. package/lib/cmp/edge-components/compiler.js +0 -55
  63. package/lib/cmp/index.d.ts +0 -3
  64. package/lib/cmp/index.js +0 -18
  65. package/lib/cmp/init.d.ts +0 -3
  66. package/lib/cmp/init.js +0 -105
  67. package/lib/cmp/utils/definitions.d.ts +0 -481
  68. package/lib/cmp/utils/definitions.js +0 -262
  69. package/lib/cmp/utils/definitions.spec.d.ts +0 -1
  70. package/lib/cmp/utils/definitions.spec.js +0 -503
  71. package/lib/constants.d.ts +0 -1
  72. package/lib/constants.js +0 -4
  73. package/lib/datastore/blueprint/add/add.d.ts +0 -3
  74. package/lib/datastore/blueprint/add/add.js +0 -119
  75. package/lib/datastore/blueprint/add/add.spec.d.ts +0 -1
  76. package/lib/datastore/blueprint/add/add.spec.js +0 -134
  77. package/lib/datastore/blueprint/blueprintCommand.d.ts +0 -3
  78. package/lib/datastore/blueprint/blueprintCommand.js +0 -21
  79. package/lib/datastore/blueprint/list/list.d.ts +0 -3
  80. package/lib/datastore/blueprint/list/list.js +0 -76
  81. package/lib/datastore/blueprint/list/list.spec.d.ts +0 -1
  82. package/lib/datastore/blueprint/list/list.spec.js +0 -51
  83. package/lib/datastore/blueprint/rename/rename.d.ts +0 -3
  84. package/lib/datastore/blueprint/rename/rename.js +0 -93
  85. package/lib/datastore/blueprint/rename/rename.spec.d.ts +0 -1
  86. package/lib/datastore/blueprint/rename/rename.spec.js +0 -142
  87. package/lib/datastore/blueprint/update/update.d.ts +0 -3
  88. package/lib/datastore/blueprint/update/update.js +0 -89
  89. package/lib/datastore/blueprint/update/update.spec.d.ts +0 -1
  90. package/lib/datastore/blueprint/update/update.spec.js +0 -99
  91. package/lib/datastore/bundle/bundle.d.ts +0 -3
  92. package/lib/datastore/bundle/bundle.js +0 -176
  93. package/lib/datastore/bundle/bundle.spec.d.ts +0 -1
  94. package/lib/datastore/bundle/bundle.spec.js +0 -94
  95. package/lib/datastore/index.d.ts +0 -3
  96. package/lib/datastore/index.js +0 -16
  97. package/lib/datastore/simulator/add/add.d.ts +0 -3
  98. package/lib/datastore/simulator/add/add.js +0 -125
  99. package/lib/datastore/simulator/add/add.spec.d.ts +0 -1
  100. package/lib/datastore/simulator/add/add.spec.js +0 -114
  101. package/lib/datastore/simulator/clear/clear.d.ts +0 -3
  102. package/lib/datastore/simulator/clear/clear.js +0 -70
  103. package/lib/datastore/simulator/clear/clear.spec.d.ts +0 -1
  104. package/lib/datastore/simulator/clear/clear.spec.js +0 -224
  105. package/lib/datastore/simulator/list/list.d.ts +0 -3
  106. package/lib/datastore/simulator/list/list.js +0 -115
  107. package/lib/datastore/simulator/list/list.spec.d.ts +0 -1
  108. package/lib/datastore/simulator/list/list.spec.js +0 -95
  109. package/lib/datastore/simulator/pause/pause.d.ts +0 -3
  110. package/lib/datastore/simulator/pause/pause.js +0 -84
  111. package/lib/datastore/simulator/pause/pause.spec.d.ts +0 -1
  112. package/lib/datastore/simulator/pause/pause.spec.js +0 -90
  113. package/lib/datastore/simulator/remove/remove.d.ts +0 -3
  114. package/lib/datastore/simulator/remove/remove.js +0 -68
  115. package/lib/datastore/simulator/remove/remove.spec.d.ts +0 -1
  116. package/lib/datastore/simulator/remove/remove.spec.js +0 -224
  117. package/lib/datastore/simulator/resume/resume.d.ts +0 -3
  118. package/lib/datastore/simulator/resume/resume.js +0 -84
  119. package/lib/datastore/simulator/resume/resume.spec.d.ts +0 -1
  120. package/lib/datastore/simulator/resume/resume.spec.js +0 -90
  121. package/lib/datastore/simulator/simulatorCommand.d.ts +0 -3
  122. package/lib/datastore/simulator/simulatorCommand.js +0 -27
  123. package/lib/datastore/simulator/upgrade/upgrade.d.ts +0 -3
  124. package/lib/datastore/simulator/upgrade/upgrade.js +0 -157
  125. package/lib/datastore/simulator/upgrade/upgrade.spec.d.ts +0 -1
  126. package/lib/datastore/simulator/upgrade/upgrade.spec.js +0 -199
  127. package/lib/datastore/simulator/utils.d.ts +0 -29
  128. package/lib/datastore/simulator/utils.js +0 -218
  129. package/lib/datastore/simulator/utils.spec.d.ts +0 -1
  130. package/lib/datastore/simulator/utils.spec.js +0 -201
  131. package/lib/datastore/utils.d.ts +0 -20
  132. package/lib/datastore/utils.js +0 -241
  133. package/lib/datastore/utils.spec.d.ts +0 -1
  134. package/lib/datastore/utils.spec.js +0 -113
  135. package/lib/dxp.d.ts +0 -1
  136. package/lib/dxp.js +0 -57
  137. package/lib/job-runner/index.d.ts +0 -3
  138. package/lib/job-runner/index.js +0 -22
  139. package/lib/job-runner/job/listJobs/listJobs.d.ts +0 -3
  140. package/lib/job-runner/job/listJobs/listJobs.js +0 -66
  141. package/lib/job-runner/job/listJobs/listJobs.spec.d.ts +0 -1
  142. package/lib/job-runner/job/listJobs/listJobs.spec.js +0 -42
  143. package/lib/job-runner/job/uploadJob/uploadJob.d.ts +0 -3
  144. package/lib/job-runner/job/uploadJob/uploadJob.js +0 -56
  145. package/lib/job-runner/job/uploadJob/uploadJob.spec.d.ts +0 -1
  146. package/lib/job-runner/job/uploadJob/uploadJob.spec.js +0 -42
  147. package/lib/job-runner/jobContext/listJobContexts.d.ts +0 -3
  148. package/lib/job-runner/jobContext/listJobContexts.js +0 -66
  149. package/lib/job-runner/jobContext/listJobContexts.spec.d.ts +0 -1
  150. package/lib/job-runner/jobContext/listJobContexts.spec.js +0 -58
  151. package/lib/job-runner/jobExecution/beginJob/beginJob.d.ts +0 -3
  152. package/lib/job-runner/jobExecution/beginJob/beginJob.js +0 -68
  153. package/lib/job-runner/jobExecution/beginJob/beginJob.spec.d.ts +0 -1
  154. package/lib/job-runner/jobExecution/beginJob/beginJob.spec.js +0 -62
  155. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.d.ts +0 -3
  156. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.js +0 -67
  157. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.d.ts +0 -1
  158. package/lib/job-runner/jobExecution/listJobExecutions/listJobExecutions.spec.js +0 -64
  159. package/lib/job-runner/jobExecution/terminateJob/terminateJob.d.ts +0 -3
  160. package/lib/job-runner/jobExecution/terminateJob/terminateJob.js +0 -64
  161. package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.d.ts +0 -1
  162. package/lib/job-runner/jobExecution/terminateJob/terminateJob.spec.js +0 -61
  163. package/lib/job-runner/utils.d.ts +0 -19
  164. package/lib/job-runner/utils.js +0 -145
  165. package/lib/job-runner/utils.spec.d.ts +0 -1
  166. package/lib/job-runner/utils.spec.js +0 -116
  167. package/lib/migration/create/create.d.ts +0 -3
  168. package/lib/migration/create/create.js +0 -56
  169. package/lib/migration/create/create.spec.d.ts +0 -1
  170. package/lib/migration/create/create.spec.js +0 -280
  171. package/lib/migration/get/get.d.ts +0 -3
  172. package/lib/migration/get/get.js +0 -46
  173. package/lib/migration/get/get.spec.d.ts +0 -1
  174. package/lib/migration/get/get.spec.js +0 -287
  175. package/lib/migration/index.d.ts +0 -3
  176. package/lib/migration/index.js +0 -24
  177. package/lib/migration/list/list.d.ts +0 -3
  178. package/lib/migration/list/list.js +0 -45
  179. package/lib/migration/list/list.spec.d.ts +0 -1
  180. package/lib/migration/list/list.spec.js +0 -138
  181. package/lib/migration/next/next.d.ts +0 -3
  182. package/lib/migration/next/next.js +0 -75
  183. package/lib/migration/next/next.spec.d.ts +0 -1
  184. package/lib/migration/next/next.spec.js +0 -253
  185. package/lib/migration/pre/pre.d.ts +0 -3
  186. package/lib/migration/pre/pre.js +0 -54
  187. package/lib/migration/pre/pre.spec.d.ts +0 -1
  188. package/lib/migration/pre/pre.spec.js +0 -269
  189. package/lib/migration/revert/revert.d.ts +0 -3
  190. package/lib/migration/revert/revert.js +0 -47
  191. package/lib/migration/revert/revert.spec.d.ts +0 -1
  192. package/lib/migration/revert/revert.spec.js +0 -153
  193. package/lib/migration/settings/settings.d.ts +0 -3
  194. package/lib/migration/settings/settings.js +0 -63
  195. package/lib/migration/settings/settings.spec.d.ts +0 -1
  196. package/lib/migration/settings/settings.spec.js +0 -339
  197. package/lib/migration/types/common.types.d.ts +0 -29
  198. package/lib/migration/types/common.types.js +0 -2
  199. package/lib/migration/types/createMigration.types.d.ts +0 -10
  200. package/lib/migration/types/createMigration.types.js +0 -2
  201. package/lib/migration/types/getMigration.types.d.ts +0 -5
  202. package/lib/migration/types/getMigration.types.js +0 -2
  203. package/lib/migration/types/index.d.ts +0 -7
  204. package/lib/migration/types/index.js +0 -23
  205. package/lib/migration/types/listMigrations.types.d.ts +0 -2
  206. package/lib/migration/types/listMigrations.types.js +0 -2
  207. package/lib/migration/types/nextStage.types.d.ts +0 -10
  208. package/lib/migration/types/nextStage.types.js +0 -2
  209. package/lib/migration/types/preMigration.types.d.ts +0 -10
  210. package/lib/migration/types/preMigration.types.js +0 -2
  211. package/lib/migration/types/revert.types.d.ts +0 -6
  212. package/lib/migration/types/revert.types.js +0 -2
  213. package/lib/migration/types/settings.types.d.ts +0 -15
  214. package/lib/migration/types/settings.types.js +0 -2
  215. package/lib/migration/utils/common.d.ts +0 -39
  216. package/lib/migration/utils/common.js +0 -134
  217. package/lib/migration/utils/common.spec.d.ts +0 -1
  218. package/lib/migration/utils/common.spec.js +0 -165
  219. package/lib/migration/utils/createMigration.d.ts +0 -33
  220. package/lib/migration/utils/createMigration.js +0 -125
  221. package/lib/migration/utils/createMigration.spec.d.ts +0 -1
  222. package/lib/migration/utils/createMigration.spec.js +0 -259
  223. package/lib/migration/utils/getMigration.d.ts +0 -2
  224. package/lib/migration/utils/getMigration.js +0 -41
  225. package/lib/migration/utils/getMigration.spec.d.ts +0 -1
  226. package/lib/migration/utils/getMigration.spec.js +0 -156
  227. package/lib/migration/utils/index.d.ts +0 -9
  228. package/lib/migration/utils/index.js +0 -25
  229. package/lib/migration/utils/listMigrations.d.ts +0 -3
  230. package/lib/migration/utils/listMigrations.js +0 -41
  231. package/lib/migration/utils/listMigrations.spec.d.ts +0 -1
  232. package/lib/migration/utils/listMigrations.spec.js +0 -108
  233. package/lib/migration/utils/loadCctIdsFromFile.d.ts +0 -1
  234. package/lib/migration/utils/loadCctIdsFromFile.js +0 -32
  235. package/lib/migration/utils/loadCctIdsFromFile.spec.d.ts +0 -1
  236. package/lib/migration/utils/loadCctIdsFromFile.spec.js +0 -91
  237. package/lib/migration/utils/loadStageOptionsFromFile.d.ts +0 -1
  238. package/lib/migration/utils/loadStageOptionsFromFile.js +0 -32
  239. package/lib/migration/utils/loadStageOptionsFromFile.spec.d.ts +0 -1
  240. package/lib/migration/utils/loadStageOptionsFromFile.spec.js +0 -77
  241. package/lib/migration/utils/nextStage.d.ts +0 -2
  242. package/lib/migration/utils/nextStage.js +0 -45
  243. package/lib/migration/utils/nextStage.spec.d.ts +0 -1
  244. package/lib/migration/utils/nextStage.spec.js +0 -151
  245. package/lib/migration/utils/options.d.ts +0 -15
  246. package/lib/migration/utils/options.js +0 -106
  247. package/lib/migration/utils/options.spec.d.ts +0 -1
  248. package/lib/migration/utils/options.spec.js +0 -115
  249. package/lib/migration/utils/promptForMorphConfirmation.d.ts +0 -5
  250. package/lib/migration/utils/promptForMorphConfirmation.js +0 -55
  251. package/lib/migration/utils/promptForMorphConfirmation.spec.d.ts +0 -1
  252. package/lib/migration/utils/promptForMorphConfirmation.spec.js +0 -101
  253. package/lib/migration/utils/revertMigration.d.ts +0 -2
  254. package/lib/migration/utils/revertMigration.js +0 -38
  255. package/lib/migration/utils/revertMigration.spec.d.ts +0 -1
  256. package/lib/migration/utils/revertMigration.spec.js +0 -95
  257. package/lib/migration/utils/setMigrationSettings.d.ts +0 -2
  258. package/lib/migration/utils/setMigrationSettings.js +0 -52
  259. package/lib/migration/utils/setMigrationSettings.spec.d.ts +0 -1
  260. package/lib/migration/utils/setMigrationSettings.spec.js +0 -163
  261. package/lib/page/index.d.ts +0 -3
  262. package/lib/page/index.js +0 -12
  263. package/lib/page/layouts/deploy/deploy.d.ts +0 -5
  264. package/lib/page/layouts/deploy/deploy.js +0 -157
  265. package/lib/page/layouts/deploy/deploy.spec.d.ts +0 -1
  266. package/lib/page/layouts/deploy/deploy.spec.js +0 -319
  267. package/lib/page/layouts/dev/dev.d.ts +0 -5
  268. package/lib/page/layouts/dev/dev.js +0 -84
  269. package/lib/page/layouts/dev/dev.spec.d.ts +0 -1
  270. package/lib/page/layouts/dev/dev.spec.js +0 -271
  271. package/lib/page/layouts/layouts.d.ts +0 -3
  272. package/lib/page/layouts/layouts.js +0 -17
  273. package/lib/page/layouts/layouts.spec.d.ts +0 -1
  274. package/lib/page/layouts/layouts.spec.js +0 -29
  275. package/lib/page/layouts/validation/index.d.ts +0 -3
  276. package/lib/page/layouts/validation/index.js +0 -9
  277. package/lib/page/layouts/validation/property-consistency.d.ts +0 -7
  278. package/lib/page/layouts/validation/property-consistency.js +0 -92
  279. package/lib/page/layouts/validation/property-consistency.spec.d.ts +0 -1
  280. package/lib/page/layouts/validation/property-consistency.spec.js +0 -305
  281. package/lib/page/layouts/validation/validateLayoutFormat.d.ts +0 -2
  282. package/lib/page/layouts/validation/validateLayoutFormat.js +0 -27
  283. package/lib/page/layouts/validation/validateLayoutFormat.spec.d.ts +0 -1
  284. package/lib/page/layouts/validation/validateLayoutFormat.spec.js +0 -42
  285. package/lib/page/layouts/validation/zone-consistency.d.ts +0 -7
  286. package/lib/page/layouts/validation/zone-consistency.js +0 -50
  287. package/lib/page/layouts/validation/zone-consistency.spec.d.ts +0 -1
  288. package/lib/page/layouts/validation/zone-consistency.spec.js +0 -99
  289. package/lib/page/templates/validation.d.ts +0 -11
  290. package/lib/page/templates/validation.js +0 -30
  291. package/lib/page/templates/validation.spec.d.ts +0 -1
  292. package/lib/page/templates/validation.spec.js +0 -89
  293. package/lib/page/utils/definitions.d.ts +0 -552
  294. package/lib/page/utils/definitions.js +0 -241
  295. package/lib/page/utils/definitions.spec.d.ts +0 -1
  296. package/lib/page/utils/definitions.spec.js +0 -749
  297. package/lib/page/utils/normalize.d.ts +0 -8
  298. package/lib/page/utils/normalize.js +0 -54
  299. package/lib/page/utils/normalize.spec.d.ts +0 -1
  300. package/lib/page/utils/normalize.spec.js +0 -315
  301. package/lib/page/utils/parse-args.d.ts +0 -44
  302. package/lib/page/utils/parse-args.js +0 -119
  303. package/lib/page/utils/parse-args.spec.d.ts +0 -1
  304. package/lib/page/utils/parse-args.spec.js +0 -284
  305. package/lib/page/utils/render.d.ts +0 -51
  306. package/lib/page/utils/render.js +0 -112
  307. package/lib/page/utils/render.spec.d.ts +0 -1
  308. package/lib/page/utils/render.spec.js +0 -134
  309. package/lib/page/utils/server.d.ts +0 -12
  310. package/lib/page/utils/server.js +0 -201
  311. package/lib/page/utils/server.spec.d.ts +0 -1
  312. package/lib/page/utils/server.spec.js +0 -275
  313. package/lib/porter/constants.d.ts +0 -11
  314. package/lib/porter/constants.js +0 -14
  315. package/lib/porter/index.d.ts +0 -3
  316. package/lib/porter/index.js +0 -24
  317. package/lib/porter/port/abort/abort.d.ts +0 -3
  318. package/lib/porter/port/abort/abort.js +0 -80
  319. package/lib/porter/port/abort/abort.spec.d.ts +0 -1
  320. package/lib/porter/port/abort/abort.spec.js +0 -182
  321. package/lib/porter/port/get/get.d.ts +0 -3
  322. package/lib/porter/port/get/get.js +0 -96
  323. package/lib/porter/port/get/get.spec.d.ts +0 -1
  324. package/lib/porter/port/get/get.spec.js +0 -277
  325. package/lib/porter/port/start/start.d.ts +0 -3
  326. package/lib/porter/port/start/start.js +0 -82
  327. package/lib/porter/port/start/start.spec.d.ts +0 -1
  328. package/lib/porter/port/start/start.spec.js +0 -198
  329. package/lib/porter/project/add/add.d.ts +0 -3
  330. package/lib/porter/project/add/add.js +0 -138
  331. package/lib/porter/project/add/add.spec.d.ts +0 -1
  332. package/lib/porter/project/add/add.spec.js +0 -269
  333. package/lib/porter/project/get/get.d.ts +0 -3
  334. package/lib/porter/project/get/get.js +0 -65
  335. package/lib/porter/project/get/get.spec.d.ts +0 -1
  336. package/lib/porter/project/get/get.spec.js +0 -185
  337. package/lib/porter/project/remove/remove.d.ts +0 -3
  338. package/lib/porter/project/remove/remove.js +0 -69
  339. package/lib/porter/project/remove/remove.spec.d.ts +0 -1
  340. package/lib/porter/project/remove/remove.spec.js +0 -201
  341. package/lib/porter/types.d.ts +0 -5
  342. package/lib/porter/types.js +0 -2
  343. package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.d.ts +0 -4
  344. package/lib/porter/utils/BuildDXPUrl/BuildDXPUrl.js +0 -34
  345. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.d.ts +0 -1
  346. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.js +0 -21
  347. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.d.ts +0 -1
  348. package/lib/porter/utils/BuildPorterUrl/BuildPorterUrl.spec.js +0 -52
  349. package/lib/porter/utils/CoreUtils/CoreUtils.d.ts +0 -2
  350. package/lib/porter/utils/CoreUtils/CoreUtils.js +0 -13
  351. package/lib/porter/utils/CoreUtils/CoreUtils.spec.d.ts +0 -1
  352. package/lib/porter/utils/CoreUtils/CoreUtils.spec.js +0 -36
  353. package/lib/porter/utils/DoesPathExist/DoesPathExist.d.ts +0 -1
  354. package/lib/porter/utils/DoesPathExist/DoesPathExist.js +0 -27
  355. package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.d.ts +0 -1
  356. package/lib/porter/utils/DoesPathExist/DoesPathExist.spec.js +0 -40
  357. package/lib/porter/utils/ErrorUtils/ErrorUtils.d.ts +0 -4
  358. package/lib/porter/utils/ErrorUtils/ErrorUtils.js +0 -66
  359. package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.d.ts +0 -1
  360. package/lib/porter/utils/ErrorUtils/ErrorUtils.spec.js +0 -176
  361. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.d.ts +0 -2
  362. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.js +0 -33
  363. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.d.ts +0 -1
  364. package/lib/porter/utils/GetProjectConfig/GetProjectConfig.spec.js +0 -50
  365. package/lib/porter/utils/GetProjectName/GetProjectName.d.ts +0 -4
  366. package/lib/porter/utils/GetProjectName/GetProjectName.js +0 -30
  367. package/lib/porter/utils/GetProjectName/GetProjectName.spec.d.ts +0 -1
  368. package/lib/porter/utils/GetProjectName/GetProjectName.spec.js +0 -91
  369. package/lib/porter/utils/index.d.ts +0 -7
  370. package/lib/porter/utils/index.js +0 -23
@@ -1,157 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const commander_1 = require("commander");
16
- const chalk_1 = __importDefault(require("chalk"));
17
- const ora_1 = __importDefault(require("ora"));
18
- const utils_1 = require("../../utils");
19
- const utils_2 = require("../utils");
20
- const path_1 = require("path");
21
- const ApplicationStore_1 = require("../../../ApplicationStore");
22
- const ApiService_1 = require("../../../ApiService");
23
- function getCurrentLatest() {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- const dockerAPI = 'https://registry.hub.docker.com/v2/repositories/squizdxp/datastore/tags/latest';
26
- const apiService = new ApiService_1.ApiService({ validateStatus: utils_1.validateAxiosStatus });
27
- apiService.client.interceptors.request.clear();
28
- apiService.client.interceptors.response.clear();
29
- const dockerFetch = yield apiService.client.get(dockerAPI);
30
- const dockerResponse = dockerFetch.data;
31
- return dockerResponse.images[0].digest || null;
32
- });
33
- }
34
- function upgradeContainer(container, tempFolder, dockerDigest) {
35
- return __awaiter(this, void 0, void 0, function* () {
36
- if (container === '') {
37
- return;
38
- }
39
- const upgradeSpinner = (0, ora_1.default)();
40
- const results = container.split('~');
41
- const containerName = results[0] || '';
42
- const labels = results[1].split(',');
43
- let blueprint = '';
44
- let port = '';
45
- // Blueprint and port stored in label, extract them.
46
- labels.forEach(label => {
47
- if (label.startsWith('blueprint=') === true) {
48
- blueprint = label.replace('blueprint=', '');
49
- }
50
- if (label.startsWith('port=') === true) {
51
- port = label.replace('port=', '');
52
- }
53
- });
54
- const status = results[2].toLowerCase().split(' ')[0] || '';
55
- const host = '0.0.0.0';
56
- const dirPath = (0, path_1.dirname)(blueprint);
57
- try {
58
- console.log('');
59
- upgradeSpinner.start(`Upgrading Container ID "${containerName}"`);
60
- yield (0, utils_2.executeCommand)(`mkdir ${tempFolder}/${containerName}`);
61
- yield (0, utils_2.executeCommand)(`docker start ${containerName} > /dev/null`);
62
- // Backup data from container.
63
- yield (0, utils_2.executeCommand)(`docker cp ${containerName}:/var/www/data ${tempFolder}/${containerName}/`);
64
- // Kill old container.
65
- yield (0, utils_2.executeCommand)(`docker rm -f ${containerName} > /dev/null`);
66
- // Run a new container.
67
- yield (0, utils_2.executeCommand)(`docker run -l "blueprint=${blueprint}" -l "port=${port}" -itd --name ${containerName} -p ${host}:${port}:80 -e MYHOST=${host} -e MYPORT=${port} -e BLUEPRINT=${blueprint} -v "${dirPath}":/var/www/instances ${utils_2.datastoreRepo}`);
68
- // Restore data folder.
69
- yield (0, utils_2.executeCommand)(`docker cp ${tempFolder}/${containerName}/data ${containerName}:/var/www/`);
70
- const simulatorVersion = yield (0, utils_2.executeCommand)(`docker image inspect ${utils_2.datastoreRepo} --format '{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}'`);
71
- const upgradedVersion = simulatorVersion.replace(/\r?\n|\r/g, '');
72
- yield (0, utils_2.writeSimulatorContainerData)(containerName, blueprint, dockerDigest, upgradedVersion);
73
- }
74
- catch (error) {
75
- (0, utils_1.logDebug)(`ERROR: ${JSON.stringify(error)}`);
76
- upgradeSpinner.fail(`Unable to upgrade simulator Container ID "${containerName}"`);
77
- throw new Error(`Unable to upgrade simulator Container ID "${containerName}"`);
78
- }
79
- // Wipe simulator data.
80
- upgradeSpinner.succeed(`Done! Container ID "${containerName}" upgraded.`);
81
- yield (0, utils_2.executeCommand)(`docker exec ${containerName} bash -c "rm -rf /var/www/data/storage; rm -rf /var/www/data/provision/**/oven"`);
82
- if (status.includes('exit') === true) {
83
- // If it was paused, stop it again.
84
- yield (0, utils_2.executeCommand)(`docker stop ${containerName}`);
85
- }
86
- });
87
- }
88
- const createUpgradeCommand = () => {
89
- const upgradeCommand = new commander_1.Command('upgrade')
90
- .name('upgrade')
91
- .description('Removes a datastore simulator')
92
- .addOption(new commander_1.Option('-f, --force', 'Force the removal of the datastore simulator'))
93
- .configureOutput({
94
- outputError(str, write) {
95
- write(chalk_1.default.red(str));
96
- },
97
- })
98
- .action((options) => __awaiter(void 0, void 0, void 0, function* () {
99
- console.log('');
100
- const spinner = (0, ora_1.default)();
101
- try {
102
- yield (0, utils_2.checkDockerInstalled)();
103
- const forceMessage = 'This will wipe all test data for all of your simulated blueprints. Are you sure you want to continue? (y/N)';
104
- if (!options.force) {
105
- if ((yield (0, utils_2.forcePrompt)(forceMessage, false)) === false) {
106
- const removeGuide = 'To upgrade run:\n $ dxp-next datastore simulator upgrade --force\n';
107
- throw new Error(removeGuide);
108
- }
109
- }
110
- spinner.start('Upgrading all simulator containers.');
111
- yield (0, ApplicationStore_1.deleteApplicationFile)(utils_2.datastoreSimulatorCache);
112
- const currentLatest = yield getCurrentLatest();
113
- const currentDigest = yield (0, utils_2.executeCommand)(`docker image inspect ${utils_2.datastoreRepo} --format "{{ index .RepoDigests }}"`);
114
- if (currentDigest.slice(20).startsWith(currentLatest) === true) {
115
- // Nothing to do here.
116
- spinner.succeed('Simulator already up to date');
117
- return;
118
- }
119
- const dockerDigest = currentDigest;
120
- let currentVersion = '';
121
- let upgradedVersion = '';
122
- let simulatorVersion = yield (0, utils_2.executeCommand)(`docker image inspect ${utils_2.datastoreRepo} --format '{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}'`);
123
- currentVersion = simulatorVersion.replace(/\r?\n|\r/g, '');
124
- const containersToUpgrade = yield (0, utils_2.executeCommand)('docker ps -a --filter "name=datastore-sim-*" --format "{{.Names}}~{{.Labels}}~{{.Status}}~{{.Ports}}#"');
125
- if (containersToUpgrade === '') {
126
- throw new Error('Sorry, could not find any simulators.');
127
- }
128
- spinner.text = 'Downloading latest simulator image.';
129
- try {
130
- yield (0, utils_2.executeCommand)(`docker pull ${utils_2.datastoreRepo}`);
131
- }
132
- catch (error) {
133
- (0, utils_1.logDebug)(`ERROR: ${JSON.stringify(error)}`);
134
- throw new Error('Sorry, could not download simulator image. Ask for help in our support forums.');
135
- }
136
- const mkdirTemp = yield (0, utils_2.executeCommand)('mktemp -d -t datastore-XXXXXXXXXX');
137
- const tempFolder = mkdirTemp.replace(/\s+$/, '');
138
- spinner.text = 'Restarting containers.';
139
- yield Promise.all(containersToUpgrade.split(/#\s+/).map((container) => __awaiter(void 0, void 0, void 0, function* () {
140
- return yield upgradeContainer(container, tempFolder, dockerDigest);
141
- })));
142
- simulatorVersion = yield (0, utils_2.executeCommand)(`docker image inspect ${utils_2.datastoreRepo} --format '{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}'`);
143
- upgradedVersion = simulatorVersion.replace(/\r?\n|\r/g, '');
144
- spinner.succeed(`All simulator containers have successfully been upgraded from ${currentVersion} to ${upgradedVersion}.`);
145
- // Remove temp backup folder.
146
- (0, utils_2.executeCommand)(`rm -rf ${tempFolder}`);
147
- return;
148
- }
149
- catch (error) {
150
- (0, utils_1.logDebug)(`ERROR: ${JSON.stringify(error)}`);
151
- spinner.fail();
152
- (0, utils_1.handleCommandError)(upgradeCommand, error);
153
- }
154
- }));
155
- return upgradeCommand;
156
- };
157
- exports.default = createUpgradeCommand;
@@ -1 +0,0 @@
1
- export {};
@@ -1,199 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __importDefault = (this && this.__importDefault) || function (mod) {
35
- return (mod && mod.__esModule) ? mod : { "default": mod };
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- const upgrade_1 = __importDefault(require("./upgrade"));
39
- const utils = __importStar(require("../utils"));
40
- const chalk_1 = __importDefault(require("chalk"));
41
- const nock_1 = __importDefault(require("nock"));
42
- const logSpy = jest.spyOn(global.console, 'log');
43
- const exitSpy = jest.spyOn(process, 'exit').mockImplementation(() => {
44
- return undefined;
45
- }); // prevent process exit on error
46
- beforeEach(() => {
47
- jest.resetAllMocks();
48
- (0, nock_1.default)('https://registry.hub.docker.com')
49
- .get('/v2/repositories/squizdxp/datastore/tags/latest')
50
- .reply(200, {
51
- images: [
52
- {
53
- digest: 'sha256:bd61f8f80d9f235d81477454cf512a6edede0ae6d2d0a8c0508956db2418dbe0',
54
- },
55
- ],
56
- });
57
- });
58
- describe('datastoreSimulatorUpgrade', () => {
59
- it('should not upgrade a simulator if prompt returns false', () => __awaiter(void 0, void 0, void 0, function* () {
60
- const forcePromptSpy = jest
61
- .spyOn(utils, 'forcePrompt')
62
- .mockResolvedValue(false);
63
- let executeCommandCount = 0;
64
- const executeCommandSpy = jest
65
- .spyOn(utils, 'executeCommand')
66
- .mockImplementation((cmd, opt) => {
67
- executeCommandCount++;
68
- switch (executeCommandCount) {
69
- case 1:
70
- expect(cmd).toStrictEqual('docker -v');
71
- return Promise.resolve('Docker version 20.10.23, build 7155243');
72
- }
73
- return Promise.reject(false);
74
- });
75
- const program = (0, upgrade_1.default)();
76
- const commandErrorSpy = jest.spyOn(program, 'error');
77
- yield program.parseAsync([
78
- 'node',
79
- 'dxp-cli',
80
- 'datastore',
81
- 'simulator',
82
- 'upgrade',
83
- ]);
84
- expect(commandErrorSpy).toHaveBeenCalledWith(chalk_1.default.red(`To upgrade run:
85
- $ dxp-next datastore simulator upgrade --force
86
- `));
87
- expect(forcePromptSpy).toHaveBeenCalledWith('This will wipe all test data for all of your simulated blueprints. Are you sure you want to continue? (y/N)', false);
88
- expect(logSpy).toHaveBeenCalledTimes(1);
89
- expect(executeCommandSpy).toHaveBeenCalledTimes(1);
90
- }));
91
- it('should not upgrade a simulator if already on latest', () => __awaiter(void 0, void 0, void 0, function* () {
92
- let executeCommandCount = 0;
93
- const executeCommandSpy = jest
94
- .spyOn(utils, 'executeCommand')
95
- .mockImplementation((cmd, opt) => {
96
- executeCommandCount++;
97
- switch (executeCommandCount) {
98
- case 1:
99
- expect(cmd).toStrictEqual('docker -v');
100
- return Promise.resolve('Docker version 20.10.23, build 7155243');
101
- case 2:
102
- expect(cmd).toStrictEqual('docker image inspect squizdxp/datastore:latest --format "{{ index .RepoDigests }}"');
103
- return Promise.resolve('[squizdxp/datastore@sha256:bd61f8f80d9f235d81477454cf512a6edede0ae6d2d0a8c0508956db2418dbe0]');
104
- }
105
- return Promise.reject(false);
106
- });
107
- const program = (0, upgrade_1.default)();
108
- const commandErrorSpy = jest.spyOn(program, 'error');
109
- yield program.parseAsync([
110
- 'node',
111
- 'dxp-cli',
112
- 'datastore',
113
- 'simulator',
114
- 'upgrade',
115
- '--force',
116
- ]);
117
- expect(logSpy).toHaveBeenCalledTimes(1);
118
- expect(executeCommandSpy).toHaveBeenCalledTimes(2);
119
- }));
120
- it('should upgrade a simulator if prompt returns true', () => __awaiter(void 0, void 0, void 0, function* () {
121
- const forcePromptSpy = jest
122
- .spyOn(utils, 'forcePrompt')
123
- .mockResolvedValue(true);
124
- const writeSimulatorContainerDataSpy = jest.spyOn(utils, 'writeSimulatorContainerData');
125
- let executeCommandCount = 0;
126
- const executeCommandSpy = jest
127
- .spyOn(utils, 'executeCommand')
128
- .mockImplementation((cmd, opt) => {
129
- executeCommandCount++;
130
- // console.info(executeCommandCount, cmd);
131
- switch (executeCommandCount) {
132
- case 1:
133
- expect(cmd).toStrictEqual('docker -v');
134
- return Promise.resolve('Docker version 20.10.23, build 7155243');
135
- case 2:
136
- expect(cmd).toStrictEqual('docker image inspect squizdxp/datastore:latest --format "{{ index .RepoDigests }}"');
137
- return Promise.resolve('[squizdxp/datastore@sha256:bd61f8f80d9f235d81477454cf512a6edede0ae6d2d0a8c0508956db2418dbe1]');
138
- case 3:
139
- expect(cmd).toStrictEqual('docker image inspect squizdxp/datastore:latest --format \'{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}\'');
140
- return Promise.resolve('4.0.0');
141
- case 4:
142
- expect(cmd).toStrictEqual('docker ps -a --filter "name=datastore-sim-*" --format "{{.Names}}~{{.Labels}}~{{.Status}}~{{.Ports}}#"');
143
- return Promise.resolve('datastore-sim-6909fc2c~desktop.docker.io/binds/0/Source=/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate,desktop.docker.io/binds/0/SourceKind=hostFile,desktop.docker.io/binds/0/Target=/var/www/instances,port=7001,squiz.datastore.version=4.0.0,blueprint=/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate/api.yaml~Up 16 hours~0.0.0.0:7001->80/tcp#');
144
- case 5:
145
- expect(cmd).toStrictEqual('docker pull squizdxp/datastore:latest');
146
- return Promise.resolve('');
147
- case 6:
148
- expect(cmd).toStrictEqual('mktemp -d -t datastore-XXXXXXXXXX');
149
- return Promise.resolve('/tmp/datastore-XXXXXXXXXX');
150
- case 7:
151
- expect(cmd).toStrictEqual('mkdir /tmp/datastore-XXXXXXXXXX/datastore-sim-6909fc2c');
152
- return Promise.resolve('');
153
- case 8:
154
- expect(cmd).toStrictEqual('docker start datastore-sim-6909fc2c > /dev/null');
155
- return Promise.resolve('');
156
- case 9:
157
- expect(cmd).toStrictEqual('docker cp datastore-sim-6909fc2c:/var/www/data /tmp/datastore-XXXXXXXXXX/datastore-sim-6909fc2c/');
158
- return Promise.resolve('');
159
- case 10:
160
- expect(cmd).toStrictEqual('docker rm -f datastore-sim-6909fc2c > /dev/null');
161
- return Promise.resolve('');
162
- case 11:
163
- expect(cmd).toStrictEqual('docker run -l "blueprint=/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate/api.yaml" -l "port=7001" -itd --name datastore-sim-6909fc2c -p 0.0.0.0:7001:80 -e MYHOST=0.0.0.0 -e MYPORT=7001 -e BLUEPRINT=/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate/api.yaml -v "/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate":/var/www/instances squizdxp/datastore:latest');
164
- return Promise.resolve('');
165
- case 12:
166
- expect(cmd).toStrictEqual('docker cp /tmp/datastore-XXXXXXXXXX/datastore-sim-6909fc2c/data datastore-sim-6909fc2c:/var/www/');
167
- return Promise.resolve('');
168
- case 13:
169
- expect(cmd).toStrictEqual('docker image inspect squizdxp/datastore:latest --format \'{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}\'');
170
- return Promise.resolve('4.0.1');
171
- case 14:
172
- expect(cmd).toStrictEqual('docker exec datastore-sim-6909fc2c cat /var/www/data/containerData.json');
173
- return Promise.resolve('{}');
174
- case 15:
175
- expect(cmd).toStrictEqual('docker exec datastore-sim-6909fc2c bash -c "rm -rf /var/www/data/storage; rm -rf /var/www/data/provision/**/oven"');
176
- return Promise.resolve('');
177
- case 16:
178
- expect(cmd).toStrictEqual('docker image inspect squizdxp/datastore:latest --format \'{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}\'');
179
- return Promise.resolve('4.0.1');
180
- case 17:
181
- expect(cmd).toStrictEqual('rm -rf /tmp/datastore-XXXXXXXXXX');
182
- return Promise.resolve('');
183
- }
184
- return Promise.reject(false);
185
- });
186
- const program = (0, upgrade_1.default)();
187
- yield program.parseAsync([
188
- 'node',
189
- 'dxp-cli',
190
- 'datastore',
191
- 'simulator',
192
- 'upgrade',
193
- ]);
194
- expect(logSpy).toHaveBeenCalledTimes(2);
195
- expect(executeCommandSpy).toHaveBeenCalledTimes(14);
196
- expect(forcePromptSpy).toHaveBeenCalledWith('This will wipe all test data for all of your simulated blueprints. Are you sure you want to continue? (y/N)', false);
197
- expect(writeSimulatorContainerDataSpy).toHaveBeenCalledWith('datastore-sim-6909fc2c', '/Users/pnolland/Documents/Work/GitRepos/blueprints/boilerplate/api.yaml', '[squizdxp/datastore@sha256:bd61f8f80d9f235d81477454cf512a6edede0ae6d2d0a8c0508956db2418dbe1]', '4.0.1');
198
- }));
199
- });
@@ -1,29 +0,0 @@
1
- import { FileStore } from '../../ApplicationStore';
2
- declare type datastoreVersionCache = {
3
- digest: string;
4
- updatedAt: number;
5
- version: string;
6
- };
7
- interface WriteSimulatorContainerDataResponse {
8
- url: string;
9
- jwtUrl: string;
10
- }
11
- export declare const datastoreSimulatorCache: FileStore;
12
- export declare const datastoreRepo = "squizdxp/datastore:latest";
13
- export declare const allowedExtensions: string[];
14
- export declare const host = "0.0.0.0";
15
- export declare const availablePorts: string[];
16
- export declare const executeCommand: (cmd: string, opts?: any) => Promise<unknown>;
17
- export declare function stringHashShort(value: string): string;
18
- export declare const promptForContinue: (versionCache: datastoreVersionCache, currentVersion: string) => Promise<boolean>;
19
- export declare const forcePrompt: (message: string, def?: boolean) => Promise<boolean>;
20
- export declare function checkDockerInstalled(): Promise<void>;
21
- export declare const checkUpdateAvailable: () => Promise<null>;
22
- export declare function getSimulatorDetails(blueprint: string): {
23
- fullPath: string;
24
- dirPath: string;
25
- yamlFile: string;
26
- containerName: string;
27
- };
28
- export declare const writeSimulatorContainerData: (containerName: string, blueprintPath: string, digest: string, version: string) => Promise<WriteSimulatorContainerDataResponse>;
29
- export {};
@@ -1,218 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.writeSimulatorContainerData = exports.getSimulatorDetails = exports.checkUpdateAvailable = exports.checkDockerInstalled = exports.forcePrompt = exports.promptForContinue = exports.stringHashShort = exports.executeCommand = exports.availablePorts = exports.host = exports.allowedExtensions = exports.datastoreRepo = exports.datastoreSimulatorCache = void 0;
36
- const child_process_1 = require("child_process");
37
- const ApplicationStore_1 = require("../../ApplicationStore");
38
- const ApiService_1 = require("../../ApiService");
39
- const utils_1 = require("../utils");
40
- const path_1 = require("path");
41
- exports.datastoreSimulatorCache = {
42
- name: 'datastore-simulator',
43
- type: 'data',
44
- };
45
- exports.datastoreRepo = 'squizdxp/datastore:latest';
46
- exports.allowedExtensions = ['yaml', 'yml'];
47
- exports.host = '0.0.0.0';
48
- exports.availablePorts = [
49
- '7001',
50
- '7002',
51
- '7003',
52
- '7004',
53
- '7005',
54
- '7006',
55
- '7007',
56
- '7008',
57
- '7009',
58
- '7010',
59
- ];
60
- const dockerAPI = 'https://registry.hub.docker.com/v2/repositories/squizdxp/datastore/tags?page_size=3';
61
- const executeCommand = (cmd, opts = {}) => __awaiter(void 0, void 0, void 0, function* () {
62
- return new Promise(function (resolve, reject) {
63
- (0, child_process_1.exec)(cmd, opts, (err, stdout, stderr) => {
64
- if (err) {
65
- reject(err);
66
- }
67
- else {
68
- resolve(stdout);
69
- }
70
- });
71
- });
72
- });
73
- exports.executeCommand = executeCommand;
74
- function stringHashShort(value) {
75
- return value
76
- .split('')
77
- .reduce((prevHash, currVal) => ((prevHash << 5) - prevHash + currVal.charCodeAt(0)) | 0, 0)
78
- .toString(16)
79
- .replace('-', '');
80
- }
81
- exports.stringHashShort = stringHashShort;
82
- const promptForContinue = (versionCache, currentVersion) => __awaiter(void 0, void 0, void 0, function* () {
83
- const inquirer = yield Promise.resolve().then(() => __importStar(require('inquirer')));
84
- const confirm = yield inquirer.default.prompt([
85
- {
86
- default: false,
87
- message: 'A new version of the Datastore simulator is available ' +
88
- `(${currentVersion} -> ${versionCache.version}). ` +
89
- 'Would you like to upgrade now? (y/N)',
90
- name: 'skip',
91
- type: 'confirm',
92
- },
93
- ]);
94
- return confirm.skip;
95
- });
96
- exports.promptForContinue = promptForContinue;
97
- const forcePrompt = (message, def = false) => __awaiter(void 0, void 0, void 0, function* () {
98
- const inquirer = yield Promise.resolve().then(() => __importStar(require('inquirer')));
99
- const confirm = yield inquirer.default.prompt([
100
- {
101
- default: def,
102
- message,
103
- name: 'skip',
104
- type: 'confirm',
105
- },
106
- ]);
107
- return confirm.skip;
108
- });
109
- exports.forcePrompt = forcePrompt;
110
- function checkDockerInstalled() {
111
- return __awaiter(this, void 0, void 0, function* () {
112
- try {
113
- yield (0, exports.executeCommand)('docker -v');
114
- }
115
- catch (error) {
116
- throw new Error('Docker not installed. Please install latest version.');
117
- }
118
- });
119
- }
120
- exports.checkDockerInstalled = checkDockerInstalled;
121
- const checkUpdateAvailable = () => __awaiter(void 0, void 0, void 0, function* () {
122
- let simulatorVersionCmd = `docker image inspect ${exports.datastoreRepo}`;
123
- simulatorVersionCmd +=
124
- ' --format \'{{ or (index .Config.Labels "squiz.datastore.version") (printf "Unknown") }}\'';
125
- // Default updatedAt to over 1 hour ago to force a check
126
- const versionCache = JSON.parse((yield (0, ApplicationStore_1.getApplicationFile)(exports.datastoreSimulatorCache)) ||
127
- `{"updatedAt": ${Math.floor(Date.now() / 1000 - 7200)}}`);
128
- let refreshVersionCache = false;
129
- let versionInfo = versionCache;
130
- let latestImage;
131
- let taggedImage;
132
- if (typeof process.env.DXP_DATASTORE_SIMULATOR_SKIP_VERSION_CHECK ===
133
- 'string' &&
134
- process.env.DXP_DATASTORE_SIMULATOR_SKIP_VERSION_CHECK) {
135
- return null;
136
- }
137
- else {
138
- const nowAt = Math.floor(Date.now() / 1000);
139
- if (nowAt - versionCache.updatedAt > 3600) {
140
- refreshVersionCache = true;
141
- }
142
- if (refreshVersionCache === true) {
143
- const apiService = new ApiService_1.ApiService({
144
- validateStatus: utils_1.validateAxiosStatus,
145
- });
146
- apiService.client.interceptors.request.clear();
147
- apiService.client.interceptors.response.clear();
148
- const dockerFetch = yield apiService.client.get(dockerAPI);
149
- const dockerResponse = dockerFetch.data;
150
- latestImage = dockerResponse.results.filter((image) => {
151
- return image.name === 'latest';
152
- })[0];
153
- taggedImage = dockerResponse.results[1];
154
- versionInfo = {
155
- digest: latestImage.images[0].digest || '',
156
- updatedAt: Date.now() / 1000,
157
- version: taggedImage.name || '',
158
- };
159
- yield (0, ApplicationStore_1.saveApplicationFile)(exports.datastoreSimulatorCache, JSON.stringify(versionInfo));
160
- }
161
- let result;
162
- try {
163
- result = yield (0, exports.executeCommand)(`docker image inspect ${exports.datastoreRepo} --format "{{ index .RepoDigests }}"`);
164
- if (versionInfo.digest !== '' &&
165
- result.slice(20).startsWith(versionInfo.digest) === false) {
166
- const version = yield (0, exports.executeCommand)(simulatorVersionCmd);
167
- const currentVersion = version.replace(/\r?\n|\r/g, '');
168
- const upgradeGuide = 'To upgrade run:\n $ dxp-next datastore simulator upgrade\n';
169
- if ((yield (0, exports.promptForContinue)(versionInfo, currentVersion)) === true) {
170
- throw new Error(upgradeGuide);
171
- }
172
- }
173
- }
174
- catch (error) {
175
- if (error.message.includes('No such image')) {
176
- result = '';
177
- }
178
- else {
179
- throw new Error(error.message);
180
- }
181
- }
182
- }
183
- return null;
184
- });
185
- exports.checkUpdateAvailable = checkUpdateAvailable;
186
- function getSimulatorDetails(blueprint) {
187
- const fullPath = (0, path_1.resolve)(blueprint);
188
- const dirPath = (0, path_1.dirname)(fullPath);
189
- const yamlFile = (0, path_1.basename)(fullPath);
190
- const containerName = `datastore-sim-${stringHashShort(fullPath)}`;
191
- return {
192
- fullPath,
193
- dirPath,
194
- yamlFile,
195
- containerName,
196
- };
197
- }
198
- exports.getSimulatorDetails = getSimulatorDetails;
199
- const writeSimulatorContainerData = (containerName, blueprintPath, digest, version) => __awaiter(void 0, void 0, void 0, function* () {
200
- const yamlFile = (0, path_1.basename)(blueprintPath);
201
- const installCommand = yield (0, exports.executeCommand)(`docker exec -i ${containerName} install simulator:${yamlFile} --output=json`);
202
- const obj = JSON.parse(installCommand);
203
- const url = obj[0].URL;
204
- const jwtUrl = obj[0].jwtURL;
205
- // Store those info in a file on container, easier to fetch.
206
- const data = {
207
- blueprint: `${blueprintPath}`,
208
- container: `${containerName}`,
209
- imageDigest: `${digest}`,
210
- imageVersion: `${version}`,
211
- jwt: `${jwtUrl}`,
212
- url: `${url}`,
213
- };
214
- const jsonData = JSON.stringify(data, null, 4).replace(/"/g, '\\"');
215
- yield (0, exports.executeCommand)(`docker exec -i ${containerName} bash -c "echo '${jsonData}' > /var/www/data/containerData.json"`);
216
- return { url, jwtUrl };
217
- });
218
- exports.writeSimulatorContainerData = writeSimulatorContainerData;
@@ -1 +0,0 @@
1
- export {};