@squiz/job-runner-lib 1.66.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (748) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +7 -0
  3. package/build.js +20 -13
  4. package/jest.config.ts +10 -16
  5. package/lib/domains/component/index.d.ts +0 -12
  6. package/lib/domains/job/S3Repository/JobDetailsRepository.d.ts +17 -0
  7. package/lib/domains/job/S3Repository/JobDetailsRepository.spec.d.ts +5 -0
  8. package/lib/domains/job/S3Repository/S3Repository.d.ts +15 -0
  9. package/lib/domains/job/S3Repository/S3Repository.spec.d.ts +5 -0
  10. package/lib/domains/job/S3Repository/S3RepositoryBase.d.ts +39 -0
  11. package/lib/domains/job/S3Repository/S3RepositoryBase.spec.d.ts +5 -0
  12. package/lib/domains/job/S3Repository/index.d.ts +2 -0
  13. package/lib/domains/job/core/pagination/services/PaginationService.d.ts +4 -19
  14. package/lib/domains/job/index.d.ts +2 -0
  15. package/lib/domains/job/manifest/JobManifestV1.d.ts +1 -2
  16. package/lib/domains/job/model/LogPayload/LogPayload.d.ts +12 -0
  17. package/lib/domains/job/model/LogPayload/index.d.ts +1 -0
  18. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.d.ts +9 -4
  19. package/lib/domains/job/services/JobContextService/JobContextService.d.ts +19 -0
  20. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.d.ts +10 -2
  21. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.d.ts +2 -19
  22. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.d.ts +1 -1
  23. package/lib/domains/job/services/JobManifestService/JobManifestService.d.ts +15 -0
  24. package/lib/domains/job/services/JobQueueService/JobQueueService.d.ts +9 -0
  25. package/lib/domains/job/services/JobQueueService/JobQueueService.defs.d.ts +9 -0
  26. package/lib/domains/job/services/JobQueueService/JobQueueService.spec.d.ts +5 -0
  27. package/lib/domains/job/services/JobUploadService/JobUploadService.d.ts +19 -0
  28. package/lib/domains/job/services/JobUploadService/JobUploadService.mock.d.ts +6 -0
  29. package/lib/domains/job/services/JobUploadService/JobUploadService.spec.d.ts +5 -0
  30. package/lib/domains/job/services/JobUploadService/utils/cleanup.d.ts +11 -0
  31. package/lib/domains/job/services/JobUploadService/utils/cleanup.spec.d.ts +5 -0
  32. package/lib/domains/job/services/JobUploadService/utils/errorUtils.d.ts +16 -0
  33. package/lib/domains/job/services/JobUploadService/utils/errorUtils.spec.d.ts +5 -0
  34. package/lib/domains/job/services/JobUploadService/utils/index.d.ts +12 -0
  35. package/lib/domains/job/services/JobUploadService/utils/manifestValidator.d.ts +15 -0
  36. package/lib/domains/job/services/JobUploadService/utils/manifestValidator.spec.d.ts +5 -0
  37. package/lib/domains/job/services/JobUploadService/utils/responseHandler.d.ts +17 -0
  38. package/lib/domains/job/services/JobUploadService/utils/responseHandler.spec.d.ts +5 -0
  39. package/lib/domains/job/services/JobUploadService/utils/resultPoller.d.ts +16 -0
  40. package/lib/domains/job/services/JobUploadService/utils/resultPoller.spec.d.ts +5 -0
  41. package/lib/domains/job/services/JobUploadService/utils/scanWatcher.d.ts +13 -0
  42. package/lib/domains/job/services/JobUploadService/utils/scanWatcher.spec.d.ts +5 -0
  43. package/lib/domains/job/services/JobUploadService/utils/uploadInitializer.d.ts +19 -0
  44. package/lib/domains/job/services/JobUploadService/utils/uploadInitializer.spec.d.ts +5 -0
  45. package/lib/domains/job/services/JobUploadService/utils/versionChecker.d.ts +12 -0
  46. package/lib/domains/job/services/JobUploadService/utils/versionChecker.spec.d.ts +5 -0
  47. package/lib/domains/job/services/index.d.ts +4 -0
  48. package/lib/domains/job/utils/GetAwsTags/GetAwsTags.d.ts +2 -0
  49. package/lib/domains/job/utils/GetAwsTags/GetAwsTags.types.d.ts +18 -0
  50. package/lib/domains/job/utils/index.d.ts +2 -0
  51. package/lib/domains/manifest/ManifestModel.d.ts +2 -4
  52. package/lib/domains/manifest/index.d.ts +0 -9
  53. package/lib/domains/manifest/services/ComponentSchemaValidationService.d.ts +5 -4
  54. package/lib/domains/manifest/services/ManifestServiceForDev.d.ts +9 -15
  55. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.d.ts +1 -2
  56. package/lib/domains/manifest/utils/isValidManifestVersion.d.ts +1 -1
  57. package/lib/index.d.ts +0 -5
  58. package/lib/index.js +42 -39
  59. package/lib/index.js.map +7 -1
  60. package/lib/jest-global-setup.d.ts +0 -2
  61. package/package.json +20 -26
  62. package/src/domains/component/index.ts +0 -16
  63. package/src/domains/job/S3Repository/JobDetailsRepository.spec.ts +52 -0
  64. package/src/domains/job/S3Repository/JobDetailsRepository.ts +33 -0
  65. package/src/domains/job/S3Repository/S3Repository.spec.ts +50 -0
  66. package/src/domains/job/S3Repository/S3Repository.ts +27 -0
  67. package/src/domains/job/S3Repository/S3RepositoryBase.spec.ts +97 -0
  68. package/src/domains/job/S3Repository/S3RepositoryBase.ts +93 -0
  69. package/src/domains/job/S3Repository/index.ts +2 -0
  70. package/src/domains/job/core/pagination/services/PaginationService.spec.ts +17 -92
  71. package/src/domains/job/core/pagination/services/PaginationService.ts +8 -57
  72. package/src/domains/job/index.ts +2 -0
  73. package/src/domains/job/manifest/JobManifestV1.ts +1 -2
  74. package/src/domains/job/model/LogPayload/LogPayload.ts +12 -0
  75. package/src/domains/job/model/LogPayload/index.ts +1 -0
  76. package/src/domains/job/repository/JobContextRepository/JobContextRepository.spec.ts +1 -1
  77. package/src/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.ts +2 -5
  78. package/src/domains/job/repository/JobExecutionRepository/JobExecutionRepository.ts +45 -13
  79. package/src/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.ts +1 -1
  80. package/src/domains/job/repository/JobRepository/JobRepository.spec.ts +1 -1
  81. package/src/domains/job/services/JobContextService/JobContextService.spec.ts +272 -0
  82. package/src/domains/job/services/JobContextService/JobContextService.ts +77 -0
  83. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.ts +3 -19
  84. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.ts +153 -37
  85. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.ts +76 -82
  86. package/src/domains/job/services/JobManifestService/JobManifestService.spec.ts +234 -0
  87. package/src/domains/job/services/JobManifestService/JobManifestService.ts +40 -0
  88. package/src/domains/job/services/JobQueueService/JobQueueService.defs.ts +10 -0
  89. package/src/domains/job/services/JobQueueService/JobQueueService.spec.ts +190 -0
  90. package/src/domains/job/services/JobQueueService/JobQueueService.ts +60 -0
  91. package/src/domains/job/services/JobUploadService/JobUploadService.mock.ts +45 -0
  92. package/src/domains/job/services/JobUploadService/JobUploadService.spec.ts +176 -0
  93. package/src/domains/job/services/JobUploadService/JobUploadService.ts +66 -0
  94. package/src/domains/job/services/JobUploadService/utils/cleanup.spec.ts +109 -0
  95. package/src/domains/job/services/JobUploadService/utils/cleanup.ts +18 -0
  96. package/src/domains/job/services/JobUploadService/utils/errorUtils.spec.ts +76 -0
  97. package/src/domains/job/services/JobUploadService/utils/errorUtils.ts +35 -0
  98. package/src/domains/job/services/JobUploadService/utils/index.ts +15 -0
  99. package/src/domains/job/services/JobUploadService/utils/manifestValidator.spec.ts +213 -0
  100. package/src/domains/job/services/JobUploadService/utils/manifestValidator.ts +34 -0
  101. package/src/domains/job/services/JobUploadService/utils/responseHandler.spec.ts +69 -0
  102. package/src/domains/job/services/JobUploadService/utils/responseHandler.ts +33 -0
  103. package/src/domains/job/services/JobUploadService/utils/resultPoller.spec.ts +81 -0
  104. package/src/domains/job/services/JobUploadService/utils/resultPoller.ts +52 -0
  105. package/src/domains/job/services/JobUploadService/utils/scanWatcher.spec.ts +61 -0
  106. package/src/domains/job/services/JobUploadService/utils/scanWatcher.ts +41 -0
  107. package/src/domains/job/services/JobUploadService/utils/uploadInitializer.spec.ts +106 -0
  108. package/src/domains/job/services/JobUploadService/utils/uploadInitializer.ts +36 -0
  109. package/src/domains/job/services/JobUploadService/utils/versionChecker.spec.ts +70 -0
  110. package/src/domains/job/services/JobUploadService/utils/versionChecker.ts +39 -0
  111. package/src/domains/job/services/index.ts +4 -0
  112. package/src/domains/job/utils/GetAwsTags/GetAwsTags.spec.ts +45 -0
  113. package/src/domains/job/utils/GetAwsTags/GetAwsTags.ts +18 -0
  114. package/src/domains/job/utils/GetAwsTags/GetAwsTags.types.ts +18 -0
  115. package/src/domains/job/utils/index.ts +2 -0
  116. package/src/domains/manifest/ManifestModel.ts +2 -5
  117. package/src/domains/manifest/index.ts +0 -9
  118. package/src/domains/manifest/services/ComponentSchemaValidationService.ts +6 -18
  119. package/src/domains/manifest/services/JobFunctionService.spec.ts +9 -83
  120. package/src/domains/manifest/services/JobFunctionService.ts +2 -5
  121. package/src/domains/manifest/services/ManifestServiceForDev.spec.ts +66 -170
  122. package/src/domains/manifest/services/ManifestServiceForDev.ts +24 -83
  123. package/src/domains/manifest/utils/getAndAssertJobManifestVersion.ts +2 -6
  124. package/src/domains/manifest/utils/isValidManifestVersion.spec.ts +6 -2
  125. package/src/domains/manifest/utils/isValidManifestVersion.ts +2 -2
  126. package/src/index.ts +0 -6
  127. package/src/jest-global-setup.ts +0 -11
  128. package/src/{domains/job/repository/mocks → mocks}/mockIoc.ts +12 -2
  129. package/tsconfig.json +4 -2
  130. package/.env.example +0 -1
  131. package/jest.integration.config.ts +0 -27
  132. package/lib/TestHelpers.d.ts +0 -18
  133. package/lib/TestHelpers.js +0 -97
  134. package/lib/TestHelpers.js.map +0 -1
  135. package/lib/domains/__test__/createPackage.d.ts +0 -3
  136. package/lib/domains/__test__/createPackage.js +0 -45
  137. package/lib/domains/__test__/createPackage.js.map +0 -1
  138. package/lib/domains/__test__/loadAllUnitTestComponents.d.ts +0 -3
  139. package/lib/domains/__test__/loadAllUnitTestComponents.js +0 -63
  140. package/lib/domains/__test__/loadAllUnitTestComponents.js.map +0 -1
  141. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.d.ts +0 -3
  142. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.js +0 -33
  143. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.js.map +0 -1
  144. package/lib/domains/component/component-context/__mocks__/mockedUriObj.d.ts +0 -3
  145. package/lib/domains/component/component-context/__mocks__/mockedUriObj.js +0 -38
  146. package/lib/domains/component/component-context/__mocks__/mockedUriObj.js.map +0 -1
  147. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.d.ts +0 -3
  148. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.js +0 -38
  149. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.js.map +0 -1
  150. package/lib/domains/component/component-context/createComponentContextualFunctions.d.ts +0 -23
  151. package/lib/domains/component/component-context/createComponentContextualFunctions.js +0 -75
  152. package/lib/domains/component/component-context/createComponentContextualFunctions.js.map +0 -1
  153. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.d.ts +0 -1
  154. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.js +0 -248
  155. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.js.map +0 -1
  156. package/lib/domains/component/errors/ComponentError.d.ts +0 -12
  157. package/lib/domains/component/errors/ComponentError.js +0 -20
  158. package/lib/domains/component/errors/ComponentError.js.map +0 -1
  159. package/lib/domains/component/errors/JobError.js +0 -18
  160. package/lib/domains/component/errors/JobError.js.map +0 -1
  161. package/lib/domains/component/index.js +0 -30
  162. package/lib/domains/component/index.js.map +0 -1
  163. package/lib/domains/component/models/Component.d.ts +0 -7
  164. package/lib/domains/component/models/Component.js +0 -13
  165. package/lib/domains/component/models/Component.js.map +0 -1
  166. package/lib/domains/component/models/Component.spec.d.ts +0 -1
  167. package/lib/domains/component/models/Component.spec.js +0 -18
  168. package/lib/domains/component/models/Component.spec.js.map +0 -1
  169. package/lib/domains/component/models/ComponentVersion.d.ts +0 -18
  170. package/lib/domains/component/models/ComponentVersion.js +0 -35
  171. package/lib/domains/component/models/ComponentVersion.js.map +0 -1
  172. package/lib/domains/component/models/ComponentVersion.spec.d.ts +0 -1
  173. package/lib/domains/component/models/ComponentVersion.spec.js +0 -55
  174. package/lib/domains/component/models/ComponentVersion.spec.js.map +0 -1
  175. package/lib/domains/component/repositories/ComponentRepository.d.ts +0 -12
  176. package/lib/domains/component/repositories/ComponentRepository.integration.spec.d.ts +0 -1
  177. package/lib/domains/component/repositories/ComponentRepository.integration.spec.js +0 -111
  178. package/lib/domains/component/repositories/ComponentRepository.integration.spec.js.map +0 -1
  179. package/lib/domains/component/repositories/ComponentRepository.js +0 -28
  180. package/lib/domains/component/repositories/ComponentRepository.js.map +0 -1
  181. package/lib/domains/component/repositories/ComponentVersionRepository.d.ts +0 -21
  182. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.d.ts +0 -1
  183. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.js +0 -378
  184. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.js.map +0 -1
  185. package/lib/domains/component/repositories/ComponentVersionRepository.js +0 -83
  186. package/lib/domains/component/repositories/ComponentVersionRepository.js.map +0 -1
  187. package/lib/domains/component/services/ComponentService.d.ts +0 -40
  188. package/lib/domains/component/services/ComponentService.integration.spec.d.ts +0 -1
  189. package/lib/domains/component/services/ComponentService.integration.spec.js +0 -614
  190. package/lib/domains/component/services/ComponentService.integration.spec.js.map +0 -1
  191. package/lib/domains/component/services/ComponentService.js +0 -254
  192. package/lib/domains/component/services/ComponentService.js.map +0 -1
  193. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.d.ts +0 -12
  194. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.js +0 -15
  195. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.js.map +0 -1
  196. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.d.ts +0 -1
  197. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.js +0 -75
  198. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.js.map +0 -1
  199. package/lib/domains/component/utils/getComponentFileSystemFolder.d.ts +0 -1
  200. package/lib/domains/component/utils/getComponentFileSystemFolder.js +0 -12
  201. package/lib/domains/component/utils/getComponentFileSystemFolder.js.map +0 -1
  202. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.d.ts +0 -1
  203. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.js +0 -13
  204. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.js.map +0 -1
  205. package/lib/domains/component/utils/getComponentName.d.ts +0 -1
  206. package/lib/domains/component/utils/getComponentName.js +0 -8
  207. package/lib/domains/component/utils/getComponentName.js.map +0 -1
  208. package/lib/domains/component/utils/getComponentName.spec.d.ts +0 -1
  209. package/lib/domains/component/utils/getComponentName.spec.js +0 -9
  210. package/lib/domains/component/utils/getComponentName.spec.js.map +0 -1
  211. package/lib/domains/component/utils/moveFilesAndDirectories.d.ts +0 -1
  212. package/lib/domains/component/utils/moveFilesAndDirectories.js +0 -33
  213. package/lib/domains/component/utils/moveFilesAndDirectories.js.map +0 -1
  214. package/lib/domains/component/utils/moveFilesAndDirectories.spec.d.ts +0 -1
  215. package/lib/domains/component/utils/moveFilesAndDirectories.spec.js +0 -52
  216. package/lib/domains/component/utils/moveFilesAndDirectories.spec.js.map +0 -1
  217. package/lib/domains/component/web-models/ComponentForWeb.d.ts +0 -11
  218. package/lib/domains/component/web-models/ComponentForWeb.js +0 -3
  219. package/lib/domains/component/web-models/ComponentForWeb.js.map +0 -1
  220. package/lib/domains/component/web-models/ComponentVersionWebModel.d.ts +0 -15
  221. package/lib/domains/component/web-models/ComponentVersionWebModel.js +0 -3
  222. package/lib/domains/component/web-models/ComponentVersionWebModel.js.map +0 -1
  223. package/lib/domains/component/web-models/ComponentsForWeb.d.ts +0 -17
  224. package/lib/domains/component/web-models/ComponentsForWeb.js +0 -3
  225. package/lib/domains/component/web-models/ComponentsForWeb.js.map +0 -1
  226. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.d.ts +0 -5
  227. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.js +0 -14
  228. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.js.map +0 -1
  229. package/lib/domains/component-set/index.d.ts +0 -13
  230. package/lib/domains/component-set/index.js +0 -30
  231. package/lib/domains/component-set/index.js.map +0 -1
  232. package/lib/domains/component-set/models/ComponentSet.d.ts +0 -20
  233. package/lib/domains/component-set/models/ComponentSet.js +0 -28
  234. package/lib/domains/component-set/models/ComponentSet.js.map +0 -1
  235. package/lib/domains/component-set/models/ComponentSet.spec.js +0 -45
  236. package/lib/domains/component-set/models/ComponentSet.spec.js.map +0 -1
  237. package/lib/domains/component-set/models/ComponentSetComponentVersion.d.ts +0 -23
  238. package/lib/domains/component-set/models/ComponentSetComponentVersion.js +0 -29
  239. package/lib/domains/component-set/models/ComponentSetComponentVersion.js.map +0 -1
  240. package/lib/domains/component-set/models/ComponentSetComponentVersion.spec.js +0 -83
  241. package/lib/domains/component-set/models/ComponentSetComponentVersion.spec.js.map +0 -1
  242. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.d.ts +0 -12
  243. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.js +0 -57
  244. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.js.map +0 -1
  245. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.spec.js +0 -60
  246. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.spec.js.map +0 -1
  247. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.d.ts +0 -11
  248. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.js +0 -17
  249. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.js.map +0 -1
  250. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.d.ts +0 -1
  251. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.js +0 -34
  252. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.js.map +0 -1
  253. package/lib/domains/component-set/models/ComponentSetRule.d.ts +0 -12
  254. package/lib/domains/component-set/models/ComponentSetRule.js +0 -50
  255. package/lib/domains/component-set/models/ComponentSetRule.js.map +0 -1
  256. package/lib/domains/component-set/models/ComponentSetRule.spec.d.ts +0 -1
  257. package/lib/domains/component-set/models/ComponentSetRule.spec.js +0 -29
  258. package/lib/domains/component-set/models/ComponentSetRule.spec.js.map +0 -1
  259. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.d.ts +0 -10
  260. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.d.ts +0 -1
  261. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.js +0 -127
  262. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.js.map +0 -1
  263. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.js +0 -37
  264. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.js.map +0 -1
  265. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.d.ts +0 -10
  266. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.d.ts +0 -1
  267. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.js +0 -127
  268. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.js.map +0 -1
  269. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.js +0 -37
  270. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.js.map +0 -1
  271. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.d.ts +0 -10
  272. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.d.ts +0 -1
  273. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.js +0 -163
  274. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.js.map +0 -1
  275. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.js +0 -22
  276. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.js.map +0 -1
  277. package/lib/domains/component-set/repositories/ComponentSetRepository.d.ts +0 -13
  278. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.d.ts +0 -1
  279. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.js +0 -161
  280. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.js.map +0 -1
  281. package/lib/domains/component-set/repositories/ComponentSetRepository.js +0 -48
  282. package/lib/domains/component-set/repositories/ComponentSetRepository.js.map +0 -1
  283. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.d.ts +0 -13
  284. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.d.ts +0 -1
  285. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.js +0 -88
  286. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.js.map +0 -1
  287. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.js +0 -55
  288. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.js.map +0 -1
  289. package/lib/domains/component-set/services/ComponentSetRuleService.d.ts +0 -10
  290. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.d.ts +0 -1
  291. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.js +0 -107
  292. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.js.map +0 -1
  293. package/lib/domains/component-set/services/ComponentSetRuleService.js +0 -23
  294. package/lib/domains/component-set/services/ComponentSetRuleService.js.map +0 -1
  295. package/lib/domains/component-set/services/ComponentSetService.d.ts +0 -37
  296. package/lib/domains/component-set/services/ComponentSetService.js +0 -13
  297. package/lib/domains/component-set/services/ComponentSetService.js.map +0 -1
  298. package/lib/domains/component-set/services/ComponentSetService.spec.d.ts +0 -1
  299. package/lib/domains/component-set/services/ComponentSetService.spec.js +0 -120
  300. package/lib/domains/component-set/services/ComponentSetService.spec.js.map +0 -1
  301. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.d.ts +0 -24
  302. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.js +0 -85
  303. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.js.map +0 -1
  304. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.d.ts +0 -1
  305. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.js +0 -141
  306. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.js.map +0 -1
  307. package/lib/domains/component-set/services/ComponentSetServiceForProduction.d.ts +0 -53
  308. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.d.ts +0 -1
  309. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.js +0 -2565
  310. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.js.map +0 -1
  311. package/lib/domains/component-set/services/ComponentSetServiceForProduction.js +0 -601
  312. package/lib/domains/component-set/services/ComponentSetServiceForProduction.js.map +0 -1
  313. package/lib/domains/component-set/services/EnvironmentVariables.d.ts +0 -1
  314. package/lib/domains/component-set/services/EnvironmentVariables.js +0 -3
  315. package/lib/domains/component-set/services/EnvironmentVariables.js.map +0 -1
  316. package/lib/domains/component-set/services/Headers.d.ts +0 -1
  317. package/lib/domains/component-set/services/Headers.js +0 -3
  318. package/lib/domains/component-set/services/Headers.js.map +0 -1
  319. package/lib/domains/component-set/services/RuntimeComponentSet.d.ts +0 -6
  320. package/lib/domains/component-set/services/RuntimeComponentSet.js +0 -3
  321. package/lib/domains/component-set/services/RuntimeComponentSet.js.map +0 -1
  322. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.d.ts +0 -5
  323. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.js +0 -3
  324. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.js.map +0 -1
  325. package/lib/domains/component-set/web-models/ComponentSetForWeb.d.ts +0 -64
  326. package/lib/domains/component-set/web-models/ComponentSetForWeb.js +0 -22
  327. package/lib/domains/component-set/web-models/ComponentSetForWeb.js.map +0 -1
  328. package/lib/domains/content/index.d.ts +0 -4
  329. package/lib/domains/content/index.js +0 -21
  330. package/lib/domains/content/index.js.map +0 -1
  331. package/lib/domains/content/services/ComponentContentSchemaService.d.ts +0 -9
  332. package/lib/domains/content/services/ComponentContentSchemaService.js +0 -45
  333. package/lib/domains/content/services/ComponentContentSchemaService.js.map +0 -1
  334. package/lib/domains/content/services/ComponentContentSchemaService.spec.d.ts +0 -1
  335. package/lib/domains/content/services/ComponentContentSchemaService.spec.js +0 -240
  336. package/lib/domains/content/services/ComponentContentSchemaService.spec.js.map +0 -1
  337. package/lib/domains/content/services/ContentItemService.d.ts +0 -7
  338. package/lib/domains/content/services/ContentItemService.js +0 -36
  339. package/lib/domains/content/services/ContentItemService.js.map +0 -1
  340. package/lib/domains/content/services/ContentItemService.spec.d.ts +0 -1
  341. package/lib/domains/content/services/ContentItemService.spec.js +0 -95
  342. package/lib/domains/content/services/ContentItemService.spec.js.map +0 -1
  343. package/lib/domains/content/services/DynamicContentItemService.d.ts +0 -8
  344. package/lib/domains/content/services/DynamicContentItemService.js +0 -31
  345. package/lib/domains/content/services/DynamicContentItemService.js.map +0 -1
  346. package/lib/domains/content/services/DynamicContentItemService.spec.d.ts +0 -1
  347. package/lib/domains/content/services/DynamicContentItemService.spec.js +0 -81
  348. package/lib/domains/content/services/DynamicContentItemService.spec.js.map +0 -1
  349. package/lib/domains/content/utils/getContentSchemaName.d.ts +0 -1
  350. package/lib/domains/content/utils/getContentSchemaName.js +0 -8
  351. package/lib/domains/content/utils/getContentSchemaName.js.map +0 -1
  352. package/lib/domains/content/utils/getContentSchemaName.spec.d.ts +0 -1
  353. package/lib/domains/content/utils/getContentSchemaName.spec.js +0 -9
  354. package/lib/domains/content/utils/getContentSchemaName.spec.js.map +0 -1
  355. package/lib/domains/db/ComponentConnectionManager.d.ts +0 -3
  356. package/lib/domains/db/ComponentConnectionManager.js +0 -3
  357. package/lib/domains/db/ComponentConnectionManager.js.map +0 -1
  358. package/lib/domains/db/ComponentRepositories.d.ts +0 -19
  359. package/lib/domains/db/ComponentRepositories.js +0 -23
  360. package/lib/domains/db/ComponentRepositories.js.map +0 -1
  361. package/lib/domains/db/createConnectionManager.d.ts +0 -5
  362. package/lib/domains/db/createConnectionManager.js +0 -16
  363. package/lib/domains/db/createConnectionManager.js.map +0 -1
  364. package/lib/domains/db/index.d.ts +0 -3
  365. package/lib/domains/db/index.js +0 -20
  366. package/lib/domains/db/index.js.map +0 -1
  367. package/lib/domains/db/migration-list.d.ts +0 -2
  368. package/lib/domains/db/migration-list.js +0 -19
  369. package/lib/domains/db/migration-list.js.map +0 -1
  370. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.js +0 -24
  371. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.js.map +0 -1
  372. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.spec.js +0 -24
  373. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.spec.js.map +0 -1
  374. package/lib/domains/job/ParsePartitionKey/index.js +0 -18
  375. package/lib/domains/job/ParsePartitionKey/index.js.map +0 -1
  376. package/lib/domains/job/constants/JobExecutionStatus.constants.js +0 -12
  377. package/lib/domains/job/constants/JobExecutionStatus.constants.js.map +0 -1
  378. package/lib/domains/job/constants/QueryParams.js +0 -19
  379. package/lib/domains/job/constants/QueryParams.js.map +0 -1
  380. package/lib/domains/job/constants/Repository.constants.js +0 -15
  381. package/lib/domains/job/constants/Repository.constants.js.map +0 -1
  382. package/lib/domains/job/core/dynamoClient.mock.js +0 -32
  383. package/lib/domains/job/core/dynamoClient.mock.js.map +0 -1
  384. package/lib/domains/job/core/pagination/index.js +0 -20
  385. package/lib/domains/job/core/pagination/index.js.map +0 -1
  386. package/lib/domains/job/core/pagination/model/PageQuery.js +0 -7
  387. package/lib/domains/job/core/pagination/model/PageQuery.js.map +0 -1
  388. package/lib/domains/job/core/pagination/model/PaginationInfo.js +0 -7
  389. package/lib/domains/job/core/pagination/model/PaginationInfo.js.map +0 -1
  390. package/lib/domains/job/core/pagination/model/PaginationKey.js +0 -3
  391. package/lib/domains/job/core/pagination/model/PaginationKey.js.map +0 -1
  392. package/lib/domains/job/core/pagination/model/PaginationLinks.js +0 -7
  393. package/lib/domains/job/core/pagination/model/PaginationLinks.js.map +0 -1
  394. package/lib/domains/job/core/pagination/model/PaginationQueryParams.js +0 -3
  395. package/lib/domains/job/core/pagination/model/PaginationQueryParams.js.map +0 -1
  396. package/lib/domains/job/core/pagination/model/PaginationQueryResponse.js +0 -7
  397. package/lib/domains/job/core/pagination/model/PaginationQueryResponse.js.map +0 -1
  398. package/lib/domains/job/core/pagination/model/PaginationResponse.js +0 -7
  399. package/lib/domains/job/core/pagination/model/PaginationResponse.js.map +0 -1
  400. package/lib/domains/job/core/pagination/model/PaginationTypes.js +0 -29
  401. package/lib/domains/job/core/pagination/model/PaginationTypes.js.map +0 -1
  402. package/lib/domains/job/core/pagination/model/index.js +0 -25
  403. package/lib/domains/job/core/pagination/model/index.js.map +0 -1
  404. package/lib/domains/job/core/pagination/services/PaginationService.js +0 -129
  405. package/lib/domains/job/core/pagination/services/PaginationService.js.map +0 -1
  406. package/lib/domains/job/core/pagination/services/PaginationService.spec.js +0 -179
  407. package/lib/domains/job/core/pagination/services/PaginationService.spec.js.map +0 -1
  408. package/lib/domains/job/core/pagination/services/index.js +0 -18
  409. package/lib/domains/job/core/pagination/services/index.js.map +0 -1
  410. package/lib/domains/job/core/pagination/utils/PaginationUtils.js +0 -139
  411. package/lib/domains/job/core/pagination/utils/PaginationUtils.js.map +0 -1
  412. package/lib/domains/job/core/pagination/utils/PaginationUtils.spec.js +0 -212
  413. package/lib/domains/job/core/pagination/utils/PaginationUtils.spec.js.map +0 -1
  414. package/lib/domains/job/core/pagination/utils/index.js +0 -18
  415. package/lib/domains/job/core/pagination/utils/index.js.map +0 -1
  416. package/lib/domains/job/errors/BadRequestError.js +0 -23
  417. package/lib/domains/job/errors/BadRequestError.js.map +0 -1
  418. package/lib/domains/job/errors/Error.constants.js +0 -36
  419. package/lib/domains/job/errors/Error.constants.js.map +0 -1
  420. package/lib/domains/job/errors/ErrorWithHttpStatusCode.js +0 -23
  421. package/lib/domains/job/errors/ErrorWithHttpStatusCode.js.map +0 -1
  422. package/lib/domains/job/errors/ExecutionStatusError.js +0 -11
  423. package/lib/domains/job/errors/ExecutionStatusError.js.map +0 -1
  424. package/lib/domains/job/errors/InternalServerError.js +0 -23
  425. package/lib/domains/job/errors/InternalServerError.js.map +0 -1
  426. package/lib/domains/job/errors/NotFoundError.js +0 -22
  427. package/lib/domains/job/errors/NotFoundError.js.map +0 -1
  428. package/lib/domains/job/errors/NotImplementedError.js +0 -23
  429. package/lib/domains/job/errors/NotImplementedError.js.map +0 -1
  430. package/lib/domains/job/errors/UnprocessableContent.js +0 -23
  431. package/lib/domains/job/errors/UnprocessableContent.js.map +0 -1
  432. package/lib/domains/job/errors/index.js +0 -25
  433. package/lib/domains/job/errors/index.js.map +0 -1
  434. package/lib/domains/job/index.js +0 -33
  435. package/lib/domains/job/index.js.map +0 -1
  436. package/lib/domains/job/manifest/JobManifestTypes.js +0 -7
  437. package/lib/domains/job/manifest/JobManifestTypes.js.map +0 -1
  438. package/lib/domains/job/manifest/JobManifestV1.js +0 -58
  439. package/lib/domains/job/manifest/JobManifestV1.js.map +0 -1
  440. package/lib/domains/job/manifest/JobManifestV1.spec.js +0 -136
  441. package/lib/domains/job/manifest/JobManifestV1.spec.js.map +0 -1
  442. package/lib/domains/job/manifest/index.js +0 -22
  443. package/lib/domains/job/manifest/index.js.map +0 -1
  444. package/lib/domains/job/manifest/mocks/JobManifest.mock.js +0 -36
  445. package/lib/domains/job/manifest/mocks/JobManifest.mock.js.map +0 -1
  446. package/lib/domains/job/manifest/mocks/JobManifestDto.mock.js +0 -48
  447. package/lib/domains/job/manifest/mocks/JobManifestDto.mock.js.map +0 -1
  448. package/lib/domains/job/manifest/mocks/JobManifestRecord.mock.js +0 -38
  449. package/lib/domains/job/manifest/mocks/JobManifestRecord.mock.js.map +0 -1
  450. package/lib/domains/job/manifest/mocks/JobManifestRequest.mock.js +0 -29
  451. package/lib/domains/job/manifest/mocks/JobManifestRequest.mock.js.map +0 -1
  452. package/lib/domains/job/model/Base/Base.js +0 -3
  453. package/lib/domains/job/model/Base/Base.js.map +0 -1
  454. package/lib/domains/job/model/Base/index.js +0 -18
  455. package/lib/domains/job/model/Base/index.js.map +0 -1
  456. package/lib/domains/job/model/Job/Job.js +0 -7
  457. package/lib/domains/job/model/Job/Job.js.map +0 -1
  458. package/lib/domains/job/model/Job/index.js +0 -22
  459. package/lib/domains/job/model/Job/index.js.map +0 -1
  460. package/lib/domains/job/model/Job/mocks/Job.mock.js +0 -28
  461. package/lib/domains/job/model/Job/mocks/Job.mock.js.map +0 -1
  462. package/lib/domains/job/model/Job/mocks/JobDto.mock.js +0 -39
  463. package/lib/domains/job/model/Job/mocks/JobDto.mock.js.map +0 -1
  464. package/lib/domains/job/model/Job/mocks/JobRecord.mock.js +0 -29
  465. package/lib/domains/job/model/Job/mocks/JobRecord.mock.js.map +0 -1
  466. package/lib/domains/job/model/Job/mocks/JobRequest.mock.js +0 -21
  467. package/lib/domains/job/model/Job/mocks/JobRequest.mock.js.map +0 -1
  468. package/lib/domains/job/model/JobContext/JobContext.js +0 -7
  469. package/lib/domains/job/model/JobContext/JobContext.js.map +0 -1
  470. package/lib/domains/job/model/JobContext/index.js +0 -22
  471. package/lib/domains/job/model/JobContext/index.js.map +0 -1
  472. package/lib/domains/job/model/JobContext/mocks/JobContext.mock.js +0 -35
  473. package/lib/domains/job/model/JobContext/mocks/JobContext.mock.js.map +0 -1
  474. package/lib/domains/job/model/JobContext/mocks/JobContextDto.mock.js +0 -46
  475. package/lib/domains/job/model/JobContext/mocks/JobContextDto.mock.js.map +0 -1
  476. package/lib/domains/job/model/JobContext/mocks/JobContextRecord.mock.js +0 -34
  477. package/lib/domains/job/model/JobContext/mocks/JobContextRecord.mock.js.map +0 -1
  478. package/lib/domains/job/model/JobContext/mocks/JobContextRequest.mock.js +0 -25
  479. package/lib/domains/job/model/JobContext/mocks/JobContextRequest.mock.js.map +0 -1
  480. package/lib/domains/job/model/JobExecution/JobExecution.js +0 -7
  481. package/lib/domains/job/model/JobExecution/JobExecution.js.map +0 -1
  482. package/lib/domains/job/model/JobExecution/index.js +0 -22
  483. package/lib/domains/job/model/JobExecution/index.js.map +0 -1
  484. package/lib/domains/job/model/JobExecution/mocks/JobExecution.mock.js +0 -45
  485. package/lib/domains/job/model/JobExecution/mocks/JobExecution.mock.js.map +0 -1
  486. package/lib/domains/job/model/JobExecution/mocks/JobExecutionDto.mock.js +0 -64
  487. package/lib/domains/job/model/JobExecution/mocks/JobExecutionDto.mock.js.map +0 -1
  488. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRecord.mock.js +0 -48
  489. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRecord.mock.js.map +0 -1
  490. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRequest.mock.js +0 -25
  491. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRequest.mock.js.map +0 -1
  492. package/lib/domains/job/repository/AbstractRepository.js +0 -174
  493. package/lib/domains/job/repository/AbstractRepository.js.map +0 -1
  494. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.js +0 -169
  495. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.js.map +0 -1
  496. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.spec.js +0 -246
  497. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.spec.js.map +0 -1
  498. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.js +0 -276
  499. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.js.map +0 -1
  500. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.js +0 -296
  501. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.js.map +0 -1
  502. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.js +0 -133
  503. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.js.map +0 -1
  504. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.js +0 -162
  505. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.js.map +0 -1
  506. package/lib/domains/job/repository/JobRepository/JobRepository.js +0 -189
  507. package/lib/domains/job/repository/JobRepository/JobRepository.js.map +0 -1
  508. package/lib/domains/job/repository/JobRepository/JobRepository.spec.js +0 -270
  509. package/lib/domains/job/repository/JobRepository/JobRepository.spec.js.map +0 -1
  510. package/lib/domains/job/repository/index.js +0 -22
  511. package/lib/domains/job/repository/index.js.map +0 -1
  512. package/lib/domains/job/repository/mocks/mockIoc.js +0 -40
  513. package/lib/domains/job/repository/mocks/mockIoc.js.map +0 -1
  514. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.js +0 -3
  515. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.js.map +0 -1
  516. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.js +0 -139
  517. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.js.map +0 -1
  518. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.js +0 -78
  519. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.js.map +0 -1
  520. package/lib/domains/job/services/index.js +0 -18
  521. package/lib/domains/job/services/index.js.map +0 -1
  522. package/lib/domains/job/singletonProvider.js +0 -14
  523. package/lib/domains/job/singletonProvider.js.map +0 -1
  524. package/lib/domains/job/transientProvider.js +0 -14
  525. package/lib/domains/job/transientProvider.js.map +0 -1
  526. package/lib/domains/job/utils/SlackClient/SlackClient.js +0 -113
  527. package/lib/domains/job/utils/SlackClient/SlackClient.js.map +0 -1
  528. package/lib/domains/job/utils/SlackClient/SlackClient.spec.js +0 -116
  529. package/lib/domains/job/utils/SlackClient/SlackClient.spec.js.map +0 -1
  530. package/lib/domains/job/utils/SlackClient/types/SlackClient.types.js +0 -28
  531. package/lib/domains/job/utils/SlackClient/types/SlackClient.types.js.map +0 -1
  532. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.js +0 -21
  533. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.js.map +0 -1
  534. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.spec.js +0 -26
  535. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.spec.js.map +0 -1
  536. package/lib/domains/job/utils/index.js +0 -20
  537. package/lib/domains/job/utils/index.js.map +0 -1
  538. package/lib/domains/manifest/AbstractManifest.d.ts +0 -38
  539. package/lib/domains/manifest/AbstractManifest.js +0 -45
  540. package/lib/domains/manifest/AbstractManifest.js.map +0 -1
  541. package/lib/domains/manifest/ManifestModel.js +0 -3
  542. package/lib/domains/manifest/ManifestModel.js.map +0 -1
  543. package/lib/domains/manifest/ManifestV1.d.ts +0 -18
  544. package/lib/domains/manifest/ManifestV1.js +0 -124
  545. package/lib/domains/manifest/ManifestV1.js.map +0 -1
  546. package/lib/domains/manifest/ManifestV1.spec.d.ts +0 -1
  547. package/lib/domains/manifest/ManifestV1.spec.js +0 -347
  548. package/lib/domains/manifest/ManifestV1.spec.js.map +0 -1
  549. package/lib/domains/manifest/errors/ManifestLocationError.d.ts +0 -5
  550. package/lib/domains/manifest/errors/ManifestLocationError.js +0 -13
  551. package/lib/domains/manifest/errors/ManifestLocationError.js.map +0 -1
  552. package/lib/domains/manifest/errors/ManifestValidationError.js +0 -12
  553. package/lib/domains/manifest/errors/ManifestValidationError.js.map +0 -1
  554. package/lib/domains/manifest/index.js +0 -33
  555. package/lib/domains/manifest/index.js.map +0 -1
  556. package/lib/domains/manifest/services/AbstractManifestService.d.ts +0 -49
  557. package/lib/domains/manifest/services/AbstractManifestService.js +0 -235
  558. package/lib/domains/manifest/services/AbstractManifestService.js.map +0 -1
  559. package/lib/domains/manifest/services/AbstractManifestService.spec.d.ts +0 -1
  560. package/lib/domains/manifest/services/AbstractManifestService.spec.js +0 -301
  561. package/lib/domains/manifest/services/AbstractManifestService.spec.js.map +0 -1
  562. package/lib/domains/manifest/services/ComponentFunctionService.d.ts +0 -35
  563. package/lib/domains/manifest/services/ComponentFunctionService.js +0 -129
  564. package/lib/domains/manifest/services/ComponentFunctionService.js.map +0 -1
  565. package/lib/domains/manifest/services/ComponentFunctionService.spec.d.ts +0 -1
  566. package/lib/domains/manifest/services/ComponentFunctionService.spec.js +0 -567
  567. package/lib/domains/manifest/services/ComponentFunctionService.spec.js.map +0 -1
  568. package/lib/domains/manifest/services/ComponentInputValidationService.d.ts +0 -5
  569. package/lib/domains/manifest/services/ComponentInputValidationService.js +0 -11
  570. package/lib/domains/manifest/services/ComponentInputValidationService.js.map +0 -1
  571. package/lib/domains/manifest/services/ComponentSchemaValidationService.js +0 -11
  572. package/lib/domains/manifest/services/ComponentSchemaValidationService.js.map +0 -1
  573. package/lib/domains/manifest/services/JobFunctionService.js +0 -23
  574. package/lib/domains/manifest/services/JobFunctionService.js.map +0 -1
  575. package/lib/domains/manifest/services/JobFunctionService.spec.js +0 -132
  576. package/lib/domains/manifest/services/JobFunctionService.spec.js.map +0 -1
  577. package/lib/domains/manifest/services/ManifestServiceForDev.js +0 -83
  578. package/lib/domains/manifest/services/ManifestServiceForDev.js.map +0 -1
  579. package/lib/domains/manifest/services/ManifestServiceForDev.spec.js +0 -184
  580. package/lib/domains/manifest/services/ManifestServiceForDev.spec.js.map +0 -1
  581. package/lib/domains/manifest/services/ManifestServiceForProduction.d.ts +0 -12
  582. package/lib/domains/manifest/services/ManifestServiceForProduction.js +0 -81
  583. package/lib/domains/manifest/services/ManifestServiceForProduction.js.map +0 -1
  584. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.d.ts +0 -1
  585. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.js +0 -81
  586. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.js.map +0 -1
  587. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.d.ts +0 -3
  588. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.js +0 -14
  589. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.js.map +0 -1
  590. package/lib/domains/manifest/utils/assertStaticFilesAreValid.d.ts +0 -3
  591. package/lib/domains/manifest/utils/assertStaticFilesAreValid.js +0 -27
  592. package/lib/domains/manifest/utils/assertStaticFilesAreValid.js.map +0 -1
  593. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.d.ts +0 -2
  594. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.js +0 -16
  595. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.js.map +0 -1
  596. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.d.ts +0 -1
  597. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.js +0 -111
  598. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.js.map +0 -1
  599. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.js +0 -28
  600. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.js.map +0 -1
  601. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.spec.js +0 -115
  602. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.spec.js.map +0 -1
  603. package/lib/domains/manifest/utils/getAndAssertManifestVersion.d.ts +0 -3
  604. package/lib/domains/manifest/utils/getAndAssertManifestVersion.js +0 -23
  605. package/lib/domains/manifest/utils/getAndAssertManifestVersion.js.map +0 -1
  606. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.d.ts +0 -1
  607. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.js +0 -109
  608. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.js.map +0 -1
  609. package/lib/domains/manifest/utils/isValidManifestVersion.js +0 -12
  610. package/lib/domains/manifest/utils/isValidManifestVersion.js.map +0 -1
  611. package/lib/domains/manifest/utils/isValidManifestVersion.spec.js +0 -19
  612. package/lib/domains/manifest/utils/isValidManifestVersion.spec.js.map +0 -1
  613. package/lib/domains/url/convertFunctionStaticFilesToFqdn.d.ts +0 -1
  614. package/lib/domains/url/convertFunctionStaticFilesToFqdn.js +0 -22
  615. package/lib/domains/url/convertFunctionStaticFilesToFqdn.js.map +0 -1
  616. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.d.ts +0 -1
  617. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.js +0 -16
  618. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.js.map +0 -1
  619. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.d.ts +0 -1
  620. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.js +0 -22
  621. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.js.map +0 -1
  622. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.d.ts +0 -1
  623. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.js +0 -16
  624. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.js.map +0 -1
  625. package/lib/domains/url/index.d.ts +0 -1
  626. package/lib/domains/url/index.js +0 -18
  627. package/lib/domains/url/index.js.map +0 -1
  628. package/lib/jest-global-setup.js +0 -22
  629. package/lib/jest-global-setup.js.map +0 -1
  630. package/src/TestHelpers.ts +0 -111
  631. package/src/domains/__test__/createPackage.ts +0 -48
  632. package/src/domains/__test__/loadAllUnitTestComponents.ts +0 -73
  633. package/src/domains/component/component-context/__mocks__/mockedManifestModel.ts +0 -30
  634. package/src/domains/component/component-context/__mocks__/mockedUriObj.ts +0 -38
  635. package/src/domains/component/component-context/__mocks__/mockedUriObjPreview.ts +0 -38
  636. package/src/domains/component/component-context/createComponentContextualFunctions.spec.ts +0 -299
  637. package/src/domains/component/component-context/createComponentContextualFunctions.ts +0 -108
  638. package/src/domains/component/errors/ComponentError.ts +0 -22
  639. package/src/domains/component/models/Component.spec.ts +0 -21
  640. package/src/domains/component/models/Component.ts +0 -16
  641. package/src/domains/component/models/ComponentVersion.spec.ts +0 -77
  642. package/src/domains/component/models/ComponentVersion.ts +0 -55
  643. package/src/domains/component/repositories/ComponentRepository.integration.spec.ts +0 -148
  644. package/src/domains/component/repositories/ComponentRepository.ts +0 -37
  645. package/src/domains/component/repositories/ComponentVersionRepository.integration.spec.ts +0 -523
  646. package/src/domains/component/repositories/ComponentVersionRepository.ts +0 -138
  647. package/src/domains/component/services/ComponentService.integration.spec.ts +0 -721
  648. package/src/domains/component/services/ComponentService.ts +0 -350
  649. package/src/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.ts +0 -78
  650. package/src/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.ts +0 -18
  651. package/src/domains/component/utils/getComponentFileSystemFolder.spec.ts +0 -8
  652. package/src/domains/component/utils/getComponentFileSystemFolder.ts +0 -5
  653. package/src/domains/component/utils/getComponentName.spec.ts +0 -7
  654. package/src/domains/component/utils/getComponentName.ts +0 -3
  655. package/src/domains/component/utils/moveFilesAndDirectories.spec.ts +0 -62
  656. package/src/domains/component/utils/moveFilesAndDirectories.ts +0 -27
  657. package/src/domains/component/web-models/ComponentForWeb.ts +0 -11
  658. package/src/domains/component/web-models/ComponentVersionWebModel.ts +0 -16
  659. package/src/domains/component/web-models/ComponentsForWeb.ts +0 -17
  660. package/src/domains/component-set/errors/InvalidEnvironmentVariablesError.ts +0 -11
  661. package/src/domains/component-set/index.ts +0 -18
  662. package/src/domains/component-set/models/ComponentSet.spec.ts +0 -66
  663. package/src/domains/component-set/models/ComponentSet.ts +0 -67
  664. package/src/domains/component-set/models/ComponentSetComponentVersion.spec.ts +0 -106
  665. package/src/domains/component-set/models/ComponentSetComponentVersion.ts +0 -54
  666. package/src/domains/component-set/models/ComponentSetComponentVersionEditable.spec.ts +0 -82
  667. package/src/domains/component-set/models/ComponentSetComponentVersionEditable.ts +0 -46
  668. package/src/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.ts +0 -46
  669. package/src/domains/component-set/models/ComponentSetComponentVersionExcluded.ts +0 -26
  670. package/src/domains/component-set/models/ComponentSetRule.spec.ts +0 -39
  671. package/src/domains/component-set/models/ComponentSetRule.ts +0 -37
  672. package/src/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.ts +0 -172
  673. package/src/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.ts +0 -47
  674. package/src/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.ts +0 -172
  675. package/src/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.ts +0 -47
  676. package/src/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.ts +0 -229
  677. package/src/domains/component-set/repositories/ComponentSetComponentVersionRepository.ts +0 -37
  678. package/src/domains/component-set/repositories/ComponentSetRepository.integration.spec.ts +0 -199
  679. package/src/domains/component-set/repositories/ComponentSetRepository.ts +0 -68
  680. package/src/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.ts +0 -107
  681. package/src/domains/component-set/repositories/ComponentSetRuleRepository.ts +0 -40
  682. package/src/domains/component-set/services/ComponentSetRuleService.integration.spec.ts +0 -137
  683. package/src/domains/component-set/services/ComponentSetRuleService.ts +0 -34
  684. package/src/domains/component-set/services/ComponentSetService.spec.ts +0 -144
  685. package/src/domains/component-set/services/ComponentSetService.ts +0 -82
  686. package/src/domains/component-set/services/ComponentSetServiceForLocalDev.spec.ts +0 -209
  687. package/src/domains/component-set/services/ComponentSetServiceForLocalDev.ts +0 -111
  688. package/src/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.ts +0 -2898
  689. package/src/domains/component-set/services/ComponentSetServiceForProduction.ts +0 -839
  690. package/src/domains/component-set/services/EnvironmentVariables.ts +0 -1
  691. package/src/domains/component-set/services/Headers.ts +0 -1
  692. package/src/domains/component-set/services/RuntimeComponentSet.ts +0 -7
  693. package/src/domains/component-set/web-models/ComponentSetComponentVersionForWeb.ts +0 -7
  694. package/src/domains/component-set/web-models/ComponentSetForWeb.ts +0 -83
  695. package/src/domains/content/index.ts +0 -4
  696. package/src/domains/content/services/ComponentContentSchemaService.spec.ts +0 -264
  697. package/src/domains/content/services/ComponentContentSchemaService.ts +0 -53
  698. package/src/domains/content/services/ContentItemService.spec.ts +0 -108
  699. package/src/domains/content/services/ContentItemService.ts +0 -34
  700. package/src/domains/content/services/DynamicContentItemService.spec.ts +0 -97
  701. package/src/domains/content/services/DynamicContentItemService.ts +0 -30
  702. package/src/domains/content/utils/getContentSchemaName.spec.ts +0 -7
  703. package/src/domains/content/utils/getContentSchemaName.ts +0 -7
  704. package/src/domains/db/ComponentConnectionManager.ts +0 -4
  705. package/src/domains/db/ComponentRepositories.ts +0 -31
  706. package/src/domains/db/createConnectionManager.ts +0 -24
  707. package/src/domains/db/index.ts +0 -3
  708. package/src/domains/db/migration-list.ts +0 -16
  709. package/src/domains/manifest/AbstractManifest.ts +0 -57
  710. package/src/domains/manifest/ManifestV1.spec.ts +0 -436
  711. package/src/domains/manifest/ManifestV1.ts +0 -146
  712. package/src/domains/manifest/errors/ManifestLocationError.ts +0 -9
  713. package/src/domains/manifest/services/AbstractManifestService.spec.ts +0 -427
  714. package/src/domains/manifest/services/AbstractManifestService.ts +0 -316
  715. package/src/domains/manifest/services/ComponentFunctionService.spec.ts +0 -683
  716. package/src/domains/manifest/services/ComponentFunctionService.ts +0 -178
  717. package/src/domains/manifest/services/ComponentInputValidationService.ts +0 -22
  718. package/src/domains/manifest/services/ManifestServiceForProduction.spec.ts +0 -90
  719. package/src/domains/manifest/services/ManifestServiceForProduction.ts +0 -98
  720. package/src/domains/manifest/utils/assertFuncEntryFilesAreValid.ts +0 -19
  721. package/src/domains/manifest/utils/assertStaticFilesAreValid.ts +0 -37
  722. package/src/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.ts +0 -121
  723. package/src/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.ts +0 -15
  724. package/src/domains/manifest/utils/getAndAssertManifestVersion.spec.ts +0 -134
  725. package/src/domains/manifest/utils/getAndAssertManifestVersion.ts +0 -27
  726. package/src/domains/url/convertFunctionStaticFilesToFqdn.spec.ts +0 -24
  727. package/src/domains/url/convertFunctionStaticFilesToFqdn.ts +0 -25
  728. package/src/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.ts +0 -48
  729. package/src/domains/url/convertFunctionStaticFilesToFqdnForPreview.ts +0 -25
  730. package/src/domains/url/index.ts +0 -1
  731. package/src/migrations/20220704054051_initial.sql +0 -19
  732. package/src/migrations/20220718172237_adding_component_sets.sql +0 -23
  733. package/src/migrations/20220728113941_add_env_vars_field.sql +0 -1
  734. package/src/migrations/20220817113300_removing_null_props_from_jsonb.sql +0 -41
  735. package/src/migrations/20221027151225_dummy.sql +0 -2
  736. package/src/migrations/20221117151200_add_detail_columns_to_component_version.js +0 -49
  737. package/src/migrations/20221220151200_add_required_to_manifests.js +0 -61
  738. package/src/migrations/20221222151200_add_required_to_manifests.js +0 -138
  739. package/src/migrations/20223525103556_component_set_rule.sql +0 -19
  740. package/src/migrations/20230111095522_update_environment_property.js +0 -72
  741. package/src/migrations/20230203084900_ensure_static_root_exists.js +0 -57
  742. package/src/migrations/20230210143300_lowercase_all_uri_names.js +0 -106
  743. package/src/migrations/20230217151212_component_set_component_version_updates.sql +0 -38
  744. package/src/migrations/20230218121212_add_component_set_rules.js +0 -31
  745. /package/lib/domains/{component-set/models/ComponentSet.spec.d.ts → job/services/JobContextService/JobContextService.spec.d.ts} +0 -0
  746. /package/lib/domains/{component-set/models/ComponentSetComponentVersion.spec.d.ts → job/services/JobManifestService/JobManifestService.spec.d.ts} +0 -0
  747. /package/lib/domains/{component-set/models/ComponentSetComponentVersionEditable.spec.d.ts → job/utils/GetAwsTags/GetAwsTags.spec.d.ts} +0 -0
  748. /package/lib/{domains/job/repository/mocks → mocks}/mockIoc.d.ts +0 -0
