@datadog/datadog-ci 3.20.0 → 3.21.2

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 (611) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +34 -34
  3. package/dist/cli.d.ts +2 -1
  4. package/dist/cli.js +11 -19
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/cli.d.ts +35 -0
  7. package/dist/commands/cli.js +33 -0
  8. package/dist/commands/cli.js.map +1 -0
  9. package/dist/commands/coverage/api.d.ts +2 -2
  10. package/dist/commands/coverage/api.js +2 -2
  11. package/dist/commands/coverage/api.js.map +1 -1
  12. package/dist/commands/coverage/cli.d.ts +2 -1
  13. package/dist/commands/coverage/cli.js +2 -1
  14. package/dist/commands/coverage/cli.js.map +1 -1
  15. package/dist/commands/coverage/interfaces.d.ts +2 -2
  16. package/dist/commands/coverage/renderer.d.ts +1 -1
  17. package/dist/commands/coverage/renderer.js.map +1 -1
  18. package/dist/commands/coverage/upload.js +17 -17
  19. package/dist/commands/coverage/upload.js.map +1 -1
  20. package/dist/commands/coverage/utils.d.ts +3 -3
  21. package/dist/commands/coverage/utils.js +2 -2
  22. package/dist/commands/coverage/utils.js.map +1 -1
  23. package/dist/commands/dsyms/cli.d.ts +2 -1
  24. package/dist/commands/dsyms/cli.js +2 -1
  25. package/dist/commands/dsyms/cli.js.map +1 -1
  26. package/dist/commands/dsyms/interfaces.d.ts +1 -1
  27. package/dist/commands/dsyms/renderer.d.ts +1 -1
  28. package/dist/commands/dsyms/renderer.js +2 -2
  29. package/dist/commands/dsyms/renderer.js.map +1 -1
  30. package/dist/commands/dsyms/upload.d.ts +1 -1
  31. package/dist/commands/dsyms/upload.js +14 -14
  32. package/dist/commands/dsyms/upload.js.map +1 -1
  33. package/dist/commands/dsyms/utils.js +1 -1
  34. package/dist/commands/dsyms/utils.js.map +1 -1
  35. package/dist/commands/elf-symbols/cli.d.ts +2 -1
  36. package/dist/commands/elf-symbols/cli.js +2 -1
  37. package/dist/commands/elf-symbols/cli.js.map +1 -1
  38. package/dist/commands/elf-symbols/elf-constants.js +3 -0
  39. package/dist/commands/elf-symbols/elf-constants.js.map +1 -1
  40. package/dist/commands/elf-symbols/elf.d.ts +3 -2
  41. package/dist/commands/elf-symbols/elf.js +7 -4
  42. package/dist/commands/elf-symbols/elf.js.map +1 -1
  43. package/dist/commands/elf-symbols/helpers.d.ts +4 -4
  44. package/dist/commands/elf-symbols/helpers.js +3 -3
  45. package/dist/commands/elf-symbols/helpers.js.map +1 -1
  46. package/dist/commands/elf-symbols/renderer.d.ts +1 -1
  47. package/dist/commands/elf-symbols/renderer.js +3 -3
  48. package/dist/commands/elf-symbols/renderer.js.map +1 -1
  49. package/dist/commands/elf-symbols/upload.d.ts +1 -1
  50. package/dist/commands/elf-symbols/upload.js +14 -17
  51. package/dist/commands/elf-symbols/upload.js.map +1 -1
  52. package/dist/commands/flutter-symbols/cli.d.ts +2 -1
  53. package/dist/commands/flutter-symbols/cli.js +2 -1
  54. package/dist/commands/flutter-symbols/cli.js.map +1 -1
  55. package/dist/commands/flutter-symbols/helpers.d.ts +4 -4
  56. package/dist/commands/flutter-symbols/helpers.js +3 -3
  57. package/dist/commands/flutter-symbols/helpers.js.map +1 -1
  58. package/dist/commands/flutter-symbols/renderer.d.ts +1 -1
  59. package/dist/commands/flutter-symbols/renderer.js +3 -3
  60. package/dist/commands/flutter-symbols/renderer.js.map +1 -1
  61. package/dist/commands/flutter-symbols/upload.d.ts +1 -1
  62. package/dist/commands/flutter-symbols/upload.js +15 -18
  63. package/dist/commands/flutter-symbols/upload.js.map +1 -1
  64. package/dist/commands/junit/api.d.ts +2 -2
  65. package/dist/commands/junit/api.js +1 -1
  66. package/dist/commands/junit/api.js.map +1 -1
  67. package/dist/commands/junit/cli.d.ts +2 -1
  68. package/dist/commands/junit/cli.js +2 -1
  69. package/dist/commands/junit/cli.js.map +1 -1
  70. package/dist/commands/junit/interfaces.d.ts +1 -1
  71. package/dist/commands/junit/renderer.d.ts +1 -1
  72. package/dist/commands/junit/renderer.js.map +1 -1
  73. package/dist/commands/junit/upload.js +19 -19
  74. package/dist/commands/junit/upload.js.map +1 -1
  75. package/dist/commands/junit/utils.d.ts +1 -2
  76. package/dist/commands/junit/utils.js +4 -18
  77. package/dist/commands/junit/utils.js.map +1 -1
  78. package/dist/commands/measure/cli.d.ts +2 -1
  79. package/dist/commands/measure/cli.js +2 -1
  80. package/dist/commands/measure/cli.js.map +1 -1
  81. package/dist/commands/measure/measure.js +7 -7
  82. package/dist/commands/measure/measure.js.map +1 -1
  83. package/dist/commands/pe-symbols/cli.d.ts +2 -1
  84. package/dist/commands/pe-symbols/cli.js +2 -1
  85. package/dist/commands/pe-symbols/cli.js.map +1 -1
  86. package/dist/commands/pe-symbols/helpers.d.ts +4 -4
  87. package/dist/commands/pe-symbols/helpers.js +3 -3
  88. package/dist/commands/pe-symbols/helpers.js.map +1 -1
  89. package/dist/commands/pe-symbols/pe.js +4 -4
  90. package/dist/commands/pe-symbols/pe.js.map +1 -1
  91. package/dist/commands/pe-symbols/renderer.d.ts +1 -1
  92. package/dist/commands/pe-symbols/renderer.js +3 -3
  93. package/dist/commands/pe-symbols/renderer.js.map +1 -1
  94. package/dist/commands/pe-symbols/upload.d.ts +1 -1
  95. package/dist/commands/pe-symbols/upload.js +14 -17
  96. package/dist/commands/pe-symbols/upload.js.map +1 -1
  97. package/dist/commands/react-native/cli.d.ts +5 -1
  98. package/dist/commands/react-native/cli.js +2 -1
  99. package/dist/commands/react-native/cli.js.map +1 -1
  100. package/dist/commands/react-native/codepush.js +3 -3
  101. package/dist/commands/react-native/codepush.js.map +1 -1
  102. package/dist/commands/react-native/injectDebugId.js +3 -3
  103. package/dist/commands/react-native/injectDebugId.js.map +1 -1
  104. package/dist/commands/react-native/interfaces.d.ts +3 -3
  105. package/dist/commands/react-native/renderer.d.ts +1 -1
  106. package/dist/commands/react-native/renderer.js +3 -3
  107. package/dist/commands/react-native/renderer.js.map +1 -1
  108. package/dist/commands/react-native/upload.d.ts +1 -1
  109. package/dist/commands/react-native/upload.js +15 -15
  110. package/dist/commands/react-native/upload.js.map +1 -1
  111. package/dist/commands/react-native/validation.js +1 -1
  112. package/dist/commands/react-native/validation.js.map +1 -1
  113. package/dist/commands/react-native/xcode.js +4 -4
  114. package/dist/commands/react-native/xcode.js.map +1 -1
  115. package/dist/commands/sourcemaps/cli.d.ts +2 -1
  116. package/dist/commands/sourcemaps/cli.js +2 -1
  117. package/dist/commands/sourcemaps/cli.js.map +1 -1
  118. package/dist/commands/sourcemaps/interfaces.d.ts +1 -1
  119. package/dist/commands/sourcemaps/renderer.d.ts +1 -1
  120. package/dist/commands/sourcemaps/renderer.js +3 -3
  121. package/dist/commands/sourcemaps/renderer.js.map +1 -1
  122. package/dist/commands/sourcemaps/upload.d.ts +1 -1
  123. package/dist/commands/sourcemaps/upload.js +15 -15
  124. package/dist/commands/sourcemaps/upload.js.map +1 -1
  125. package/dist/commands/sourcemaps/utils.js +2 -2
  126. package/dist/commands/sourcemaps/utils.js.map +1 -1
  127. package/dist/commands/sourcemaps/validation.js +1 -1
  128. package/dist/commands/sourcemaps/validation.js.map +1 -1
  129. package/dist/commands/span/cli.d.ts +2 -1
  130. package/dist/commands/span/cli.js +2 -1
  131. package/dist/commands/span/cli.js.map +1 -1
  132. package/dist/commands/span/span.js +1 -1
  133. package/dist/commands/span/span.js.map +1 -1
  134. package/dist/commands/trace/api.d.ts +2 -2
  135. package/dist/commands/trace/api.js +1 -1
  136. package/dist/commands/trace/api.js.map +1 -1
  137. package/dist/commands/trace/cli.d.ts +2 -1
  138. package/dist/commands/trace/cli.js +2 -1
  139. package/dist/commands/trace/cli.js.map +1 -1
  140. package/dist/commands/trace/helper.js +8 -8
  141. package/dist/commands/trace/helper.js.map +1 -1
  142. package/dist/commands/trace/interfaces.d.ts +1 -1
  143. package/dist/commands/trace/interfaces.js +1 -1
  144. package/dist/commands/trace/interfaces.js.map +1 -1
  145. package/dist/commands/trace/test-utils.d.ts +1 -1
  146. package/dist/commands/unity-symbols/cli.d.ts +2 -1
  147. package/dist/commands/unity-symbols/cli.js +2 -1
  148. package/dist/commands/unity-symbols/cli.js.map +1 -1
  149. package/dist/commands/unity-symbols/helpers.d.ts +4 -4
  150. package/dist/commands/unity-symbols/helpers.js +3 -3
  151. package/dist/commands/unity-symbols/helpers.js.map +1 -1
  152. package/dist/commands/unity-symbols/renderer.d.ts +1 -1
  153. package/dist/commands/unity-symbols/renderer.js +3 -3
  154. package/dist/commands/unity-symbols/renderer.js.map +1 -1
  155. package/dist/commands/unity-symbols/upload.d.ts +1 -1
  156. package/dist/commands/unity-symbols/upload.js +14 -14
  157. package/dist/commands/unity-symbols/upload.js.map +1 -1
  158. package/dist/commands/version/cli.d.ts +7 -0
  159. package/dist/commands/version/cli.js +4 -3
  160. package/dist/commands/version/cli.js.map +1 -1
  161. package/dist/index.d.ts +4 -4
  162. package/dist/index.js +5 -5
  163. package/dist/index.js.map +1 -1
  164. package/package.json +32 -131
  165. package/dist/commands/aas/cli.d.ts +0 -1
  166. package/dist/commands/aas/cli.js +0 -6
  167. package/dist/commands/aas/cli.js.map +0 -1
  168. package/dist/commands/aas/common.d.ts +0 -48
  169. package/dist/commands/aas/common.js +0 -282
  170. package/dist/commands/aas/common.js.map +0 -1
  171. package/dist/commands/aas/instrument.d.ts +0 -30
  172. package/dist/commands/aas/instrument.js +0 -239
  173. package/dist/commands/aas/instrument.js.map +0 -1
  174. package/dist/commands/aas/interfaces.d.ts +0 -22
  175. package/dist/commands/aas/interfaces.js +0 -3
  176. package/dist/commands/aas/interfaces.js.map +0 -1
  177. package/dist/commands/aas/uninstrument.d.ts +0 -16
  178. package/dist/commands/aas/uninstrument.js +0 -100
  179. package/dist/commands/aas/uninstrument.js.map +0 -1
  180. package/dist/commands/cloud-run/cli.d.ts +0 -1
  181. package/dist/commands/cloud-run/cli.js +0 -7
  182. package/dist/commands/cloud-run/cli.js.map +0 -1
  183. package/dist/commands/cloud-run/constants.d.ts +0 -3
  184. package/dist/commands/cloud-run/constants.js +0 -24
  185. package/dist/commands/cloud-run/constants.js.map +0 -1
  186. package/dist/commands/cloud-run/flare.d.ts +0 -87
  187. package/dist/commands/cloud-run/flare.js +0 -631
  188. package/dist/commands/cloud-run/flare.js.map +0 -1
  189. package/dist/commands/cloud-run/instrument.d.ts +0 -36
  190. package/dist/commands/cloud-run/instrument.js +0 -383
  191. package/dist/commands/cloud-run/instrument.js.map +0 -1
  192. package/dist/commands/cloud-run/interfaces.d.ts +0 -51
  193. package/dist/commands/cloud-run/interfaces.js +0 -3
  194. package/dist/commands/cloud-run/interfaces.js.map +0 -1
  195. package/dist/commands/cloud-run/prompt.d.ts +0 -5
  196. package/dist/commands/cloud-run/prompt.js +0 -86
  197. package/dist/commands/cloud-run/prompt.js.map +0 -1
  198. package/dist/commands/cloud-run/renderer.d.ts +0 -13
  199. package/dist/commands/cloud-run/renderer.js +0 -86
  200. package/dist/commands/cloud-run/renderer.js.map +0 -1
  201. package/dist/commands/cloud-run/types.d.ts +0 -50
  202. package/dist/commands/cloud-run/types.js +0 -5
  203. package/dist/commands/cloud-run/types.js.map +0 -1
  204. package/dist/commands/cloud-run/uninstrument.d.ts +0 -21
  205. package/dist/commands/cloud-run/uninstrument.js +0 -186
  206. package/dist/commands/cloud-run/uninstrument.js.map +0 -1
  207. package/dist/commands/cloud-run/utils.d.ts +0 -15
  208. package/dist/commands/cloud-run/utils.js +0 -110
  209. package/dist/commands/cloud-run/utils.js.map +0 -1
  210. package/dist/commands/deployment/api.d.ts +0 -2
  211. package/dist/commands/deployment/api.js +0 -46
  212. package/dist/commands/deployment/api.js.map +0 -1
  213. package/dist/commands/deployment/cli.d.ts +0 -1
  214. package/dist/commands/deployment/cli.js +0 -13
  215. package/dist/commands/deployment/cli.js.map +0 -1
  216. package/dist/commands/deployment/constants.d.ts +0 -8
  217. package/dist/commands/deployment/constants.js +0 -12
  218. package/dist/commands/deployment/constants.js.map +0 -1
  219. package/dist/commands/deployment/correlate-image.d.ts +0 -15
  220. package/dist/commands/deployment/correlate-image.js +0 -121
  221. package/dist/commands/deployment/correlate-image.js.map +0 -1
  222. package/dist/commands/deployment/correlate.d.ts +0 -22
  223. package/dist/commands/deployment/correlate.js +0 -185
  224. package/dist/commands/deployment/correlate.js.map +0 -1
  225. package/dist/commands/deployment/gate.d.ts +0 -33
  226. package/dist/commands/deployment/gate.js +0 -340
  227. package/dist/commands/deployment/gate.js.map +0 -1
  228. package/dist/commands/deployment/interfaces.d.ts +0 -43
  229. package/dist/commands/deployment/interfaces.js +0 -3
  230. package/dist/commands/deployment/interfaces.js.map +0 -1
  231. package/dist/commands/deployment/mark.d.ts +0 -21
  232. package/dist/commands/deployment/mark.js +0 -115
  233. package/dist/commands/deployment/mark.js.map +0 -1
  234. package/dist/commands/dora/api.d.ts +0 -8
  235. package/dist/commands/dora/api.js +0 -58
  236. package/dist/commands/dora/api.js.map +0 -1
  237. package/dist/commands/dora/cli.d.ts +0 -1
  238. package/dist/commands/dora/cli.js +0 -5
  239. package/dist/commands/dora/cli.js.map +0 -1
  240. package/dist/commands/dora/deployment.d.ts +0 -28
  241. package/dist/commands/dora/deployment.js +0 -235
  242. package/dist/commands/dora/deployment.js.map +0 -1
  243. package/dist/commands/dora/interfaces.d.ts +0 -18
  244. package/dist/commands/dora/interfaces.js +0 -3
  245. package/dist/commands/dora/interfaces.js.map +0 -1
  246. package/dist/commands/dora/renderer.d.ts +0 -8
  247. package/dist/commands/dora/renderer.js +0 -24
  248. package/dist/commands/dora/renderer.js.map +0 -1
  249. package/dist/commands/gate/api.d.ts +0 -7
  250. package/dist/commands/gate/api.js +0 -49
  251. package/dist/commands/gate/api.js.map +0 -1
  252. package/dist/commands/gate/cli.d.ts +0 -1
  253. package/dist/commands/gate/cli.js +0 -5
  254. package/dist/commands/gate/cli.js.map +0 -1
  255. package/dist/commands/gate/evaluate.d.ts +0 -35
  256. package/dist/commands/gate/evaluate.js +0 -266
  257. package/dist/commands/gate/evaluate.js.map +0 -1
  258. package/dist/commands/gate/interfaces.d.ts +0 -40
  259. package/dist/commands/gate/interfaces.js +0 -3
  260. package/dist/commands/gate/interfaces.js.map +0 -1
  261. package/dist/commands/gate/renderer.d.ts +0 -11
  262. package/dist/commands/gate/renderer.js +0 -126
  263. package/dist/commands/gate/renderer.js.map +0 -1
  264. package/dist/commands/gate/utils.d.ts +0 -14
  265. package/dist/commands/gate/utils.js +0 -71
  266. package/dist/commands/gate/utils.js.map +0 -1
  267. package/dist/commands/git-metadata/api.d.ts +0 -3
  268. package/dist/commands/git-metadata/api.js +0 -13
  269. package/dist/commands/git-metadata/api.js.map +0 -1
  270. package/dist/commands/git-metadata/cli.d.ts +0 -1
  271. package/dist/commands/git-metadata/cli.js +0 -5
  272. package/dist/commands/git-metadata/cli.js.map +0 -1
  273. package/dist/commands/git-metadata/git.d.ts +0 -18
  274. package/dist/commands/git-metadata/git.js +0 -188
  275. package/dist/commands/git-metadata/git.js.map +0 -1
  276. package/dist/commands/git-metadata/gitdb.d.ts +0 -7
  277. package/dist/commands/git-metadata/gitdb.js +0 -334
  278. package/dist/commands/git-metadata/gitdb.js.map +0 -1
  279. package/dist/commands/git-metadata/index.d.ts +0 -1
  280. package/dist/commands/git-metadata/index.js +0 -18
  281. package/dist/commands/git-metadata/index.js.map +0 -1
  282. package/dist/commands/git-metadata/interfaces.d.ts +0 -10
  283. package/dist/commands/git-metadata/interfaces.js +0 -56
  284. package/dist/commands/git-metadata/interfaces.js.map +0 -1
  285. package/dist/commands/git-metadata/library.d.ts +0 -7
  286. package/dist/commands/git-metadata/library.js +0 -102
  287. package/dist/commands/git-metadata/library.js.map +0 -1
  288. package/dist/commands/git-metadata/renderer.d.ts +0 -7
  289. package/dist/commands/git-metadata/renderer.js +0 -29
  290. package/dist/commands/git-metadata/renderer.js.map +0 -1
  291. package/dist/commands/git-metadata/upload.d.ts +0 -20
  292. package/dist/commands/git-metadata/upload.js +0 -209
  293. package/dist/commands/git-metadata/upload.js.map +0 -1
  294. package/dist/commands/lambda/cli.d.ts +0 -1
  295. package/dist/commands/lambda/cli.js +0 -7
  296. package/dist/commands/lambda/cli.js.map +0 -1
  297. package/dist/commands/lambda/constants.d.ts +0 -87
  298. package/dist/commands/lambda/constants.js +0 -159
  299. package/dist/commands/lambda/constants.js.map +0 -1
  300. package/dist/commands/lambda/flare.d.ts +0 -102
  301. package/dist/commands/lambda/flare.js +0 -685
  302. package/dist/commands/lambda/flare.js.map +0 -1
  303. package/dist/commands/lambda/functions/commons.d.ts +0 -131
  304. package/dist/commands/lambda/functions/commons.js +0 -473
  305. package/dist/commands/lambda/functions/commons.js.map +0 -1
  306. package/dist/commands/lambda/functions/instrument.d.ts +0 -7
  307. package/dist/commands/lambda/functions/instrument.js +0 -271
  308. package/dist/commands/lambda/functions/instrument.js.map +0 -1
  309. package/dist/commands/lambda/functions/uninstrument.d.ts +0 -7
  310. package/dist/commands/lambda/functions/uninstrument.js +0 -156
  311. package/dist/commands/lambda/functions/uninstrument.js.map +0 -1
  312. package/dist/commands/lambda/functions/versionChecker.d.ts +0 -3
  313. package/dist/commands/lambda/functions/versionChecker.js +0 -38
  314. package/dist/commands/lambda/functions/versionChecker.js.map +0 -1
  315. package/dist/commands/lambda/instrument.d.ts +0 -41
  316. package/dist/commands/lambda/instrument.js +0 -439
  317. package/dist/commands/lambda/instrument.js.map +0 -1
  318. package/dist/commands/lambda/interfaces.d.ts +0 -91
  319. package/dist/commands/lambda/interfaces.js +0 -3
  320. package/dist/commands/lambda/interfaces.js.map +0 -1
  321. package/dist/commands/lambda/loggroup.d.ts +0 -17
  322. package/dist/commands/lambda/loggroup.js +0 -140
  323. package/dist/commands/lambda/loggroup.js.map +0 -1
  324. package/dist/commands/lambda/prompt.d.ts +0 -12
  325. package/dist/commands/lambda/prompt.js +0 -265
  326. package/dist/commands/lambda/prompt.js.map +0 -1
  327. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.d.ts +0 -2
  328. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.js +0 -11
  329. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.js.map +0 -1
  330. package/dist/commands/lambda/renderers/common-renderer.d.ts +0 -16
  331. package/dist/commands/lambda/renderers/common-renderer.js +0 -23
  332. package/dist/commands/lambda/renderers/common-renderer.js.map +0 -1
  333. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.d.ts +0 -397
  334. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.js +0 -506
  335. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.js.map +0 -1
  336. package/dist/commands/lambda/tags.d.ts +0 -8
  337. package/dist/commands/lambda/tags.js +0 -74
  338. package/dist/commands/lambda/tags.js.map +0 -1
  339. package/dist/commands/lambda/uninstrument.d.ts +0 -37
  340. package/dist/commands/lambda/uninstrument.js +0 -296
  341. package/dist/commands/lambda/uninstrument.js.map +0 -1
  342. package/dist/commands/sarif/api.d.ts +0 -7
  343. package/dist/commands/sarif/api.js +0 -49
  344. package/dist/commands/sarif/api.js.map +0 -1
  345. package/dist/commands/sarif/cli.d.ts +0 -1
  346. package/dist/commands/sarif/cli.js +0 -5
  347. package/dist/commands/sarif/cli.js.map +0 -1
  348. package/dist/commands/sarif/interfaces.d.ts +0 -12
  349. package/dist/commands/sarif/interfaces.js +0 -3
  350. package/dist/commands/sarif/interfaces.js.map +0 -1
  351. package/dist/commands/sarif/json-schema/sarif-schema-2.1.0.json +0 -2885
  352. package/dist/commands/sarif/renderer.d.ts +0 -11
  353. package/dist/commands/sarif/renderer.js +0 -97
  354. package/dist/commands/sarif/renderer.js.map +0 -1
  355. package/dist/commands/sarif/upload.d.ts +0 -22
  356. package/dist/commands/sarif/upload.js +0 -210
  357. package/dist/commands/sarif/upload.js.map +0 -1
  358. package/dist/commands/sarif/utils.d.ts +0 -21
  359. package/dist/commands/sarif/utils.js +0 -79
  360. package/dist/commands/sarif/utils.js.map +0 -1
  361. package/dist/commands/sarif/validation.d.ts +0 -16
  362. package/dist/commands/sarif/validation.js +0 -102
  363. package/dist/commands/sarif/validation.js.map +0 -1
  364. package/dist/commands/sbom/api.d.ts +0 -7
  365. package/dist/commands/sbom/api.js +0 -54
  366. package/dist/commands/sbom/api.js.map +0 -1
  367. package/dist/commands/sbom/cli.d.ts +0 -1
  368. package/dist/commands/sbom/cli.js +0 -5
  369. package/dist/commands/sbom/cli.js.map +0 -1
  370. package/dist/commands/sbom/constants.d.ts +0 -7
  371. package/dist/commands/sbom/constants.js +0 -11
  372. package/dist/commands/sbom/constants.js.map +0 -1
  373. package/dist/commands/sbom/json-schema/cyclonedx/bom-1.4.schema.json +0 -1687
  374. package/dist/commands/sbom/json-schema/cyclonedx/bom-1.5.schema.json +0 -3799
  375. package/dist/commands/sbom/json-schema/cyclonedx/bom-1.6.schema.json +0 -5699
  376. package/dist/commands/sbom/json-schema/jsf/jsf-0.82.schema.json +0 -244
  377. package/dist/commands/sbom/json-schema/spdx/spdx.schema.json +0 -737
  378. package/dist/commands/sbom/language.d.ts +0 -2
  379. package/dist/commands/sbom/language.js +0 -46
  380. package/dist/commands/sbom/language.js.map +0 -1
  381. package/dist/commands/sbom/payload.d.ts +0 -3
  382. package/dist/commands/sbom/payload.js +0 -344
  383. package/dist/commands/sbom/payload.js.map +0 -1
  384. package/dist/commands/sbom/renderer.d.ts +0 -9
  385. package/dist/commands/sbom/renderer.js +0 -99
  386. package/dist/commands/sbom/renderer.js.map +0 -1
  387. package/dist/commands/sbom/types.d.ts +0 -135
  388. package/dist/commands/sbom/types.js +0 -56
  389. package/dist/commands/sbom/types.js.map +0 -1
  390. package/dist/commands/sbom/upload.d.ts +0 -21
  391. package/dist/commands/sbom/upload.js +0 -153
  392. package/dist/commands/sbom/upload.js.map +0 -1
  393. package/dist/commands/sbom/validation.d.ts +0 -27
  394. package/dist/commands/sbom/validation.js +0 -162
  395. package/dist/commands/sbom/validation.js.map +0 -1
  396. package/dist/commands/stepfunctions/awsCommands.d.ts +0 -18
  397. package/dist/commands/stepfunctions/awsCommands.js +0 -244
  398. package/dist/commands/stepfunctions/awsCommands.js.map +0 -1
  399. package/dist/commands/stepfunctions/cli.d.ts +0 -1
  400. package/dist/commands/stepfunctions/cli.js +0 -6
  401. package/dist/commands/stepfunctions/cli.js.map +0 -1
  402. package/dist/commands/stepfunctions/constants.d.ts +0 -3
  403. package/dist/commands/stepfunctions/constants.js +0 -7
  404. package/dist/commands/stepfunctions/constants.js.map +0 -1
  405. package/dist/commands/stepfunctions/helpers.d.ts +0 -51
  406. package/dist/commands/stepfunctions/helpers.js +0 -232
  407. package/dist/commands/stepfunctions/helpers.js.map +0 -1
  408. package/dist/commands/stepfunctions/instrument.d.ts +0 -16
  409. package/dist/commands/stepfunctions/instrument.js +0 -264
  410. package/dist/commands/stepfunctions/instrument.js.map +0 -1
  411. package/dist/commands/stepfunctions/uninstrument.d.ts +0 -15
  412. package/dist/commands/stepfunctions/uninstrument.js +0 -151
  413. package/dist/commands/stepfunctions/uninstrument.js.map +0 -1
  414. package/dist/commands/synthetics/api.d.ts +0 -52
  415. package/dist/commands/synthetics/api.js +0 -333
  416. package/dist/commands/synthetics/api.js.map +0 -1
  417. package/dist/commands/synthetics/base-command.d.ts +0 -35
  418. package/dist/commands/synthetics/base-command.js +0 -132
  419. package/dist/commands/synthetics/base-command.js.map +0 -1
  420. package/dist/commands/synthetics/batch.d.ts +0 -9
  421. package/dist/commands/synthetics/batch.js +0 -325
  422. package/dist/commands/synthetics/batch.js.map +0 -1
  423. package/dist/commands/synthetics/build-and-test.d.ts +0 -25
  424. package/dist/commands/synthetics/build-and-test.js +0 -196
  425. package/dist/commands/synthetics/build-and-test.js.map +0 -1
  426. package/dist/commands/synthetics/cli.d.ts +0 -1
  427. package/dist/commands/synthetics/cli.js +0 -8
  428. package/dist/commands/synthetics/cli.js.map +0 -1
  429. package/dist/commands/synthetics/deploy-tests-command.d.ts +0 -15
  430. package/dist/commands/synthetics/deploy-tests-command.js +0 -78
  431. package/dist/commands/synthetics/deploy-tests-command.js.map +0 -1
  432. package/dist/commands/synthetics/deploy-tests-lib.d.ts +0 -2
  433. package/dist/commands/synthetics/deploy-tests-lib.js +0 -92
  434. package/dist/commands/synthetics/deploy-tests-lib.js.map +0 -1
  435. package/dist/commands/synthetics/errors.d.ts +0 -21
  436. package/dist/commands/synthetics/errors.js +0 -54
  437. package/dist/commands/synthetics/errors.js.map +0 -1
  438. package/dist/commands/synthetics/import-tests-command.d.ts +0 -14
  439. package/dist/commands/synthetics/import-tests-command.js +0 -75
  440. package/dist/commands/synthetics/import-tests-command.js.map +0 -1
  441. package/dist/commands/synthetics/import-tests-lib.d.ts +0 -2
  442. package/dist/commands/synthetics/import-tests-lib.js +0 -71
  443. package/dist/commands/synthetics/import-tests-lib.js.map +0 -1
  444. package/dist/commands/synthetics/index.d.ts +0 -7
  445. package/dist/commands/synthetics/index.js +0 -44
  446. package/dist/commands/synthetics/index.js.map +0 -1
  447. package/dist/commands/synthetics/interfaces.d.ts +0 -739
  448. package/dist/commands/synthetics/interfaces.js +0 -27
  449. package/dist/commands/synthetics/interfaces.js.map +0 -1
  450. package/dist/commands/synthetics/local-test-definition.d.ts +0 -2
  451. package/dist/commands/synthetics/local-test-definition.js +0 -16
  452. package/dist/commands/synthetics/local-test-definition.js.map +0 -1
  453. package/dist/commands/synthetics/mobile.d.ts +0 -28
  454. package/dist/commands/synthetics/mobile.js +0 -275
  455. package/dist/commands/synthetics/mobile.js.map +0 -1
  456. package/dist/commands/synthetics/multilocator.d.ts +0 -2
  457. package/dist/commands/synthetics/multilocator.js +0 -88
  458. package/dist/commands/synthetics/multilocator.js.map +0 -1
  459. package/dist/commands/synthetics/reporters/constants.d.ts +0 -6
  460. package/dist/commands/synthetics/reporters/constants.js +0 -14
  461. package/dist/commands/synthetics/reporters/constants.js.map +0 -1
  462. package/dist/commands/synthetics/reporters/default.d.ts +0 -31
  463. package/dist/commands/synthetics/reporters/default.js +0 -416
  464. package/dist/commands/synthetics/reporters/default.js.map +0 -1
  465. package/dist/commands/synthetics/reporters/junit.d.ts +0 -100
  466. package/dist/commands/synthetics/reporters/junit.js +0 -425
  467. package/dist/commands/synthetics/reporters/junit.js.map +0 -1
  468. package/dist/commands/synthetics/reporters/mobile/app-upload.d.ts +0 -15
  469. package/dist/commands/synthetics/reporters/mobile/app-upload.js +0 -54
  470. package/dist/commands/synthetics/reporters/mobile/app-upload.js.map +0 -1
  471. package/dist/commands/synthetics/run-tests-command.d.ts +0 -31
  472. package/dist/commands/synthetics/run-tests-command.js +0 -335
  473. package/dist/commands/synthetics/run-tests-command.js.map +0 -1
  474. package/dist/commands/synthetics/run-tests-lib.d.ts +0 -21
  475. package/dist/commands/synthetics/run-tests-lib.js +0 -247
  476. package/dist/commands/synthetics/run-tests-lib.js.map +0 -1
  477. package/dist/commands/synthetics/test.d.ts +0 -30
  478. package/dist/commands/synthetics/test.js +0 -204
  479. package/dist/commands/synthetics/test.js.map +0 -1
  480. package/dist/commands/synthetics/tunnel/crypto.d.ts +0 -6
  481. package/dist/commands/synthetics/tunnel/crypto.js +0 -48
  482. package/dist/commands/synthetics/tunnel/crypto.js.map +0 -1
  483. package/dist/commands/synthetics/tunnel/index.d.ts +0 -1
  484. package/dist/commands/synthetics/tunnel/index.js +0 -6
  485. package/dist/commands/synthetics/tunnel/index.js.map +0 -1
  486. package/dist/commands/synthetics/tunnel/tunnel.d.ts +0 -49
  487. package/dist/commands/synthetics/tunnel/tunnel.js +0 -329
  488. package/dist/commands/synthetics/tunnel/tunnel.js.map +0 -1
  489. package/dist/commands/synthetics/tunnel/websocket.d.ts +0 -39
  490. package/dist/commands/synthetics/tunnel/websocket.js +0 -154
  491. package/dist/commands/synthetics/tunnel/websocket.js.map +0 -1
  492. package/dist/commands/synthetics/upload-application-command.d.ts +0 -15
  493. package/dist/commands/synthetics/upload-application-command.js +0 -97
  494. package/dist/commands/synthetics/upload-application-command.js.map +0 -1
  495. package/dist/commands/synthetics/utils/internal.d.ts +0 -52
  496. package/dist/commands/synthetics/utils/internal.js +0 -297
  497. package/dist/commands/synthetics/utils/internal.js.map +0 -1
  498. package/dist/commands/synthetics/utils/public.d.ts +0 -76
  499. package/dist/commands/synthetics/utils/public.js +0 -509
  500. package/dist/commands/synthetics/utils/public.js.map +0 -1
  501. package/dist/commands/tag/cli.d.ts +0 -1
  502. package/dist/commands/tag/cli.js +0 -5
  503. package/dist/commands/tag/cli.js.map +0 -1
  504. package/dist/commands/tag/tag.d.ts +0 -20
  505. package/dist/commands/tag/tag.js +0 -162
  506. package/dist/commands/tag/tag.js.map +0 -1
  507. package/dist/constants.d.ts +0 -38
  508. package/dist/constants.js +0 -104
  509. package/dist/constants.js.map +0 -1
  510. package/dist/helpers/api.d.ts +0 -5
  511. package/dist/helpers/api.js +0 -16
  512. package/dist/helpers/api.js.map +0 -1
  513. package/dist/helpers/apikey.d.ts +0 -15
  514. package/dist/helpers/apikey.js +0 -85
  515. package/dist/helpers/apikey.js.map +0 -1
  516. package/dist/helpers/app.d.ts +0 -3
  517. package/dist/helpers/app.js +0 -23
  518. package/dist/helpers/app.js.map +0 -1
  519. package/dist/helpers/base-intake-url.d.ts +0 -1
  520. package/dist/helpers/base-intake-url.js +0 -14
  521. package/dist/helpers/base-intake-url.js.map +0 -1
  522. package/dist/helpers/ci.d.ts +0 -71
  523. package/dist/helpers/ci.js +0 -671
  524. package/dist/helpers/ci.js.map +0 -1
  525. package/dist/helpers/concurrency.d.ts +0 -1
  526. package/dist/helpers/concurrency.js +0 -45
  527. package/dist/helpers/concurrency.js.map +0 -1
  528. package/dist/helpers/config.d.ts +0 -5
  529. package/dist/helpers/config.js +0 -3
  530. package/dist/helpers/config.js.map +0 -1
  531. package/dist/helpers/env.d.ts +0 -6
  532. package/dist/helpers/env.js +0 -50
  533. package/dist/helpers/env.js.map +0 -1
  534. package/dist/helpers/errors.d.ts +0 -2
  535. package/dist/helpers/errors.js +0 -7
  536. package/dist/helpers/errors.js.map +0 -1
  537. package/dist/helpers/file-finder.d.ts +0 -20
  538. package/dist/helpers/file-finder.js +0 -203
  539. package/dist/helpers/file-finder.js.map +0 -1
  540. package/dist/helpers/filereader.d.ts +0 -21
  541. package/dist/helpers/filereader.js +0 -59
  542. package/dist/helpers/filereader.js.map +0 -1
  543. package/dist/helpers/fips.d.ts +0 -1
  544. package/dist/helpers/fips.js +0 -24
  545. package/dist/helpers/fips.js.map +0 -1
  546. package/dist/helpers/flare.d.ts +0 -43
  547. package/dist/helpers/flare.js +0 -204
  548. package/dist/helpers/flare.js.map +0 -1
  549. package/dist/helpers/formatting.d.ts +0 -5
  550. package/dist/helpers/formatting.js +0 -13
  551. package/dist/helpers/formatting.js.map +0 -1
  552. package/dist/helpers/fs.d.ts +0 -31
  553. package/dist/helpers/fs.js +0 -117
  554. package/dist/helpers/fs.js.map +0 -1
  555. package/dist/helpers/git/format-git-sourcemaps-data.d.ts +0 -16
  556. package/dist/helpers/git/format-git-sourcemaps-data.js +0 -183
  557. package/dist/helpers/git/format-git-sourcemaps-data.js.map +0 -1
  558. package/dist/helpers/git/format-git-span-data.d.ts +0 -2
  559. package/dist/helpers/git/format-git-span-data.js +0 -54
  560. package/dist/helpers/git/format-git-span-data.js.map +0 -1
  561. package/dist/helpers/git/get-git-data.d.ts +0 -13
  562. package/dist/helpers/git/get-git-data.js +0 -86
  563. package/dist/helpers/git/get-git-data.js.map +0 -1
  564. package/dist/helpers/git/instrument-helpers.d.ts +0 -10
  565. package/dist/helpers/git/instrument-helpers.js +0 -79
  566. package/dist/helpers/git/instrument-helpers.js.map +0 -1
  567. package/dist/helpers/glob.d.ts +0 -12
  568. package/dist/helpers/glob.js +0 -70
  569. package/dist/helpers/glob.js.map +0 -1
  570. package/dist/helpers/id.d.ts +0 -2
  571. package/dist/helpers/id.js +0 -53
  572. package/dist/helpers/id.js.map +0 -1
  573. package/dist/helpers/interfaces.d.ts +0 -59
  574. package/dist/helpers/interfaces.js +0 -3
  575. package/dist/helpers/interfaces.js.map +0 -1
  576. package/dist/helpers/logger.d.ts +0 -18
  577. package/dist/helpers/logger.js +0 -52
  578. package/dist/helpers/logger.js.map +0 -1
  579. package/dist/helpers/metrics.d.ts +0 -12
  580. package/dist/helpers/metrics.js +0 -36
  581. package/dist/helpers/metrics.js.map +0 -1
  582. package/dist/helpers/plist.d.ts +0 -44
  583. package/dist/helpers/plist.js +0 -93
  584. package/dist/helpers/plist.js.map +0 -1
  585. package/dist/helpers/prompt.d.ts +0 -9
  586. package/dist/helpers/prompt.js +0 -58
  587. package/dist/helpers/prompt.js.map +0 -1
  588. package/dist/helpers/renderer.d.ts +0 -60
  589. package/dist/helpers/renderer.js +0 -98
  590. package/dist/helpers/renderer.js.map +0 -1
  591. package/dist/helpers/retry.d.ts +0 -2
  592. package/dist/helpers/retry.js +0 -40
  593. package/dist/helpers/retry.js.map +0 -1
  594. package/dist/helpers/tags.d.ts +0 -82
  595. package/dist/helpers/tags.js +0 -244
  596. package/dist/helpers/tags.js.map +0 -1
  597. package/dist/helpers/upload.d.ts +0 -51
  598. package/dist/helpers/upload.js +0 -86
  599. package/dist/helpers/upload.js.map +0 -1
  600. package/dist/helpers/user-provided-git.d.ts +0 -2
  601. package/dist/helpers/user-provided-git.js +0 -49
  602. package/dist/helpers/user-provided-git.js.map +0 -1
  603. package/dist/helpers/utils.d.ts +0 -84
  604. package/dist/helpers/utils.js +0 -340
  605. package/dist/helpers/utils.js.map +0 -1
  606. package/dist/helpers/validation.d.ts +0 -19
  607. package/dist/helpers/validation.js +0 -77
  608. package/dist/helpers/validation.js.map +0 -1
  609. package/dist/helpers/version.d.ts +0 -5
  610. package/dist/helpers/version.js +0 -25
  611. package/dist/helpers/version.js.map +0 -1