@@ -0,0 +1,176 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+
8
+ // Mock external dependencies before any imports
9
+ const mockUploadFile = jest.fn();
10
+ jest.mock('@squiz/virus-scanner-lib', () => {
11
+ const originalModule = jest.requireActual('@squiz/virus-scanner-lib');
12
+ return {
13
+ ...originalModule,
14
+ uploadFile: mockUploadFile,
15
+ };
16
+ });
17
+
18
+ jest.mock('./utils/manifestValidator');
19
+ jest.mock('./utils/uploadInitializer');
20
+ jest.mock('./utils/scanWatcher');
21
+ jest.mock('./utils/resultPoller');
22
+ jest.mock('./utils/cleanup');
23
+
24
+ const mockMkdtemp = jest.fn();
25
+ const mockRm = jest.fn();
26
+ jest.mock('fs/promises', () => ({
27
+ mkdtemp: mockMkdtemp,
28
+ rm: mockRm,
29
+ }));
30
+
31
+ import { AxiosInstance } from 'axios';
32
+ import { JobUploadService } from './JobUploadService';
33
+ import { cleanupTmpDir } from './utils/cleanup';
34
+ import { getAndValidateManifest } from './utils/manifestValidator';
35
+ import { pollForResult } from './utils/resultPoller';
36
+ import { watchAndWaitForUploadAndScanComplete } from './utils/scanWatcher';
37
+ import { initializeUpload } from './utils/uploadInitializer';
38
+
39
+ const mockGetAndValidateManifest = getAndValidateManifest as jest.MockedFunction<typeof getAndValidateManifest>;
40
+ const mockInitializeUpload = initializeUpload as jest.MockedFunction<typeof initializeUpload>;
41
+ const mockWatchAndWait = watchAndWaitForUploadAndScanComplete as jest.MockedFunction<
42
+ typeof watchAndWaitForUploadAndScanComplete
43
+ >;
44
+ const mockPollForResult = pollForResult as jest.MockedFunction<typeof pollForResult>;
45
+ const mockCleanupTmpDir = cleanupTmpDir as jest.MockedFunction<typeof cleanupTmpDir>;
46
+
47
+ describe('JobUploadService', (): void => {
48
+ let jobUploadService: JobUploadService;
49
+
50
+ const mockAxiosClient = {
51
+ post: jest.fn(),
52
+ get: jest.fn(),
53
+ } as unknown as AxiosInstance;
54
+
55
+ beforeEach(() => {
56
+ jest.clearAllMocks();
57
+
58
+ jobUploadService = new JobUploadService();
59
+
60
+ jest.spyOn(jobUploadService['logger'], 'info').mockImplementation(() => jobUploadService['logger']);
61
+ jest.spyOn(jobUploadService['logger'], 'error').mockImplementation(() => jobUploadService['logger']);
62
+ jest.spyOn(jobUploadService['logger'], 'warn').mockImplementation(() => jobUploadService['logger']);
63
+ jest.spyOn(jobUploadService['logger'], 'debug').mockImplementation(() => jobUploadService['logger']);
64
+
65
+ mockMkdtemp.mockResolvedValue('/tmp/job-upload-abc123');
66
+ });
67
+
68
+ describe('uploadJobFolder', (): void => {
69
+ const mockFolderPath = '/test/job/folder';
70
+ const mockBaseTempDir = '/tmp';
71
+
72
+ it('should successfully upload job folder with all steps', async (): Promise<void> => {
73
+ const mockManifest = {
74
+ getName: () => 'test-job',
75
+ getVersion: () => '1.0.0',
76
+ getModel: () => ({ name: 'test-job', version: '1.0.0' }),
77
+ };
78
+ const mockInitialUpload = {
79
+ zip: '/tmp/job.zip',
80
+ upload: { id: 'upload-123' },
81
+ };
82
+ const mockResult = { status: 'successful' };
83
+
84
+ mockGetAndValidateManifest.mockResolvedValue(mockManifest as any);
85
+ mockInitializeUpload.mockResolvedValue(mockInitialUpload);
86
+ mockUploadFile.mockResolvedValue(undefined);
87
+ mockWatchAndWait.mockResolvedValue(undefined);
88
+ mockPollForResult.mockResolvedValue(mockResult);
89
+ mockCleanupTmpDir.mockResolvedValue(undefined);
90
+
91
+ await jobUploadService.uploadJobFolder(mockAxiosClient, mockFolderPath, mockBaseTempDir);
92
+
93
+ expect(mockMkdtemp).toHaveBeenCalledWith('/tmp/job-upload');
94
+ expect(mockGetAndValidateManifest).toHaveBeenCalledWith(mockAxiosClient, mockFolderPath, expect.any(Object));
95
+ expect(mockInitializeUpload).toHaveBeenCalledWith(
96
+ mockAxiosClient,
97
+ mockFolderPath,
98
+ '/tmp/job-upload-abc123',
99
+ expect.any(Object),
100
+ );
101
+ expect(mockUploadFile).toHaveBeenCalledWith(mockInitialUpload.upload, mockInitialUpload.zip);
102
+ expect(mockWatchAndWait).toHaveBeenCalledWith(mockAxiosClient, '/upload-job/status/', 'upload-123');
103
+ expect(mockPollForResult).toHaveBeenCalledWith(
104
+ mockAxiosClient,
105
+ 'upload-123',
106
+ mockManifest.getModel(),
107
+ expect.any(Object),
108
+ );
109
+ expect(mockCleanupTmpDir).toHaveBeenCalledWith('/tmp/job-upload-abc123', expect.any(Object));
110
+ });
111
+
112
+ it('should cleanup temp directory on success', async (): Promise<void> => {
113
+ const mockManifest = { getModel: () => ({}) };
114
+ const mockInitialUpload = { zip: '/tmp/job.zip', upload: { id: 'upload-123' } };
115
+ const mockResult = { status: 'successful' };
116
+
117
+ mockGetAndValidateManifest.mockResolvedValue(mockManifest as any);
118
+ mockInitializeUpload.mockResolvedValue(mockInitialUpload);
119
+ mockUploadFile.mockResolvedValue(undefined);
120
+ mockWatchAndWait.mockResolvedValue(undefined);
121
+ mockPollForResult.mockResolvedValue(mockResult);
122
+ mockCleanupTmpDir.mockResolvedValue(undefined);
123
+
124
+ await jobUploadService.uploadJobFolder(mockAxiosClient, mockFolderPath, mockBaseTempDir);
125
+
126
+ expect(mockCleanupTmpDir).toHaveBeenCalledWith('/tmp/job-upload-abc123', expect.any(Object));
127
+ });
128
+
129
+ it('should cleanup temp directory on error', async (): Promise<void> => {
130
+ const testError = new Error('Test error');
131
+ mockGetAndValidateManifest.mockRejectedValue(testError);
132
+ mockCleanupTmpDir.mockResolvedValue(undefined);
133
+
134
+ await expect(jobUploadService.uploadJobFolder(mockAxiosClient, mockFolderPath, mockBaseTempDir)).rejects.toThrow(
135
+ 'Test error',
136
+ );
137
+
138
+ expect(mockCleanupTmpDir).toHaveBeenCalledWith('/tmp/job-upload-abc123', expect.any(Object));
139
+ });
140
+
141
+ it('should handle unsuccessful upload result', async (): Promise<void> => {
142
+ const mockManifest = { getModel: () => ({}) };
143
+ const mockInitialUpload = { zip: '/tmp/job.zip', upload: { id: 'upload-123' } };
144
+ const mockResult = { status: 'failed', message: 'Upload failed' };
145
+
146
+ mockGetAndValidateManifest.mockResolvedValue(mockManifest as any);
147
+ mockInitializeUpload.mockResolvedValue(mockInitialUpload);
148
+ mockUploadFile.mockResolvedValue(undefined);
149
+ mockWatchAndWait.mockResolvedValue(undefined);
150
+ mockPollForResult.mockResolvedValue(mockResult);
151
+ mockCleanupTmpDir.mockResolvedValue(undefined);
152
+
153
+ await jobUploadService.uploadJobFolder(mockAxiosClient, mockFolderPath, mockBaseTempDir);
154
+
155
+ // Should call cleanup twice: once for unsuccessful result, once for normal cleanup
156
+ expect(mockCleanupTmpDir).toHaveBeenCalledTimes(2);
157
+ });
158
+
159
+ it('should handle upload file step failure', async (): Promise<void> => {
160
+ const mockManifest = { getModel: () => ({}) };
161
+ const mockInitialUpload = { zip: '/tmp/job.zip', upload: { id: 'upload-123' } };
162
+ const uploadError = new Error('Upload failed');
163
+
164
+ mockGetAndValidateManifest.mockResolvedValue(mockManifest as any);
165
+ mockInitializeUpload.mockResolvedValue(mockInitialUpload);
166
+ mockUploadFile.mockRejectedValue(uploadError);
167
+ mockCleanupTmpDir.mockResolvedValue(undefined);
168
+
169
+ await expect(jobUploadService.uploadJobFolder(mockAxiosClient, mockFolderPath, mockBaseTempDir)).rejects.toThrow(
170
+ 'Upload failed',
171
+ );
172
+
173
+ expect(mockCleanupTmpDir).toHaveBeenCalledWith('/tmp/job-upload-abc123', expect.any(Object));
174
+ });
175
+ });
176
+ });
@@ -0,0 +1,66 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { getLogger, Logger } from '@squiz/dx-logger-lib';
7
+ import { uploadFile } from '@squiz/virus-scanner-lib';
8
+ import { AxiosInstance } from 'axios';
9
+ import color from 'cli-color';
10
+ import fsp from 'fs/promises';
11
+ import path from 'path';
12
+ import {
13
+ cleanupTmpDir,
14
+ getAndValidateManifest,
15
+ initializeUpload,
16
+ pollForResult,
17
+ watchAndWaitForUploadAndScanComplete,
18
+ } from './utils';
19
+
20
+ /**
21
+ * Service for handling job folder uploads
22
+ */
23
+ export class JobUploadService {
24
+ private logger: Logger;
25
+
26
+ constructor() {
27
+ this.logger = getLogger({ name: 'upload-job', format: 'human' });
28
+ }
29
+
30
+ /**
31
+ * Upload a job folder to the job runner service
32
+ * @param apiClient - Axios client for API calls
33
+ * @param folderPath - Path to the job folder to upload
34
+ * @param baseTempDir - Base temporary directory for upload processing
35
+ */
36
+ public async uploadJobFolder(apiClient: AxiosInstance, folderPath: string, baseTempDir: string = ''): Promise<void> {
37
+ const tmpDir = await fsp.mkdtemp(path.resolve(baseTempDir, 'job-upload'));
38
+
39
+ try {
40
+ const manifest = await getAndValidateManifest(apiClient, folderPath, this.logger);
41
+
42
+ const initialUpload = await initializeUpload(apiClient, folderPath, tmpDir, this.logger);
43
+
44
+ await uploadFile(initialUpload.upload, initialUpload.zip);
45
+
46
+ await watchAndWaitForUploadAndScanComplete(apiClient, '/upload-job/status/', initialUpload.upload.id);
47
+
48
+ this.logger.info(`deployment id: ${initialUpload.upload.id} status: deploying job folder`);
49
+
50
+ const result = await pollForResult(apiClient, initialUpload.upload.id, manifest.getModel(), this.logger);
51
+
52
+ await cleanupTmpDir(tmpDir, this.logger);
53
+
54
+ if (result.status === 'successful') {
55
+ this.logger.info(`deployment id: ${initialUpload.upload.id} status: ${color.green('success')}`);
56
+ } else {
57
+ const message = result?.message ?? 'unknown';
58
+ this.logger.error(`failed due an unexpected reason: ${message}`);
59
+ await cleanupTmpDir(tmpDir, this.logger);
60
+ }
61
+ } catch (e) {
62
+ await cleanupTmpDir(tmpDir, this.logger);
63
+ throw e;
64
+ }
65
+ }
66
+ }
@@ -0,0 +1,109 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { Logger } from '@squiz/dx-logger-lib';
7
+ import fsp from 'fs/promises';
8
+ import { cleanupTmpDir } from './cleanup';
9
+
10
+ jest.mock('fs/promises', () => ({
11
+ rm: jest.fn(),
12
+ }));
13
+
14
+ describe('cleanup', () => {
15
+ let mockLogger: Logger;
16
+ const mockRm = fsp.rm as jest.MockedFunction<typeof fsp.rm>;
17
+
18
+ beforeEach(() => {
19
+ jest.clearAllMocks();
20
+ mockLogger = {
21
+ error: jest.fn(),
22
+ info: jest.fn(),
23
+ warn: jest.fn(),
24
+ debug: jest.fn(),
25
+ } as any;
26
+ });
27
+
28
+ describe('cleanupTmpDir', () => {
29
+ const testTmpDir = '/tmp/test-directory';
30
+
31
+ it('should successfully remove directory', async () => {
32
+ mockRm.mockResolvedValue(undefined);
33
+
34
+ await cleanupTmpDir(testTmpDir, mockLogger);
35
+
36
+ expect(mockRm).toHaveBeenCalledWith(testTmpDir, {
37
+ force: true,
38
+ recursive: true,
39
+ });
40
+ expect(mockLogger.error).not.toHaveBeenCalled();
41
+ });
42
+
43
+ it('should log error when directory removal fails', async () => {
44
+ const mockError = new Error('Permission denied');
45
+ mockRm.mockRejectedValue(mockError);
46
+
47
+ await cleanupTmpDir(testTmpDir, mockLogger);
48
+
49
+ expect(mockRm).toHaveBeenCalledWith(testTmpDir, {
50
+ force: true,
51
+ recursive: true,
52
+ });
53
+ expect(mockLogger.error).toHaveBeenCalledWith('failed to remove temp directory', mockError);
54
+ });
55
+
56
+ it('should handle ENOENT error gracefully', async () => {
57
+ const enoentError = new Error('ENOENT: no such file or directory');
58
+ (enoentError as any).code = 'ENOENT';
59
+ mockRm.mockRejectedValue(enoentError);
60
+
61
+ await cleanupTmpDir(testTmpDir, mockLogger);
62
+
63
+ expect(mockRm).toHaveBeenCalledWith(testTmpDir, {
64
+ force: true,
65
+ recursive: true,
66
+ });
67
+ expect(mockLogger.error).toHaveBeenCalledWith('failed to remove temp directory', enoentError);
68
+ });
69
+
70
+ it('should handle system permission errors', async () => {
71
+ const permissionError = new Error('EACCES: permission denied');
72
+ (permissionError as any).code = 'EACCES';
73
+ mockRm.mockRejectedValue(permissionError);
74
+
75
+ await cleanupTmpDir(testTmpDir, mockLogger);
76
+
77
+ expect(mockRm).toHaveBeenCalledWith(testTmpDir, {
78
+ force: true,
79
+ recursive: true,
80
+ });
81
+ expect(mockLogger.error).toHaveBeenCalledWith('failed to remove temp directory', permissionError);
82
+ });
83
+
84
+ it('should handle empty directory path', async () => {
85
+ mockRm.mockResolvedValue(undefined);
86
+
87
+ await cleanupTmpDir('', mockLogger);
88
+
89
+ expect(mockRm).toHaveBeenCalledWith('', {
90
+ force: true,
91
+ recursive: true,
92
+ });
93
+ expect(mockLogger.error).not.toHaveBeenCalled();
94
+ });
95
+
96
+ it('should handle directory path with special characters', async () => {
97
+ const specialPath = '/tmp/test dir with spaces & symbols!@#';
98
+ mockRm.mockResolvedValue(undefined);
99
+
100
+ await cleanupTmpDir(specialPath, mockLogger);
101
+
102
+ expect(mockRm).toHaveBeenCalledWith(specialPath, {
103
+ force: true,
104
+ recursive: true,
105
+ });
106
+ expect(mockLogger.error).not.toHaveBeenCalled();
107
+ });
108
+ });
109
+ });
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { Logger } from '@squiz/dx-logger-lib';
7
+ import fsp from 'fs/promises';
8
+
9
+ /**
10
+ * Clean up temporary directory
11
+ * @param tmpDir - Temporary directory path to clean up
12
+ * @param logger - Logger instance
13
+ */
14
+ export async function cleanupTmpDir(tmpDir: string, logger: Logger): Promise<void> {
15
+ await fsp.rm(tmpDir, { force: true, recursive: true }).catch((error: any) => {
16
+ logger.error('failed to remove temp directory', error);
17
+ });
18
+ }
@@ -0,0 +1,76 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { AxiosError } from 'axios';
7
+ import { handleError, isAxiosError } from './errorUtils';
8
+
9
+ describe('errorUtils', () => {
10
+ describe('isAxiosError', () => {
11
+ it('should return true for axios errors', () => {
12
+ const axiosError = new AxiosError('Test error');
13
+ expect(isAxiosError(axiosError)).toBe(true);
14
+ });
15
+
16
+ it('should return false for non-axios errors', () => {
17
+ const regularError = new Error('Regular error');
18
+ expect(isAxiosError(regularError)).toBe(false);
19
+ });
20
+
21
+ it('should return false for null/undefined', () => {
22
+ expect(isAxiosError(null)).toBe(false);
23
+ expect(isAxiosError(undefined)).toBe(false);
24
+ });
25
+ });
26
+
27
+ describe('handleError', () => {
28
+ it('should handle axios errors with response data message', () => {
29
+ const axiosError = new AxiosError('Request failed');
30
+ axiosError.response = {
31
+ status: 500,
32
+ data: { message: 'Internal server error' },
33
+ } as any;
34
+
35
+ const result = handleError(axiosError);
36
+
37
+ expect(result.message).toBe('Unexpected response code 500. Internal server error');
38
+ });
39
+
40
+ it('should handle axios errors without response data message', () => {
41
+ const axiosError = new AxiosError('Network error');
42
+ axiosError.response = {
43
+ status: 404,
44
+ data: {},
45
+ } as any;
46
+
47
+ const result = handleError(axiosError);
48
+
49
+ expect(result.message).toBe('Network error (code: 404)');
50
+ });
51
+
52
+ it('should handle axios errors without response', () => {
53
+ const axiosError = new AxiosError('Connection timeout');
54
+
55
+ const result = handleError(axiosError);
56
+
57
+ expect(result.message).toBe('Connection timeout (code: unknown)');
58
+ });
59
+
60
+ it('should handle non-axios errors', () => {
61
+ const regularError = new Error('Regular error');
62
+
63
+ const result = handleError(regularError);
64
+
65
+ expect(result.message).toBe('Regular error');
66
+ });
67
+
68
+ it('should handle errors without message', () => {
69
+ const errorWithoutMessage = {};
70
+
71
+ const result = handleError(errorWithoutMessage);
72
+
73
+ expect(result.message).toBe('An error has occurred');
74
+ });
75
+ });
76
+ });
@@ -0,0 +1,35 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ /**
7
+ * Check if error is an AxiosError
8
+ * @param error - The error to check
9
+ * @returns true if it's an AxiosError, false otherwise
10
+ */
11
+ export function isAxiosError(error: any): boolean {
12
+ return Boolean(error && error.isAxiosError === true);
13
+ }
14
+
15
+ /**
16
+ * Handle errors from API calls
17
+ * @param error - The error to handle
18
+ * @returns A formatted Error object
19
+ */
20
+ export function handleError(error: any): Error {
21
+ const { response } = error;
22
+ const errorMessage = error.message;
23
+ const newError = new Error(errorMessage || 'An error has occurred');
24
+
25
+ if (isAxiosError(error)) {
26
+ if (response?.data?.message) {
27
+ newError.message = `Unexpected response code ${response.status}. ${response.data.message}`;
28
+ } else {
29
+ newError.message = `${errorMessage} (code: ${response?.status || 'unknown'})`;
30
+ }
31
+ }
32
+
33
+ newError.stack = error.stack;
34
+ return newError;
35
+ }
@@ -0,0 +1,15 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ /* istanbul ignore file */
7
+
8
+ export { cleanupTmpDir } from './cleanup';
9
+ export { handleError, isAxiosError } from './errorUtils';
10
+ export { getAndValidateManifest } from './manifestValidator';
11
+ export { handleResponse, isAxiosResponse } from './responseHandler';
12
+ export { pollForResult } from './resultPoller';
13
+ export { watchAndWaitForUploadAndScanComplete } from './scanWatcher';
14
+ export { initializeUpload, type InitialUpload } from './uploadInitializer';
15
+ export { checkIfVersionExists } from './versionChecker';