@@ -1,329 +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
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Tunnel = void 0;
13
- const crypto_1 = require("crypto");
14
- const net_1 = require("net");
15
- const stream_1 = require("stream");
16
- const ssh2_1 = require("ssh2");
17
- const yamux_js_1 = require("yamux-js");
18
- const crypto_2 = require("./crypto");
19
- const websocket_1 = require("./websocket");
20
- /**
21
- * Use `DEBUG=synthetics:tunnel` to enable debug logs.
22
- */
23
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires, @typescript-eslint/no-unsafe-call
24
- const debug = require('debug')('synthetics:tunnel');
25
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires -- SW-1310
26
- const SSH_CONSTANTS = require('ssh2/lib/protocol/constants');
27
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires -- SW-1310
28
- const { KexInit } = require('ssh2/lib/protocol/kex');
29
- class Tunnel {
30
- constructor(url, testIDs, proxyAgent, reporter) {
31
- this.url = url;
32
- this.testIDs = testIDs;
33
- this.reporter = reporter;
34
- this.FORWARDING_TIMEOUT = 40000;
35
- /** Used to catch SIGINT only once. */
36
- this.started = false;
37
- /** Used to log "Successfully connected" only once. */
38
- this.connected = false;
39
- this.forwardedSockets = new Set();
40
- this.handleSIGINT = () => {
41
- var _a;
42
- if (this.started) {
43
- // The tunnel is connected, so we stop it gracefully – all tests will be aborted.
44
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.log('Closing tunnel and waiting for results... (press Ctrl+C again to force quit)');
45
- void this.stop();
46
- }
47
- else {
48
- // The tunnel was already closed and we received a second Ctrl+C.
49
- // Removing the listener automatically stops the process.
50
- process.removeListener('SIGINT', this.handleSIGINT);
51
- }
52
- };
53
- // Setup SSH
54
- const { privateKey: hostPrivateKey } = (0, crypto_2.generateOpenSSHKeys)();
55
- const parsedHostPrivateKey = (0, crypto_2.parseSSHKey)(hostPrivateKey);
56
- const { publicKey, privateKey } = (0, crypto_2.generateOpenSSHKeys)();
57
- this.publicKey = (0, crypto_2.parseSSHKey)(publicKey);
58
- this.privateKey = privateKey;
59
- this.sshConfig = {
60
- algorithms: {
61
- serverHostKey: [parsedHostPrivateKey.type],
62
- },
63
- // Greatly increase highWaterMark (32kb -> 255kb) to avoid hanging with large requests
64
- highWaterMark: 255 * 1024,
65
- hostKeys: [hostPrivateKey],
66
- };
67
- this.ws = new websocket_1.WebSocket(this.url, proxyAgent);
68
- }
69
- /**
70
- * keepAlive will return a promise that tracks the state of the tunnel (and reject in case of error)
71
- */
72
- keepAlive() {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- if (!this.ws) {
75
- throw new Error('No WebSocket connection');
76
- }
77
- return this.ws.keepAlive();
78
- });
79
- }
80
- /**
81
- * start the tunnel:
82
- * - get the pre-signed URL to connect to the tunnel service
83
- * - Set up SSH
84
- * - establish a WebSocket connection to the tunnel service
85
- */
86
- start() {
87
- var _a, _b, _c;
88
- return __awaiter(this, void 0, void 0, function* () {
89
- this.started = true;
90
- process.addListener('SIGINT', this.handleSIGINT);
91
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.log(`Opening tunnel for ${this.testIDs.length} tests…`);
92
- (_b = this.reporter) === null || _b === void 0 ? void 0 : _b.log('Generating encryption key, setting up SSH and opening WebSocket connection…');
93
- try {
94
- // Establish a WebSocket connection to the tunnel service
95
- yield this.ws.connect();
96
- // @todo: in case of reconnect, add tunnel ID to WebSocket URL to re-use the same tunnel (in the tunnel service)
97
- const connectionInfo = yield this.forwardWebSocketToSSH();
98
- return connectionInfo;
99
- }
100
- catch (err) {
101
- (_c = this.reporter) === null || _c === void 0 ? void 0 : _c.error('Tunnel setup failed, cleaning up and exiting…');
102
- yield this.stop(); // Clean up
103
- throw err;
104
- }
105
- });
106
- }
107
- /**
108
- * stop the tunnel
109
- */
110
- stop() {
111
- var _a;
112
- return __awaiter(this, void 0, void 0, function* () {
113
- this.connected = false;
114
- this.forwardedSockets.forEach((socket) => {
115
- if (!!socket) {
116
- socket.destroy();
117
- }
118
- });
119
- yield this.ws.close();
120
- if (this.started) {
121
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.log('Tunnel closed.');
122
- this.started = false;
123
- }
124
- });
125
- }
126
- // Authenticate SSH with key authentication - username should be the test ID
127
- authenticateSSHConnection(ctx) {
128
- var _a;
129
- const allowedUsers = this.testIDs.map((testId) => Buffer.from(testId));
130
- // Ensure username is allowed
131
- const user = Buffer.from(ctx.username);
132
- if (!allowedUsers.some((allowedUser) => user.length === allowedUser.length && (0, crypto_1.timingSafeEqual)(user, allowedUser))) {
133
- return ctx.reject();
134
- }
135
- // Only allow key authentication
136
- if (ctx.method !== 'publickey') {
137
- return ctx.reject();
138
- }
139
- const allowedPubSSHKey = Buffer.from(this.publicKey.getPublicSSH());
140
- if (ctx.key.algo !== this.publicKey.type ||
141
- ctx.key.data.length !== allowedPubSSHKey.length ||
142
- !(0, crypto_1.timingSafeEqual)(ctx.key.data, allowedPubSSHKey) ||
143
- (ctx.signature && ctx.blob && !this.publicKey.verify(ctx.blob, ctx.signature))) {
144
- // Invalid key authentication
145
- return ctx.reject();
146
- }
147
- // A connection without a signature is only to check for public key validity
148
- if (!ctx.signature) {
149
- return ctx.accept();
150
- }
151
- // Username is allowed and key authentication was successful
152
- if (!this.connected) {
153
- // Limit to one log per tunnel
154
- this.connected = true;
155
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.log('Successfully connected');
156
- }
157
- ctx.accept();
158
- }
159
- forwardProxiedPacketsFromSSH(client) {
160
- client
161
- .on('session', (accept) => {
162
- accept().on('close', () => {
163
- client.end();
164
- });
165
- })
166
- .on('tcpip', (accept, reject, { destIP, destPort }) => {
167
- // Forward packets
168
- // See https://github.com/mscdex/ssh2/issues/479#issuecomment-250416559
169
- let src;
170
- const dest = new net_1.Socket();
171
- dest.setTimeout(this.FORWARDING_TIMEOUT);
172
- this.forwardedSockets.add(dest);
173
- dest.on('timeout', () => {
174
- debug(`Connection timeout (${destIP})`);
175
- if (src) {
176
- src.destroy();
177
- }
178
- else {
179
- reject();
180
- }
181
- this.forwardedSockets.delete(dest);
182
- dest.end();
183
- dest.destroy();
184
- });
185
- dest.on('connect', () => {
186
- src = accept();
187
- if (!src) {
188
- return dest.end();
189
- }
190
- (0, stream_1.pipeline)([dest, src], () => this.forwardedSockets.delete(dest));
191
- (0, stream_1.pipeline)([src, dest], () => this.forwardedSockets.delete(dest));
192
- src.on('close', () => {
193
- dest.end();
194
- dest.destroy();
195
- });
196
- });
197
- dest.on('error', (error) => {
198
- var _a, _b;
199
- if (src) {
200
- if (error.code !== 'ERR_STREAM_PREMATURE_CLOSE') {
201
- debug(`Error on opened connection (${destIP}): ${error.code}`);
202
- }
203
- src.close();
204
- }
205
- else {
206
- if ('code' in error && error.code === 'ENOTFOUND') {
207
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.warn(`Unable to resolve host (${destIP})`);
208
- }
209
- else {
210
- (_b = this.reporter) === null || _b === void 0 ? void 0 : _b.warn(`Connection error (${destIP}): ${error.code}`);
211
- }
212
- reject();
213
- this.forwardedSockets.delete(dest);
214
- dest.end();
215
- dest.destroy();
216
- }
217
- });
218
- dest.on('close', () => {
219
- if (src) {
220
- src.close();
221
- }
222
- else {
223
- reject();
224
- }
225
- this.forwardedSockets.delete(dest);
226
- });
227
- dest.connect(destPort, destIP);
228
- })
229
- .on('request', (accept, reject, name, info) => {
230
- if (accept) {
231
- accept();
232
- }
233
- });
234
- }
235
- forwardWebSocketToSSH() {
236
- var _a;
237
- return __awaiter(this, void 0, void 0, function* () {
238
- const connectionInfo = yield this.getConnectionInfo();
239
- (_a = this.reporter) === null || _a === void 0 ? void 0 : _a.log(`Websocket connection to tunnel ${connectionInfo.id} opened, proxy is ready!`);
240
- // Stop any existing multiplexing
241
- if (this.multiplexer) {
242
- this.multiplexer.close();
243
- }
244
- // Set up multiplexing
245
- const multiplexerConfig = {
246
- // Increase maximum backlog size to more easily handle
247
- // running multiple large browser tests in parallel.
248
- acceptBacklog: 2048,
249
- enableKeepAlive: false,
250
- };
251
- this.multiplexer = new yamux_js_1.Server((stream) => {
252
- stream.on('error', (error) => {
253
- debug(`Error in multiplexing: ${error}`);
254
- });
255
- void this.processSSHStream(stream);
256
- }, multiplexerConfig);
257
- // Pipe WebSocket to multiplexing
258
- const duplex = this.ws.duplex();
259
- this.multiplexer.on('error', (error) => {
260
- debug(`Multiplexer error: ${error.message}`);
261
- });
262
- duplex.on('error', (error) => {
263
- debug(`Websocket error: ${error.message}`);
264
- });
265
- (0, stream_1.pipeline)(duplex, this.multiplexer, (err) => {
266
- if (err) {
267
- debug(`Error on duplex connection close: ${err}`);
268
- }
269
- });
270
- (0, stream_1.pipeline)(this.multiplexer, duplex, (err) => {
271
- if (err) {
272
- debug(`Error on Multiplexer connection close: ${err}`);
273
- }
274
- });
275
- return connectionInfo;
276
- });
277
- }
278
- getConnectionInfo() {
279
- return __awaiter(this, void 0, void 0, function* () {
280
- const rawConnectionInfo = yield this.ws.waitForFirstMessage();
281
- try {
282
- const connectionInfo = Object.assign({ privateKey: this.privateKey }, JSON.parse(rawConnectionInfo.toString()));
283
- return connectionInfo;
284
- }
285
- catch (_a) {
286
- throw new Error(`Unexpected response from tunnel service: ${rawConnectionInfo.toString()}\n`);
287
- }
288
- });
289
- }
290
- processSSHStream(stream) {
291
- return __awaiter(this, void 0, void 0, function* () {
292
- // Process SSH stream - see https://github.com/mscdex/ssh2/blob/v0.8.x/lib/server.js#L24
293
- const serverConfig = Object.assign(Object.assign({}, this.sshConfig), { keepaliveInterval: 0 });
294
- ssh2_1.Server.KEEPALIVE_CLIENT_INTERVAL = 0;
295
- const server = new ssh2_1.Server(serverConfig, () => {
296
- // 'connection' event listener is required otherwise connection wont proceed.
297
- });
298
- const { ident } = this.sshConfig;
299
- const hostKeys = { 'ecdsa-sha2-nistp256': (0, crypto_2.parseSSHKey)(this.sshConfig.hostKeys[0]) };
300
- const encryptionConfig = {
301
- cipher: SSH_CONSTANTS.DEFAULT_CIPHER,
302
- compress: SSH_CONSTANTS.DEFAULT_COMPRESSION,
303
- lang: [],
304
- mac: SSH_CONSTANTS.DEFAULT_MAC,
305
- };
306
- const algorithms = {
307
- cs: encryptionConfig,
308
- kex: SSH_CONSTANTS.DEFAULT_KEX,
309
- sc: encryptionConfig,
310
- serverHostKey: ['ecdsa-sha2-nistp256'],
311
- };
312
- const offer = new KexInit(algorithms);
313
- const clientConfig = Object.assign(Object.assign({}, this.sshConfig), { keepaliveInterval: 0 });
314
- // SW-1310: Typing does not include IncomingClient
315
- const client = new ssh2_1.Server.IncomingClient(stream, hostKeys, ident, offer, undefined, server, clientConfig);
316
- client
317
- .on('authentication', (ctx) => this.authenticateSSHConnection(ctx))
318
- .on('ready', () => this.forwardProxiedPacketsFromSSH(client))
319
- .on('close', () => {
320
- server.close();
321
- })
322
- .on('error', (err) => {
323
- debug(`SSH error in proxy: ${err.message}`);
324
- });
325
- });
326
- }
327
- }
328
- exports.Tunnel = Tunnel;
329
- //# sourceMappingURL=tunnel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../../../src/commands/synthetics/tunnel/tunnel.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- import { EventEmitter } from 'events';
4
- import type { ProxyAgent } from 'proxy-agent';
5
- import { default as WebSocketModule } from 'ws';
6
- export declare class WebSocket extends EventEmitter {
7
- private url;
8
- private proxyAgent;
9
- private firstMessage?;
10
- private keepAliveWebsocket?;
11
- private websocket?;
12
- constructor(url: string, proxyAgent: ProxyAgent | undefined);
13
- /**
14
- * close will terminate the WebSocket connection
15
- */
16
- close(gracefullyClose?: boolean): Promise<void>;
17
- /**
18
- * connect will start a WebSocket connection
19
- */
20
- connect(): Promise<void>;
21
- /**
22
- * duplex will create a duplex stream for the WS connection
23
- */
24
- duplex(): import("stream").Duplex;
25
- /**
26
- * keepAlive will return a promise to keep track of the tunnel connection
27
- */
28
- keepAlive(): Promise<void>;
29
- /**
30
- * on allows to listen for WebSocket messages
31
- */
32
- on(event: 'message', listener: (data: WebSocketModule.Data) => void): this;
33
- /**
34
- * once allows to listen for a WebSocket message
35
- */
36
- once(event: 'message', listener: (data: WebSocketModule.Data) => void): this;
37
- waitForFirstMessage(): Promise<WebSocketModule.Data>;
38
- private establishWebsocketConnection;
39
- }
@@ -1,154 +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.WebSocket = void 0;
36
- const events_1 = require("events");
37
- const ws_1 = __importStar(require("ws"));
38
- class WebSocket extends events_1.EventEmitter {
39
- constructor(url, proxyAgent) {
40
- super();
41
- this.url = url;
42
- this.proxyAgent = proxyAgent;
43
- }
44
- /**
45
- * close will terminate the WebSocket connection
46
- */
47
- close(gracefullyClose = true) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- if (this.websocket) {
50
- this.websocket.removeAllListeners();
51
- if (this.websocket.readyState === ws_1.default.OPEN) {
52
- if (gracefullyClose) {
53
- // Gracefully close the tunnel
54
- this.websocket.close();
55
- yield (0, events_1.once)(this.websocket, 'close');
56
- }
57
- // Clean up the underlying socket
58
- this.websocket.terminate();
59
- }
60
- this.websocket = undefined;
61
- }
62
- });
63
- }
64
- /**
65
- * connect will start a WebSocket connection
66
- */
67
- connect() {
68
- return __awaiter(this, void 0, void 0, function* () {
69
- // Open the connection or throw
70
- yield new Promise((resolve, reject) => this.establishWebsocketConnection(resolve, reject));
71
- });
72
- }
73
- /**
74
- * duplex will create a duplex stream for the WS connection
75
- */
76
- duplex() {
77
- if (!this.websocket) {
78
- throw new Error('You must start the WebSocket connection before calling duplex');
79
- }
80
- return (0, ws_1.createWebSocketStream)(this.websocket, {
81
- // Increase websocket buffer sizes from 16kb to 64kb.
82
- readableHighWaterMark: 64 * 1024,
83
- writableHighWaterMark: 64 * 1024,
84
- });
85
- }
86
- /**
87
- * keepAlive will return a promise to keep track of the tunnel connection
88
- */
89
- keepAlive() {
90
- if (!this.keepAliveWebsocket) {
91
- // Use an artificial promise to keep track of the connection state and reconnect if necessary
92
- this.keepAliveWebsocket = new Promise((resolve, reject) => this.establishWebsocketConnection(resolve, reject));
93
- }
94
- return this.keepAliveWebsocket;
95
- }
96
- /**
97
- * on allows to listen for WebSocket messages
98
- */
99
- on(event, listener) {
100
- if (!this.websocket) {
101
- throw new Error('You must start the WebSocket connection before listening to messages');
102
- }
103
- this.websocket.on(event, listener);
104
- return this;
105
- }
106
- /**
107
- * once allows to listen for a WebSocket message
108
- */
109
- once(event, listener) {
110
- if (!this.websocket) {
111
- throw new Error('You must start the WebSocket connection before listening to messages');
112
- }
113
- this.websocket.once(event, listener);
114
- return this;
115
- }
116
- waitForFirstMessage() {
117
- if (!this.firstMessage) {
118
- throw new Error('Websocket connection was not established before reading first message');
119
- }
120
- return this.firstMessage;
121
- }
122
- establishWebsocketConnection(resolve, reject) {
123
- if (!this.websocket) {
124
- const options = {
125
- agent: this.proxyAgent,
126
- };
127
- this.websocket = new ws_1.default(this.url, options);
128
- }
129
- this.firstMessage = new Promise((firstMessageResolve, firstMessageReject) => {
130
- if (!this.websocket) {
131
- firstMessageReject(Error('Unable to start websocket connection'));
132
- }
133
- else {
134
- this.websocket.once('message', firstMessageResolve);
135
- }
136
- });
137
- this.websocket.on('unexpected-response', (req, res) => {
138
- let body = '';
139
- res.on('readable', () => {
140
- body += res.read();
141
- });
142
- res.on('end', () => {
143
- reject(Error(`Got unexpected response in WebSocket connection (code: ${res.statusCode}): ${body}`));
144
- });
145
- req.end();
146
- res.destroy();
147
- });
148
- this.websocket.on('open', () => {
149
- resolve();
150
- });
151
- }
152
- }
153
- exports.WebSocket = WebSocket;
154
- //# sourceMappingURL=websocket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../../../src/commands/synthetics/tunnel/websocket.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { BaseCommand, RecursivePartial } from './base-command';
2
- import { UploadApplicationCommandConfig } from './interfaces';
3
- export declare class UploadApplicationCommand extends BaseCommand {
4
- static paths: string[][];
5
- static usage: import("clipanion").Usage;
6
- protected config: UploadApplicationCommandConfig;
7
- private mobileApplicationVersionFilePath;
8
- private mobileApplicationId;
9
- private versionName;
10
- private latest;
11
- static getDefaultConfig(): UploadApplicationCommandConfig;
12
- execute(): Promise<0 | 1>;
13
- protected resolveConfigFromEnv(): RecursivePartial<UploadApplicationCommandConfig>;
14
- protected resolveConfigFromCli(): RecursivePartial<UploadApplicationCommandConfig>;
15
- }
@@ -1,97 +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
- exports.UploadApplicationCommand = void 0;
16
- const chalk_1 = __importDefault(require("chalk"));
17
- const clipanion_1 = require("clipanion");
18
- const env_1 = require("../../helpers/env");
19
- const api_1 = require("./api");
20
- const base_command_1 = require("./base-command");
21
- const errors_1 = require("./errors");
22
- const mobile_1 = require("./mobile");
23
- const app_upload_1 = require("./reporters/mobile/app-upload");
24
- class UploadApplicationCommand extends base_command_1.BaseCommand {
25
- constructor() {
26
- super(...arguments);
27
- this.config = UploadApplicationCommand.getDefaultConfig();
28
- this.mobileApplicationVersionFilePath = clipanion_1.Option.String('--mobileApp,--mobileApplicationVersionFilePath', {
29
- description: 'The path to the new version of your mobile application (`.apk` or `.ipa`).',
30
- });
31
- this.mobileApplicationId = clipanion_1.Option.String('--mobileApplicationId', {
32
- description: 'The ID of the application you want to upload the new version to.',
33
- });
34
- this.versionName = clipanion_1.Option.String('--versionName', {
35
- description: 'The name of the new version. It has to be unique.',
36
- });
37
- this.latest = clipanion_1.Option.Boolean('--latest', {
38
- description: 'Mark the new version as `latest`. Any tests that run on the latest version will use this version on their next run.',
39
- });
40
- }
41
- static getDefaultConfig() {
42
- return Object.assign(Object.assign({}, super.getDefaultConfig()), { mobileApplicationVersionFilePath: '', mobileApplicationId: '', versionName: '', latest: false });
43
- }
44
- execute() {
45
- var _a;
46
- return __awaiter(this, void 0, void 0, function* () {
47
- yield this.setup();
48
- const appUploadReporter = new app_upload_1.AppUploadReporter(this.context);
49
- try {
50
- const result = yield (0, mobile_1.uploadMobileApplicationVersion)(this.config, appUploadReporter);
51
- const versionUuid = (_a = result.valid_app_result) === null || _a === void 0 ? void 0 : _a.app_version_uuid;
52
- if (!versionUuid) {
53
- this.logger.error('The upload was successful, but the version ID is missing.');
54
- return 1;
55
- }
56
- this.logger.info(`\nThe new version has version ID: ${chalk_1.default.green(versionUuid)}\nPass it when triggering Synthetic tests to run tests against that version.`);
57
- }
58
- catch (error) {
59
- if (error instanceof errors_1.CiError) {
60
- this.logger.error(`A CI error occurred: [${error.code}] ${error.message}`);
61
- }
62
- else if (error instanceof api_1.EndpointError) {
63
- this.logger.error(`A backend error occurred: ${error.message} (${error.status})`);
64
- }
65
- else {
66
- const e = error;
67
- this.logger.error(`An unexpected error occurred: ${e.stack || e.message}`);
68
- }
69
- return 1;
70
- }
71
- return 0;
72
- });
73
- }
74
- resolveConfigFromEnv() {
75
- return Object.assign(Object.assign({}, super.resolveConfigFromEnv()), { mobileApplicationId: process.env.DATADOG_SYNTHETICS_MOBILE_APPLICATION_ID, versionName: process.env.DATADOG_SYNTHETICS_VERSION_NAME, latest: (0, env_1.toBoolean)(process.env.DATADOG_SYNTHETICS_LATEST) });
76
- }
77
- resolveConfigFromCli() {
78
- return Object.assign(Object.assign({}, super.resolveConfigFromCli()), { mobileApplicationVersionFilePath: this.mobileApplicationVersionFilePath, mobileApplicationId: this.mobileApplicationId, versionName: this.versionName, latest: this.latest });
79
- }
80
- }
81
- exports.UploadApplicationCommand = UploadApplicationCommand;
82
- UploadApplicationCommand.paths = [['synthetics', 'upload-application']];
83
- UploadApplicationCommand.usage = clipanion_1.Command.Usage({
84
- category: 'Synthetics',
85
- description: 'Upload a new version to an existing mobile application in Datadog.',
86
- details: `
87
- This command will upload a \`.apk\` or \`.ipa\` file as a new version for a given application, which already exists in Datadog.\n
88
- https://docs.datadoghq.com/mobile_app_testing/mobile_app_tests
89
- `,
90
- examples: [
91
- [
92
- 'Upload version `example 1.0` and mark it as latest',
93
- "datadog-ci synthetics upload-application --mobileApplicationId '123-123-123' --mobileApplicationVersionFilePath example/test.apk --versionName 'example 1.0' --latest",
94
- ],
95
- ],
96
- });
97
- //# sourceMappingURL=upload-application-command.js.map