@datadog/datadog-ci 2.40.1 → 2.40.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 (269) hide show
  1. package/dist/__tests__/cli.test.d.ts +1 -0
  2. package/dist/__tests__/cli.test.js +41 -0
  3. package/dist/__tests__/cli.test.js.map +1 -0
  4. package/dist/commands/cloud-run/__tests__/fixtures.d.ts +2 -0
  5. package/dist/commands/cloud-run/__tests__/fixtures.js +12 -0
  6. package/dist/commands/cloud-run/__tests__/fixtures.js.map +1 -0
  7. package/dist/commands/cloud-run/__tests__/flare.test.d.ts +1 -0
  8. package/dist/commands/cloud-run/__tests__/flare.test.js +557 -0
  9. package/dist/commands/cloud-run/__tests__/flare.test.js.map +1 -0
  10. package/dist/commands/deployment/__tests__/mark.test.d.ts +1 -0
  11. package/dist/commands/deployment/__tests__/mark.test.js +47 -0
  12. package/dist/commands/deployment/__tests__/mark.test.js.map +1 -0
  13. package/dist/commands/dora/__tests__/deployment.test.d.ts +1 -0
  14. package/dist/commands/dora/__tests__/deployment.test.js +201 -0
  15. package/dist/commands/dora/__tests__/deployment.test.js.map +1 -0
  16. package/dist/commands/dsyms/__tests__/upload.test.d.ts +1 -0
  17. package/dist/commands/dsyms/__tests__/upload.test.js +346 -0
  18. package/dist/commands/dsyms/__tests__/upload.test.js.map +1 -0
  19. package/dist/commands/dsyms/__tests__/utils.test.d.ts +1 -0
  20. package/dist/commands/dsyms/__tests__/utils.test.js +100 -0
  21. package/dist/commands/dsyms/__tests__/utils.test.js.map +1 -0
  22. package/dist/commands/dsyms/upload.js +3 -3
  23. package/dist/commands/dsyms/upload.js.map +1 -1
  24. package/dist/commands/dsyms/utils.js +4 -2
  25. package/dist/commands/dsyms/utils.js.map +1 -1
  26. package/dist/commands/elf-symbols/__tests__/elf.test.d.ts +1 -0
  27. package/dist/commands/elf-symbols/__tests__/elf.test.js +813 -0
  28. package/dist/commands/elf-symbols/__tests__/elf.test.js.map +1 -0
  29. package/dist/commands/elf-symbols/__tests__/upload.test.d.ts +1 -0
  30. package/dist/commands/elf-symbols/__tests__/upload.test.js +249 -0
  31. package/dist/commands/elf-symbols/__tests__/upload.test.js.map +1 -0
  32. package/dist/commands/elf-symbols/upload.js +2 -3
  33. package/dist/commands/elf-symbols/upload.js.map +1 -1
  34. package/dist/commands/flutter-symbols/__tests__/upload.test.d.ts +1 -0
  35. package/dist/commands/flutter-symbols/__tests__/upload.test.js +617 -0
  36. package/dist/commands/flutter-symbols/__tests__/upload.test.js.map +1 -0
  37. package/dist/commands/flutter-symbols/upload.js +2 -2
  38. package/dist/commands/flutter-symbols/upload.js.map +1 -1
  39. package/dist/commands/gate/__tests__/evaluate.test.d.ts +1 -0
  40. package/dist/commands/gate/__tests__/evaluate.test.js +398 -0
  41. package/dist/commands/gate/__tests__/evaluate.test.js.map +1 -0
  42. package/dist/commands/gate/__tests__/scope.test.d.ts +1 -0
  43. package/dist/commands/gate/__tests__/scope.test.js +29 -0
  44. package/dist/commands/gate/__tests__/scope.test.js.map +1 -0
  45. package/dist/commands/git-metadata/__tests__/git.test.d.ts +1 -0
  46. package/dist/commands/git-metadata/__tests__/git.test.js +132 -0
  47. package/dist/commands/git-metadata/__tests__/git.test.js.map +1 -0
  48. package/dist/commands/git-metadata/__tests__/gitdb.test.d.ts +1 -0
  49. package/dist/commands/git-metadata/__tests__/gitdb.test.js +1386 -0
  50. package/dist/commands/git-metadata/__tests__/gitdb.test.js.map +1 -0
  51. package/dist/commands/git-metadata/__tests__/library.test.d.ts +1 -0
  52. package/dist/commands/git-metadata/__tests__/library.test.js +118 -0
  53. package/dist/commands/git-metadata/__tests__/library.test.js.map +1 -0
  54. package/dist/commands/git-metadata/__tests__/upload.test.d.ts +1 -0
  55. package/dist/commands/git-metadata/__tests__/upload.test.js +52 -0
  56. package/dist/commands/git-metadata/__tests__/upload.test.js.map +1 -0
  57. package/dist/commands/junit/__tests__/id.test.d.ts +1 -0
  58. package/dist/commands/junit/__tests__/id.test.js +24 -0
  59. package/dist/commands/junit/__tests__/id.test.js.map +1 -0
  60. package/dist/commands/junit/__tests__/upload.test.d.ts +1 -0
  61. package/dist/commands/junit/__tests__/upload.test.js +495 -0
  62. package/dist/commands/junit/__tests__/upload.test.js.map +1 -0
  63. package/dist/commands/junit/upload.js +5 -3
  64. package/dist/commands/junit/upload.js.map +1 -1
  65. package/dist/commands/lambda/__tests__/fixtures.d.ts +51 -0
  66. package/dist/commands/lambda/__tests__/fixtures.js +146 -0
  67. package/dist/commands/lambda/__tests__/fixtures.js.map +1 -0
  68. package/dist/commands/lambda/__tests__/flare.test.d.ts +1 -0
  69. package/dist/commands/lambda/__tests__/flare.test.js +730 -0
  70. package/dist/commands/lambda/__tests__/flare.test.js.map +1 -0
  71. package/dist/commands/lambda/__tests__/functions/commons.test.d.ts +1 -0
  72. package/dist/commands/lambda/__tests__/functions/commons.test.js +791 -0
  73. package/dist/commands/lambda/__tests__/functions/commons.test.js.map +1 -0
  74. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.d.ts +1 -0
  75. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js +386 -0
  76. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js.map +1 -0
  77. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.d.ts +1 -0
  78. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js +721 -0
  79. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js.map +1 -0
  80. package/dist/commands/lambda/__tests__/functions/uninstrument.test.d.ts +1 -0
  81. package/dist/commands/lambda/__tests__/functions/uninstrument.test.js +513 -0
  82. package/dist/commands/lambda/__tests__/functions/uninstrument.test.js.map +1 -0
  83. package/dist/commands/lambda/__tests__/functions/versionChecker.test.d.ts +1 -0
  84. package/dist/commands/lambda/__tests__/functions/versionChecker.test.js +33 -0
  85. package/dist/commands/lambda/__tests__/functions/versionChecker.test.js.map +1 -0
  86. package/dist/commands/lambda/__tests__/instrument.test.d.ts +1 -0
  87. package/dist/commands/lambda/__tests__/instrument.test.js +1511 -0
  88. package/dist/commands/lambda/__tests__/instrument.test.js.map +1 -0
  89. package/dist/commands/lambda/__tests__/loggroup.test.d.ts +1 -0
  90. package/dist/commands/lambda/__tests__/loggroup.test.js +340 -0
  91. package/dist/commands/lambda/__tests__/loggroup.test.js.map +1 -0
  92. package/dist/commands/lambda/__tests__/prompt.test.d.ts +1 -0
  93. package/dist/commands/lambda/__tests__/prompt.test.js +206 -0
  94. package/dist/commands/lambda/__tests__/prompt.test.js.map +1 -0
  95. package/dist/commands/lambda/__tests__/tags.test.d.ts +1 -0
  96. package/dist/commands/lambda/__tests__/tags.test.js +305 -0
  97. package/dist/commands/lambda/__tests__/tags.test.js.map +1 -0
  98. package/dist/commands/lambda/__tests__/uninstrument.test.d.ts +1 -0
  99. package/dist/commands/lambda/__tests__/uninstrument.test.js +722 -0
  100. package/dist/commands/lambda/__tests__/uninstrument.test.js.map +1 -0
  101. package/dist/commands/measure/__tests__/measure.test.d.ts +1 -0
  102. package/dist/commands/measure/__tests__/measure.test.js +110 -0
  103. package/dist/commands/measure/__tests__/measure.test.js.map +1 -0
  104. package/dist/commands/react-native/__tests__/codepush.test.d.ts +1 -0
  105. package/dist/commands/react-native/__tests__/codepush.test.js +161 -0
  106. package/dist/commands/react-native/__tests__/codepush.test.js.map +1 -0
  107. package/dist/commands/react-native/__tests__/interfaces.test.d.ts +1 -0
  108. package/dist/commands/react-native/__tests__/interfaces.test.js +33 -0
  109. package/dist/commands/react-native/__tests__/interfaces.test.js.map +1 -0
  110. package/dist/commands/react-native/__tests__/upload.test.d.ts +1 -0
  111. package/dist/commands/react-native/__tests__/upload.test.js +238 -0
  112. package/dist/commands/react-native/__tests__/upload.test.js.map +1 -0
  113. package/dist/commands/react-native/__tests__/utils.test.d.ts +1 -0
  114. package/dist/commands/react-native/__tests__/utils.test.js +27 -0
  115. package/dist/commands/react-native/__tests__/utils.test.js.map +1 -0
  116. package/dist/commands/react-native/__tests__/xcode.test.d.ts +1 -0
  117. package/dist/commands/react-native/__tests__/xcode.test.js +465 -0
  118. package/dist/commands/react-native/__tests__/xcode.test.js.map +1 -0
  119. package/dist/commands/sarif/__tests__/upload.test.d.ts +1 -0
  120. package/dist/commands/sarif/__tests__/upload.test.js +228 -0
  121. package/dist/commands/sarif/__tests__/upload.test.js.map +1 -0
  122. package/dist/commands/sarif/upload.js +2 -2
  123. package/dist/commands/sarif/upload.js.map +1 -1
  124. package/dist/commands/sbom/__tests__/payload.test.d.ts +1 -0
  125. package/dist/commands/sbom/__tests__/payload.test.js +262 -0
  126. package/dist/commands/sbom/__tests__/payload.test.js.map +1 -0
  127. package/dist/commands/sbom/__tests__/validation.test.d.ts +1 -0
  128. package/dist/commands/sbom/__tests__/validation.test.js +41 -0
  129. package/dist/commands/sbom/__tests__/validation.test.js.map +1 -0
  130. package/dist/commands/sourcemaps/__tests__/upload.test.d.ts +1 -0
  131. package/dist/commands/sourcemaps/__tests__/upload.test.js +270 -0
  132. package/dist/commands/sourcemaps/__tests__/upload.test.js.map +1 -0
  133. package/dist/commands/sourcemaps/__tests__/utils.test.d.ts +1 -0
  134. package/dist/commands/sourcemaps/__tests__/utils.test.js +31 -0
  135. package/dist/commands/sourcemaps/__tests__/utils.test.js.map +1 -0
  136. package/dist/commands/sourcemaps/upload.js +2 -2
  137. package/dist/commands/sourcemaps/upload.js.map +1 -1
  138. package/dist/commands/stepfunctions/__tests__/awsCommands.test.d.ts +1 -0
  139. package/dist/commands/stepfunctions/__tests__/awsCommands.test.js +192 -0
  140. package/dist/commands/stepfunctions/__tests__/awsCommands.test.js.map +1 -0
  141. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.d.ts +6 -0
  142. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js +45 -0
  143. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js.map +1 -0
  144. package/dist/commands/stepfunctions/__tests__/fixtures/cli.d.ts +5 -0
  145. package/dist/commands/stepfunctions/__tests__/fixtures/cli.js +19 -0
  146. package/dist/commands/stepfunctions/__tests__/fixtures/cli.js.map +1 -0
  147. package/dist/commands/stepfunctions/__tests__/helpers.test.d.ts +1 -0
  148. package/dist/commands/stepfunctions/__tests__/helpers.test.js +205 -0
  149. package/dist/commands/stepfunctions/__tests__/helpers.test.js.map +1 -0
  150. package/dist/commands/stepfunctions/__tests__/instrument.test.d.ts +1 -0
  151. package/dist/commands/stepfunctions/__tests__/instrument.test.js +431 -0
  152. package/dist/commands/stepfunctions/__tests__/instrument.test.js.map +1 -0
  153. package/dist/commands/stepfunctions/__tests__/uninstrument.test.d.ts +1 -0
  154. package/dist/commands/stepfunctions/__tests__/uninstrument.test.js +166 -0
  155. package/dist/commands/stepfunctions/__tests__/uninstrument.test.js.map +1 -0
  156. package/dist/commands/synthetics/__tests__/api.test.d.ts +1 -0
  157. package/dist/commands/synthetics/__tests__/api.test.js +422 -0
  158. package/dist/commands/synthetics/__tests__/api.test.js.map +1 -0
  159. package/dist/commands/synthetics/__tests__/cli.test.d.ts +1 -0
  160. package/dist/commands/synthetics/__tests__/cli.test.js +1325 -0
  161. package/dist/commands/synthetics/__tests__/cli.test.js.map +1 -0
  162. package/dist/commands/synthetics/__tests__/fixtures.d.ts +149 -0
  163. package/dist/commands/synthetics/__tests__/fixtures.js +507 -0
  164. package/dist/commands/synthetics/__tests__/fixtures.js.map +1 -0
  165. package/dist/commands/synthetics/__tests__/mobile.test.d.ts +1 -0
  166. package/dist/commands/synthetics/__tests__/mobile.test.js +376 -0
  167. package/dist/commands/synthetics/__tests__/mobile.test.js.map +1 -0
  168. package/dist/commands/synthetics/__tests__/reporters/default.test.d.ts +1 -0
  169. package/dist/commands/synthetics/__tests__/reporters/default.test.js +354 -0
  170. package/dist/commands/synthetics/__tests__/reporters/default.test.js.map +1 -0
  171. package/dist/commands/synthetics/__tests__/reporters/junit.test.d.ts +1 -0
  172. package/dist/commands/synthetics/__tests__/reporters/junit.test.js +353 -0
  173. package/dist/commands/synthetics/__tests__/reporters/junit.test.js.map +1 -0
  174. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.d.ts +1 -0
  175. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js +232 -0
  176. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js.map +1 -0
  177. package/dist/commands/synthetics/__tests__/run-tests-lib.test.d.ts +1 -0
  178. package/dist/commands/synthetics/__tests__/run-tests-lib.test.js +735 -0
  179. package/dist/commands/synthetics/__tests__/run-tests-lib.test.js.map +1 -0
  180. package/dist/commands/synthetics/__tests__/test.test.d.ts +1 -0
  181. package/dist/commands/synthetics/__tests__/test.test.js +33 -0
  182. package/dist/commands/synthetics/__tests__/test.test.js.map +1 -0
  183. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.d.ts +1 -0
  184. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js +21 -0
  185. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js.map +1 -0
  186. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.d.ts +1 -0
  187. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js +80 -0
  188. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js.map +1 -0
  189. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.d.ts +1 -0
  190. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js +109 -0
  191. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js.map +1 -0
  192. package/dist/commands/synthetics/__tests__/utils/internal.test.d.ts +1 -0
  193. package/dist/commands/synthetics/__tests__/utils/internal.test.js +186 -0
  194. package/dist/commands/synthetics/__tests__/utils/internal.test.js.map +1 -0
  195. package/dist/commands/synthetics/__tests__/utils/public.test.d.ts +1 -0
  196. package/dist/commands/synthetics/__tests__/utils/public.test.js +1526 -0
  197. package/dist/commands/synthetics/__tests__/utils/public.test.js.map +1 -0
  198. package/dist/commands/synthetics/api.d.ts +1 -1
  199. package/dist/commands/synthetics/api.js +10 -5
  200. package/dist/commands/synthetics/api.js.map +1 -1
  201. package/dist/commands/synthetics/run-tests-command.d.ts +1 -0
  202. package/dist/commands/synthetics/run-tests-command.js +3 -2
  203. package/dist/commands/synthetics/run-tests-command.js.map +1 -1
  204. package/dist/commands/synthetics/run-tests-lib.js +0 -4
  205. package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
  206. package/dist/commands/synthetics/test.js +9 -1
  207. package/dist/commands/synthetics/test.js.map +1 -1
  208. package/dist/commands/synthetics/utils/public.js +3 -3
  209. package/dist/commands/synthetics/utils/public.js.map +1 -1
  210. package/dist/commands/tag/__tests__/tag.test.d.ts +1 -0
  211. package/dist/commands/tag/__tests__/tag.test.js +75 -0
  212. package/dist/commands/tag/__tests__/tag.test.js.map +1 -0
  213. package/dist/commands/trace/__tests__/trace.test.d.ts +1 -0
  214. package/dist/commands/trace/__tests__/trace.test.js +145 -0
  215. package/dist/commands/trace/__tests__/trace.test.js.map +1 -0
  216. package/dist/commands/unity-symbols/__tests__/upload.test.d.ts +1 -0
  217. package/dist/commands/unity-symbols/__tests__/upload.test.js +369 -0
  218. package/dist/commands/unity-symbols/__tests__/upload.test.js.map +1 -0
  219. package/dist/commands/unity-symbols/upload.js +2 -2
  220. package/dist/commands/unity-symbols/upload.js.map +1 -1
  221. package/dist/helpers/__tests__/app.test.d.ts +1 -0
  222. package/dist/helpers/__tests__/app.test.js +31 -0
  223. package/dist/helpers/__tests__/app.test.js.map +1 -0
  224. package/dist/helpers/__tests__/ci.test.d.ts +1 -0
  225. package/dist/helpers/__tests__/ci.test.js +252 -0
  226. package/dist/helpers/__tests__/ci.test.js.map +1 -0
  227. package/dist/helpers/__tests__/fixtures.d.ts +33 -0
  228. package/dist/helpers/__tests__/fixtures.js +71 -0
  229. package/dist/helpers/__tests__/fixtures.js.map +1 -0
  230. package/dist/helpers/__tests__/flare.test.d.ts +1 -0
  231. package/dist/helpers/__tests__/flare.test.js +226 -0
  232. package/dist/helpers/__tests__/flare.test.js.map +1 -0
  233. package/dist/helpers/__tests__/fs.test.d.ts +1 -0
  234. package/dist/helpers/__tests__/fs.test.js +189 -0
  235. package/dist/helpers/__tests__/fs.test.js.map +1 -0
  236. package/dist/helpers/__tests__/plist.test.d.ts +1 -0
  237. package/dist/helpers/__tests__/plist.test.js +43 -0
  238. package/dist/helpers/__tests__/plist.test.js.map +1 -0
  239. package/dist/helpers/__tests__/prompt.test.d.ts +1 -0
  240. package/dist/helpers/__tests__/prompt.test.js +71 -0
  241. package/dist/helpers/__tests__/prompt.test.js.map +1 -0
  242. package/dist/helpers/__tests__/retry.test.d.ts +1 -0
  243. package/dist/helpers/__tests__/retry.test.js +99 -0
  244. package/dist/helpers/__tests__/retry.test.js.map +1 -0
  245. package/dist/helpers/__tests__/tags.test.d.ts +1 -0
  246. package/dist/helpers/__tests__/tags.test.js +71 -0
  247. package/dist/helpers/__tests__/tags.test.js.map +1 -0
  248. package/dist/helpers/__tests__/upload.test.d.ts +1 -0
  249. package/dist/helpers/__tests__/upload.test.js +231 -0
  250. package/dist/helpers/__tests__/upload.test.js.map +1 -0
  251. package/dist/helpers/__tests__/user-provided-git.test.d.ts +1 -0
  252. package/dist/helpers/__tests__/user-provided-git.test.js +119 -0
  253. package/dist/helpers/__tests__/user-provided-git.test.js.map +1 -0
  254. package/dist/helpers/__tests__/utils.test.d.ts +1 -0
  255. package/dist/helpers/__tests__/utils.test.js +429 -0
  256. package/dist/helpers/__tests__/utils.test.js.map +1 -0
  257. package/dist/helpers/__tests__/validation.test.d.ts +1 -0
  258. package/dist/helpers/__tests__/validation.test.js +25 -0
  259. package/dist/helpers/__tests__/validation.test.js.map +1 -0
  260. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.d.ts +1 -0
  261. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js +103 -0
  262. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js.map +1 -0
  263. package/dist/helpers/git/__tests__/format-git-span-data.test.d.ts +1 -0
  264. package/dist/helpers/git/__tests__/format-git-span-data.test.js +121 -0
  265. package/dist/helpers/git/__tests__/format-git-span-data.test.js.map +1 -0
  266. package/dist/helpers/git/__tests__/get-git-data.test.d.ts +1 -0
  267. package/dist/helpers/git/__tests__/get-git-data.test.js +72 -0
  268. package/dist/helpers/git/__tests__/get-git-data.test.js.map +1 -0
  269. package/package.json +4 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instrument.part2.test.js","sourceRoot":"","sources":["../../../../../src/commands/lambda/__tests__/functions/instrument.part2.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAE3B,0DAA0E;AAC1E,6DAA8C;AAE9C,qDAAyE;AACzE,qEAA2E;AAE3E,+CAAgH;AAChH,2DAAiE;AAGjE,0CAAsF;AAEtF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAA;QAC3B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,YAAY,EAAE,CAAA;YACnB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAA;QAClB,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,GAAG,OAAO,CAAA;QACvB,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,8DAA8D,EAAE,GAAS,EAAE;YAC9E,MAAM,OAAO,GAAG,uBAAO,CAAC,SAAS,CAAA;YACjC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;OAiB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,IAAI,CAAC;YACR,CAAC,uBAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC;YACxC,CAAC,uBAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC;YACxC,CAAC,uBAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC;SACzC,CAAC,CAAC,qCAAqC,EAAE,CAAO,OAAgB,EAAE,KAAa,EAAE,EAAE;YAClF,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;2DAcS,KAAK;;;OAGzD,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,kFAAkF,EAAE,GAAS,EAAE;YAClG,MAAM,OAAO,GAAG,uBAAO,CAAC,QAAQ,CAAA;YAChC,MAAM,MAAM,GAAG;gBACb,aAAa,EAAE,CAAC,4BAAY,CAAC,KAAK,CAAC;gBACnC,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;OAiB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,oFAAoF,EAAE,GAAS,EAAE;YACpG,OAAO,CAAC,GAAG,CAAC,8BAAkB,CAAC,GAAG,+BAAoB,CAAA;YACtD,MAAM,OAAO,GAAG,uBAAO,CAAC,SAAS,CAAA;YACjC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;OAkB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,+EAA+E,EAAE,GAAS,EAAE;YAC/F,OAAO,CAAC,GAAG,CAAC,2BAAe,CAAC,GAAG,iBAAiB,CAAA;YAChD,MAAM,OAAO,GAAG,uBAAO,CAAC,SAAS,CAAA;YACjC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;OAkB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,+FAA+F,EAAE,GAAS,EAAE;YAC/G,OAAO,CAAC,GAAG,CAAC,yCAA6B,CAAC,GAAG,0BAA0B,CAAA;YACvE,MAAM,OAAO,GAAG,uBAAO,CAAC,QAAQ,CAAA;YAChC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,gBAAgB,EAAE,EAAE;gBACpB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;OAkB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,wFAAwF,EAAE,GAAS,EAAE;YACxG,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;YAC5C,MAAM,OAAO,GAAG,uBAAO,CAAC,QAAQ,CAAA;YAChC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;OAkB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;YAC3E,OAAO,CAAC,GAAG,GAAG;gBACZ,CAAC,8BAAkB,CAAC,EAAE,+BAAoB;gBAC1C,CAAC,yCAA6B,CAAC,EAAE,MAAM;gBACvC,CAAC,kCAAsB,CAAC,EAAE,oBAAoB;aAC/C,CAAA;YAED,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,OAAO,GAAG,WAAW,CAAA;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,EAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACtF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;OAW3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;YAC3E,OAAO,CAAC,GAAG,CAAC,8BAAkB,CAAC,GAAG,+BAAoB,CAAA;YAEtD,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,OAAO,GAAG,WAAW,CAAA;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,QAAQ,GAA4B;gBACxC,gBAAgB,EAAE,EAAE;gBACpB,kBAAkB,EAAE,IAAI;gBACxB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;OAgB3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,sFAAsF,EAAE,GAAS,EAAE;YACtG,MAAM,OAAO,GAAG,uBAAO,CAAC,QAAQ,CAAA;YAChC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAE1B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;OAa3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,0EAA0E,EAAE,GAAS,EAAE;YAC1F,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,cAAc,CAAA;YACzC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,OAAO,GAAG,WAAW,CAAA;YAE3B,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;YACrF,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;OAa3C,CAAC,CAAA;QACJ,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;YAC3E,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,cAAc,CAAA;YACzC,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,WAAW,EAAE,KAAK;gBAClB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,OAAO,GAAG,WAAW,CAAA;YAC3B,IAAI,KAAK,CAAA;YACT,IAAI;gBACF,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;aAChE;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,YAAY,KAAK,EAAE;oBACtB,KAAK,GAAG,CAAC,CAAA;iBACV;aACF;YACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,kJAAkJ,CACnJ,CAAA;QACH,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,qIAAqI,EAAE,GAAS,EAAE;YACrJ,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;aACX,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,gBAAgB,EAAE,CAAC;gBACnB,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,OAAO,GAAG,WAAW,CAAA;YAC3B,IAAI,KAAK,CAAA;YACT,IAAI;gBACF,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;aAChE;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,YAAY,KAAK,EAAE;oBACtB,KAAK,GAAG,CAAC,CAAA;iBACV;aACF;YACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,oHAAoH,CACrH,CAAA;QACH,CAAC,CAAA,CAAC,CAAA;QAEF,IAAI,CAAC,oGAAoG,EAAE,GAAS,EAAE;YACpH,OAAO,CAAC,GAAG,CAAC,yCAA6B,CAAC,GAAG,0BAA0B,CAAA;YACvE,MAAM,OAAO,GAAG,uBAAO,CAAC,SAAS,CAAA;YACjC,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,OAAO;aACjB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,IAAI,KAAK,CAAA;YACT,IAAI;gBACF,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;aAChE;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,YAAY,KAAK,EAAE;oBACtB,KAAK,GAAG,CAAC,CAAA;iBACV;aACF;YACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,0HAA0H,CAC3H,CAAA;QACH,CAAC,CAAA,CAAC,CAAA;QAEF,QAAQ,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACzE,MAAM,MAAM,GAAG,WAAW,CAAA;YAC1B,MAAM,MAAM,GAAG;gBACb,WAAW,EAAE,mEAAmE;gBAChF,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,SAAS;aACnB,CAAA;YACD,MAAM,QAAQ,GAAG;gBACf,kBAAkB,EAAE,KAAK;gBACzB,eAAe,EAAE,yBAAc;gBAC/B,YAAY,EAAE,EAAE;gBAChB,eAAe,EAAE,KAAK;gBACtB,cAAc,EAAE,KAAK;aACtB,CAAA;YACD,MAAM,aAAa,GAAG,uBAAO,CAAC,OAAO,CAAA;YACrC,MAAM,WAAW,GAAG,uBAAO,CAAC,MAAM,CAAA;YAElC,QAAQ,CAAC,oBAAoB,aAAa,EAAE,EAAE,GAAG,EAAE;gBACjD,MAAM,YAAY,mCAAO,MAAM,KAAE,OAAO,EAAE,aAAa,GAAC,CAAA;gBACxD,MAAM,mBAAmB,mCAAO,MAAM,KAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,4BAAY,CAAC,KAAK,CAAC,GAAC,CAAA;gBACpG,IAAI,CAAC,oFAAoF,EAAE,GAAS,EAAE;oBACpG,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;oBAC5C,MAAM,WAAW,mCAAO,QAAQ,KAAE,gBAAgB,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,GAAC,CAAA;oBACxE,IAAI,KAAK,CAAA;oBACT,IAAI;wBACF,MAAM,IAAA,mCAAsB,EAAC,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;qBAC/E;oBAAC,OAAO,CAAC,EAAE;wBACV,IAAI,CAAC,YAAY,KAAK,EAAE;4BACtB,KAAK,GAAG,CAAC,CAAA;yBACV;qBACF;oBACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,WAAW,aAAa,qFAAqF,CAC9G,CAAA;gBACH,CAAC,CAAA,CAAC,CAAA;gBAEF,IAAI,CAAC,+EAA+E,EAAE,GAAS,EAAE;oBAC/F,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;oBAC5C,MAAM,WAAW,mCAAO,QAAQ,KAAE,gBAAgB,EAAE,EAAE,GAAC,CAAA;oBACvD,IAAI,KAAK,CAAA;oBACT,IAAI;wBACF,MAAM,IAAA,mCAAsB,EAAC,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;qBACtF;oBAAC,OAAO,CAAC,EAAE;wBACV,IAAI,CAAC,YAAY,KAAK,EAAE;4BACtB,KAAK,GAAG,CAAC,CAAA;yBACV;qBACF;oBACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,iKAAiK,CAClK,CAAA;gBACH,CAAC,CAAA,CAAC,CAAA;gBAEF,MAAM,aAAa,GAAG;oBACpB,cAAc,EAAE,MAAM;oBACtB,oBAAoB,EAAE,OAAO;oBAC7B,OAAO,EAAE,eAAe;oBACxB,gBAAgB,EAAE,OAAO;iBAC1B,CAAA;gBACD,MAAM,4BAA4B,GAAG;oBACnC,WAAW,EAAE;wBACX,SAAS,kCAAM,aAAa,KAAE,uBAAuB,EAAE,sBAAsB,GAAC;qBAC/E;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE;wBACN,kEAAkE;wBAClE,+DAA+D;qBAChE;iBACF,CAAA;gBACD,MAAM,mBAAmB,GAAG;oBAC1B,WAAW,EAAE;wBACX,SAAS,kCACJ,aAAa,KAChB,wBAAwB,EAAE,GAAG,EAC7B,gBAAgB,EAAE,wCAAwC,EAC1D,qBAAqB,EAAE,kDAAkD,EACzE,qBAAqB,EAAE,cAAc,GACtC;qBACF;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE;wBACN,kEAAkE;wBAClE,+DAA+D;qBAChE;iBACF,CAAA;gBACD,MAAM,cAAc,GAAG;oBACrB,WAAW,EAAE;wBACX,SAAS,kCACJ,aAAa,KAChB,wBAAwB,EAAE,GAAG,EAC7B,gBAAgB,EAAE,wCAAwC,EAC1D,qBAAqB,EAAE,kDAAkD,EACzE,qBAAqB,EAAE,cAAc,GACtC;qBACF;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE,CAAC,kEAAkE,CAAC;iBAC7E,CAAA;gBAED,IAAI,CAAC,IAAI,CAAA;;YAEL,EAAE,iBAAiB,CAAC,cAAc,4BAA4B;YAC9D,EAAE,iBAAiB,CAAC,cAAc,mBAAmB;YACrD,EAAE,iBAAiB,SAAS,MAAM,cAAc;SACnD,CACC,2GAA2G,EAC3G,CAAO,EAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAC,EAAE,EAAE;oBACvD,MAAM,WAAW,mCAAO,QAAQ,KAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,GAAC,CAAA;oBAC/E,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;oBAC5C,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;oBACpG,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBAC7C,CAAC,CAAA,CACF,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,QAAQ,CAAC,oBAAoB,WAAW,EAAE,EAAE,GAAG,EAAE;gBAC/C,MAAM,UAAU,mCAAO,MAAM,KAAE,OAAO,EAAE,WAAW,GAAC,CAAA;gBAEpD,IAAI,CAAC,oFAAoF,EAAE,GAAS,EAAE;oBACpG,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;oBAC5C,MAAM,WAAW,mCAAO,QAAQ,KAAE,gBAAgB,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,GAAC,CAAA;oBACxE,IAAI,KAAK,CAAA;oBACT,IAAI;wBACF,MAAM,IAAA,mCAAsB,EAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;qBAC3E;oBAAC,OAAO,CAAC,EAAE;wBACV,IAAI,CAAC,YAAY,KAAK,EAAE;4BACtB,KAAK,GAAG,CAAC,CAAA;yBACV;qBACF;oBACD,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,IAAI,CACzB,WAAW,WAAW,qFAAqF,CAC5G,CAAA;gBACH,CAAC,CAAA,CAAC,CAAA;gBAEF,MAAM,aAAa,GAAG;oBACpB,cAAc,EAAE,MAAM;oBACtB,oBAAoB,EAAE,OAAO;oBAC7B,OAAO,EAAE,eAAe;oBACxB,gBAAgB,EAAE,OAAO;iBAC1B,CAAA;gBACD,MAAM,4BAA4B,GAAG;oBACnC,WAAW,EAAE;wBACX,SAAS,kCAAM,aAAa,KAAE,uBAAuB,EAAE,sBAAsB,GAAC;qBAC/E;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE;wBACN,kEAAkE;wBAClE,6DAA6D;qBAC9D;iBACF,CAAA;gBACD,MAAM,mBAAmB,GAAG;oBAC1B,WAAW,EAAE;wBACX,SAAS,oBACJ,aAAa,CACjB;qBACF;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE;wBACN,kEAAkE;wBAClE,6DAA6D;qBAC9D;iBACF,CAAA;gBACD,MAAM,cAAc,GAAG;oBACrB,WAAW,EAAE;wBACX,SAAS,oBACJ,aAAa,CACjB;qBACF;oBACD,YAAY,EAAE,mEAAmE;oBACjF,MAAM,EAAE,CAAC,kEAAkE,CAAC;iBAC7E,CAAA;gBAED,IAAI,CAAC,IAAI,CAAA;;YAEL,EAAE,iBAAiB,CAAC,cAAc,4BAA4B;YAC9D,EAAE,iBAAiB,CAAC,cAAc,mBAAmB;YACrD,EAAE,iBAAiB,SAAS,MAAM,cAAc;SACnD,CACC,2GAA2G,EAC3G,CAAO,EAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAC,EAAE,EAAE;oBACvD,MAAM,WAAW,mCAAO,QAAQ,KAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,GAAC,CAAA;oBAC/E,OAAO,CAAC,GAAG,CAAC,kCAAsB,CAAC,GAAG,MAAM,CAAA;oBAC5C,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;oBAChG,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBAC7C,CAAC,CAAA,CACF,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACvC,MAAM,gBAAgB,GAAG,IAAA,gCAAU,EAAC,4BAAY,CAAC,CAAA;YAEjD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAChC,MAAM,cAAc,GAAG,4BAA4B,qCAAyB,0BAA0B,CAAA;gBAEtG,SAAS,CAAC,GAAG,EAAE;oBACb,gBAAgB,CAAC,KAAK,EAAE,CAAA;oBACxB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAA;oBAEhB,IAAA,mCAAwB,EAAC,gBAAgB,CAAC,CAAA;gBAC5C,CAAC,CAAC,CAAA;gBAEF,QAAQ,CAAC,GAAG,EAAE;oBACZ,OAAO,CAAC,GAAG,GAAG,OAAO,CAAA;gBACvB,CAAC,CAAC,CAAA;gBAEF,EAAE,CAAC,IAAI,CAAC;oBACN;wBACE,QAAQ;wBACR;4BACE,OAAO,EAAE,uBAAO,CAAC,SAAS;4BAC1B,KAAK,EAAE,mBAAmB;yBAC3B;wBACD,gCAAgC;qBACjC;oBACD;wBACE,MAAM;wBACN;4BACE,OAAO,EAAE,uBAAO,CAAC,SAAS;4BAC1B,KAAK,EAAE,kBAAkB;yBAC1B;wBACD,4DAA4D;qBAC7D;iBACF,CAAC,CAAC,IAAI,EAAE,CAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACnC,OAAO,CAAC,GAAG,CAAC,8BAAkB,CAAC,GAAG,+BAAoB,CAAA;oBACtD,MAAM,YAAY,GAAG,4BAA4B,qCAAyB,UAAU,IAAI,CAAC,KAAK,EAAE,CAAA;oBAEhG,oCAAoC;oBACpC,IAAA,2BAAgB,EAAC,gBAAgB,EAAE;wBACjC,CAAC,GAAG,YAAY,IAAI,CAAC,EAAE;4BACrB,SAAS,EAAE,GAAG,YAAY,EAAE;4BAC5B,aAAa,EAAE,CAAC;yBACjB;wBACD,CAAC,GAAG,cAAc,IAAI,CAAC,EAAE;4BACvB,SAAS,EAAE,GAAG,cAAc,EAAE;4BAC9B,aAAa,EAAE,CAAC;yBACjB;qBACF,CAAC,CAAA;oBAEF,MAAM,MAAM,GAAG;wBACb,WAAW,EAAE,mEAAmE;wBAChF,OAAO,EAAE,eAAe;wBACxB,MAAM,EAAE,EAAE;wBACV,OAAO,EAAE,IAAI,CAAC,OAAO;qBACtB,CAAA;oBAED,MAAM,QAAQ,GAAG;wBACf,kBAAkB,EAAE,KAAK;wBACzB,WAAW,EAAE,IAAI;wBACjB,eAAe,EAAE,KAAK;wBACtB,cAAc,EAAE,KAAK;qBACtB,CAAA;oBAED,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAsB,EAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,OAAc,CAAC,CAAA;oBAEtG,MAAM,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC/C,CAAC,CAAA,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ import 'aws-sdk-client-mock-jest';
@@ -0,0 +1,513 @@
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
+ jest.mock('../../loggroup');
36
+ jest.mock('../../renderers/instrument-uninstrument-renderer');
37
+ const client_cloudwatch_logs_1 = require("@aws-sdk/client-cloudwatch-logs");
38
+ const client_lambda_1 = require("@aws-sdk/client-lambda");
39
+ const aws_sdk_client_mock_1 = require("aws-sdk-client-mock");
40
+ require("aws-sdk-client-mock-jest");
41
+ const constants_1 = require("../../../../constants");
42
+ const constants_2 = require("../../constants");
43
+ const commons_1 = require("../../functions/commons");
44
+ const uninstrument_1 = require("../../functions/uninstrument");
45
+ const loggroup = __importStar(require("../../loggroup"));
46
+ const fixtures_1 = require("../fixtures");
47
+ describe('uninstrument', () => {
48
+ const cloudWatchLogsClientMock = (0, aws_sdk_client_mock_1.mockClient)(client_cloudwatch_logs_1.CloudWatchLogsClient);
49
+ const lambdaClientMock = (0, aws_sdk_client_mock_1.mockClient)(client_lambda_1.LambdaClient);
50
+ const OLD_ENV = process.env;
51
+ describe('calculateUpdateRequest', () => {
52
+ beforeEach(() => {
53
+ cloudWatchLogsClientMock.reset();
54
+ lambdaClientMock.reset();
55
+ jest.resetModules();
56
+ process.env = {};
57
+ (0, fixtures_1.mockLambdaClientCommands)(lambdaClientMock);
58
+ });
59
+ afterAll(() => {
60
+ process.env = OLD_ENV;
61
+ });
62
+ test('calculates an update request removing all variables set by the CI', () => __awaiter(void 0, void 0, void 0, function* () {
63
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
64
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
65
+ config: {
66
+ Environment: {
67
+ Variables: {
68
+ [constants_2.API_KEY_SECRET_ARN_ENV_VAR]: 'some-secret:arn:from:aws',
69
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
70
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'true',
71
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'lambda_function.lambda_handler',
72
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
73
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
74
+ [constants_1.SERVICE_ENV_VAR]: 'middletier',
75
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com',
76
+ [constants_2.TRACE_ENABLED_ENV_VAR]: 'true',
77
+ [constants_1.VERSION_ENV_VAR]: '0.2',
78
+ USER_VARIABLE: 'shouldnt be deleted by uninstrumentation',
79
+ },
80
+ },
81
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
82
+ Handler: 'datadog_lambda.handler.handler',
83
+ Runtime: 'python3.8',
84
+ },
85
+ },
86
+ });
87
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
88
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
89
+ expect(updateRequest).toMatchInlineSnapshot(`
90
+ {
91
+ "Environment": {
92
+ "Variables": {
93
+ "USER_VARIABLE": "shouldnt be deleted by uninstrumentation",
94
+ },
95
+ },
96
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
97
+ "Handler": "lambda_function.lambda_handler",
98
+ }
99
+ `);
100
+ }));
101
+ test('calculates an update request setting the previous handler', () => __awaiter(void 0, void 0, void 0, function* () {
102
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
103
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
104
+ config: {
105
+ Environment: {
106
+ Variables: {
107
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'lambda_function.lambda_handler',
108
+ },
109
+ },
110
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
111
+ Handler: 'datadog_lambda.handler.handler',
112
+ Runtime: 'python3.8',
113
+ },
114
+ },
115
+ });
116
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
117
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
118
+ expect(updateRequest).toMatchInlineSnapshot(`
119
+ {
120
+ "Environment": {
121
+ "Variables": {},
122
+ },
123
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
124
+ "Handler": "lambda_function.lambda_handler",
125
+ }
126
+ `);
127
+ }));
128
+ test('calculates an update request removing lambda layers set by the CI', () => __awaiter(void 0, void 0, void 0, function* () {
129
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
130
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
131
+ config: {
132
+ Environment: {
133
+ Variables: {
134
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'lambda_function.lambda_handler',
135
+ },
136
+ },
137
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
138
+ Handler: 'datadog_lambda.handler.handler',
139
+ Layers: [
140
+ {
141
+ Arn: 'arn:aws:lambda:sa-east-1:000000000000:layer:Datadog-Extension:11',
142
+ CodeSize: 0,
143
+ SigningJobArn: 'some-signing-job-arn',
144
+ SigningProfileVersionArn: 'some-signing-profile',
145
+ },
146
+ {
147
+ Arn: 'arn:aws:lambda:sa-east-1:000000000000:layer:Datadog-Python38:49',
148
+ CodeSize: 0,
149
+ SigningJobArn: 'some-signing-job-arn',
150
+ SigningProfileVersionArn: 'some-signing-profile',
151
+ },
152
+ ],
153
+ Runtime: 'python3.8',
154
+ },
155
+ },
156
+ });
157
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
158
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
159
+ expect(updateRequest).toMatchInlineSnapshot(`
160
+ {
161
+ "Environment": {
162
+ "Variables": {},
163
+ },
164
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
165
+ "Handler": "lambda_function.lambda_handler",
166
+ "Layers": [],
167
+ }
168
+ `);
169
+ }));
170
+ describe('handlers using AWS_LAMBDA_EXEC_WRAPPER', () => {
171
+ beforeEach(() => {
172
+ jest.resetModules();
173
+ process.env = {};
174
+ (0, fixtures_1.mockLambdaClientCommands)(lambdaClientMock);
175
+ });
176
+ afterAll(() => {
177
+ process.env = OLD_ENV;
178
+ });
179
+ test('removes lambda exec wrapper for .NET', () => __awaiter(void 0, void 0, void 0, function* () {
180
+ const config = {
181
+ Environment: {
182
+ Variables: {
183
+ [constants_2.AWS_LAMBDA_EXEC_WRAPPER_VAR]: constants_2.AWS_LAMBDA_EXEC_WRAPPER,
184
+ },
185
+ },
186
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:dotnet',
187
+ Runtime: client_lambda_1.Runtime.dotnet6,
188
+ };
189
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
190
+ expect(updateRequest).toMatchInlineSnapshot(`
191
+ {
192
+ "Environment": {
193
+ "Variables": {},
194
+ },
195
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:dotnet",
196
+ }
197
+ `);
198
+ }));
199
+ test('removes lambda exec wrapper for Java', () => __awaiter(void 0, void 0, void 0, function* () {
200
+ const config = {
201
+ Environment: {
202
+ Variables: {
203
+ [constants_2.AWS_LAMBDA_EXEC_WRAPPER_VAR]: constants_2.AWS_LAMBDA_EXEC_WRAPPER,
204
+ },
205
+ },
206
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:java',
207
+ Runtime: client_lambda_1.Runtime.java11,
208
+ };
209
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
210
+ expect(updateRequest).toMatchInlineSnapshot(`
211
+ {
212
+ "Environment": {
213
+ "Variables": {},
214
+ },
215
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:java",
216
+ }
217
+ `);
218
+ }));
219
+ test('doesnt remove variable when it doesnt match datadog instrumentation', () => __awaiter(void 0, void 0, void 0, function* () {
220
+ const config = {
221
+ Environment: {
222
+ Variables: {
223
+ [constants_2.AWS_LAMBDA_EXEC_WRAPPER_VAR]: 'my-custom-wrapper',
224
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com', // to trigger an update request
225
+ },
226
+ },
227
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:dotnet-custom',
228
+ Runtime: client_lambda_1.Runtime.dotnet6,
229
+ };
230
+ const updateRequest = (0, uninstrument_1.calculateUpdateRequest)(config, config.Runtime);
231
+ expect(updateRequest).toMatchInlineSnapshot(`
232
+ {
233
+ "Environment": {
234
+ "Variables": {
235
+ "AWS_LAMBDA_EXEC_WRAPPER": "my-custom-wrapper",
236
+ },
237
+ },
238
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:dotnet-custom",
239
+ }
240
+ `);
241
+ }));
242
+ });
243
+ });
244
+ describe('getUninstrumentedFunctionConfigs', () => {
245
+ beforeEach(() => {
246
+ cloudWatchLogsClientMock.reset();
247
+ lambdaClientMock.reset();
248
+ jest.resetModules();
249
+ process.env = {};
250
+ (0, fixtures_1.mockLambdaClientCommands)(lambdaClientMock);
251
+ });
252
+ afterAll(() => {
253
+ process.env = OLD_ENV;
254
+ });
255
+ test('returns the update request for each function', () => __awaiter(void 0, void 0, void 0, function* () {
256
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
257
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
258
+ config: {
259
+ Environment: {
260
+ Variables: {
261
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
262
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'true',
263
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'lambda_function.lambda_handler',
264
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
265
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
266
+ [constants_1.SERVICE_ENV_VAR]: 'middletier',
267
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com',
268
+ [constants_2.TRACE_ENABLED_ENV_VAR]: 'true',
269
+ [constants_1.VERSION_ENV_VAR]: '0.2',
270
+ USER_VARIABLE: 'shouldnt be deleted by uninstrumentation',
271
+ },
272
+ },
273
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
274
+ Handler: 'datadog_lambda.handler.handler',
275
+ Runtime: 'python3.8',
276
+ },
277
+ },
278
+ });
279
+ const result = yield (0, uninstrument_1.getUninstrumentedFunctionConfigs)(lambdaClientMock, cloudWatchLogsClientMock, ['arn:aws:lambda:us-east-1:000000000000:function:uninstrument'], undefined);
280
+ expect(result.length).toEqual(1);
281
+ expect(result[0].updateFunctionConfigurationCommandInput).toMatchInlineSnapshot(`
282
+ {
283
+ "Environment": {
284
+ "Variables": {
285
+ "USER_VARIABLE": "shouldnt be deleted by uninstrumentation",
286
+ },
287
+ },
288
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
289
+ "Handler": "lambda_function.lambda_handler",
290
+ }
291
+ `);
292
+ }));
293
+ test('returns results for multiple functions', () => __awaiter(void 0, void 0, void 0, function* () {
294
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
295
+ 'arn:aws:lambda:us-east-1:000000000000:function:another-func': {
296
+ config: {
297
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:another-func',
298
+ Runtime: 'nodejs20.x',
299
+ },
300
+ },
301
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
302
+ config: {
303
+ Environment: {
304
+ Variables: {
305
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'false',
306
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'index.handler',
307
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
308
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
309
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com',
310
+ [constants_2.TRACE_ENABLED_ENV_VAR]: 'false',
311
+ [constants_1.SERVICE_ENV_VAR]: 'middletier',
312
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
313
+ [constants_1.VERSION_ENV_VAR]: '0.2',
314
+ },
315
+ },
316
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
317
+ Handler: '/opt/nodejs/node_modules/datadog-lambda-js/handler.handler',
318
+ Runtime: 'nodejs20.x',
319
+ },
320
+ },
321
+ });
322
+ const result = yield (0, uninstrument_1.getUninstrumentedFunctionConfigs)(lambdaClientMock, cloudWatchLogsClientMock, [
323
+ 'arn:aws:lambda:us-east-1:000000000000:function:another-func',
324
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
325
+ ], undefined);
326
+ expect(result.length).toEqual(2);
327
+ expect(result[0].updateFunctionConfigurationCommandInput).toBeUndefined();
328
+ expect(result[1].updateFunctionConfigurationCommandInput).toMatchInlineSnapshot(`
329
+ {
330
+ "Environment": {
331
+ "Variables": {},
332
+ },
333
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
334
+ "Handler": "index.handler",
335
+ }
336
+ `);
337
+ }));
338
+ test('correctly removes .NET env vars', () => __awaiter(void 0, void 0, void 0, function* () {
339
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
340
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
341
+ config: {
342
+ Environment: {
343
+ Variables: {
344
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'false',
345
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
346
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
347
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com',
348
+ [constants_2.TRACE_ENABLED_ENV_VAR]: 'false',
349
+ [constants_1.SERVICE_ENV_VAR]: 'middletier',
350
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
351
+ [constants_1.VERSION_ENV_VAR]: '0.2',
352
+ [constants_2.ENABLE_PROFILING_ENV_VAR]: '1',
353
+ [constants_2.PROFILER_ENV_VAR]: '{846F5F1C-F9AE-4B07-969E-05C26BC060D8}',
354
+ [constants_2.PROFILER_PATH_ENV_VAR]: '/opt/datadog/Datadog.Trace.ClrProfiler.Native.so',
355
+ [constants_2.DOTNET_TRACER_HOME_ENV_VAR]: '/opt/datadog',
356
+ },
357
+ },
358
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
359
+ Runtime: 'dotnet6',
360
+ },
361
+ },
362
+ });
363
+ const result = yield (0, uninstrument_1.getUninstrumentedFunctionConfigs)(lambdaClientMock, cloudWatchLogsClientMock, ['arn:aws:lambda:us-east-1:000000000000:function:uninstrument'], undefined);
364
+ expect(result[0].updateFunctionConfigurationCommandInput).toMatchInlineSnapshot(`
365
+ {
366
+ "Environment": {
367
+ "Variables": {},
368
+ },
369
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:uninstrument",
370
+ }
371
+ `);
372
+ }));
373
+ });
374
+ describe('getUninstrumentedFunctionConfig', () => {
375
+ beforeEach(() => {
376
+ cloudWatchLogsClientMock.reset();
377
+ lambdaClientMock.reset();
378
+ jest.resetModules();
379
+ process.env = {};
380
+ (0, fixtures_1.mockLambdaClientCommands)(lambdaClientMock);
381
+ });
382
+ afterAll(() => {
383
+ process.env = OLD_ENV;
384
+ });
385
+ test('throws an error when it encounters an unsupported runtime', () => __awaiter(void 0, void 0, void 0, function* () {
386
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
387
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
388
+ config: {
389
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
390
+ Runtime: client_lambda_1.Runtime.go1x,
391
+ },
392
+ },
393
+ });
394
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
395
+ yield expect((0, uninstrument_1.getUninstrumentedFunctionConfig)(lambdaClientMock, cloudWatchLogsClientMock, config, undefined)).rejects.toThrow();
396
+ }));
397
+ test('returns configurations without updateRequest when no changes need to be made', () => __awaiter(void 0, void 0, void 0, function* () {
398
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
399
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
400
+ config: {
401
+ Environment: {
402
+ Variables: {},
403
+ },
404
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
405
+ Handler: 'index.handler',
406
+ Runtime: 'nodejs20.x',
407
+ },
408
+ },
409
+ });
410
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
411
+ const uninstrumentedConfig = yield (0, uninstrument_1.getUninstrumentedFunctionConfig)(lambdaClientMock, cloudWatchLogsClientMock, config, undefined);
412
+ expect(uninstrumentedConfig.updateFunctionConfigurationCommandInput).toBeUndefined();
413
+ }));
414
+ test('returns log group configuration subscription delete request when forwarderARN is set', () => __awaiter(void 0, void 0, void 0, function* () {
415
+ const logGroupName = '/aws/lambda/group';
416
+ loggroup.calculateLogGroupRemoveRequest.mockImplementation(() => ({
417
+ filterName: constants_2.SUBSCRIPTION_FILTER_NAME,
418
+ logGroupName,
419
+ }));
420
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
421
+ 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument': {
422
+ config: {
423
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument',
424
+ Handler: 'index.handler',
425
+ Runtime: 'nodejs20.x',
426
+ },
427
+ },
428
+ });
429
+ const config = yield (0, commons_1.getLambdaFunctionConfig)(lambdaClientMock, 'arn:aws:lambda:us-east-1:000000000000:function:uninstrument');
430
+ const result = yield (0, uninstrument_1.getUninstrumentedFunctionConfig)(lambdaClientMock, cloudWatchLogsClientMock, config, 'valid-forwarder-arn');
431
+ expect(result).toBeDefined();
432
+ expect(result.logGroupConfiguration).toMatchInlineSnapshot(`
433
+ {
434
+ "filterName": "${constants_2.SUBSCRIPTION_FILTER_NAME}",
435
+ "logGroupName": "${logGroupName}",
436
+ }
437
+ `);
438
+ }));
439
+ });
440
+ describe('getUninstrumentedFunctionConfigsFromRegEx', () => {
441
+ beforeEach(() => {
442
+ cloudWatchLogsClientMock.reset();
443
+ lambdaClientMock.reset();
444
+ jest.resetModules();
445
+ process.env = {};
446
+ (0, fixtures_1.mockLambdaClientCommands)(lambdaClientMock);
447
+ });
448
+ afterAll(() => {
449
+ process.env = OLD_ENV;
450
+ });
451
+ test('returns the update request for each function that matches the pattern', () => __awaiter(void 0, void 0, void 0, function* () {
452
+ (0, fixtures_1.mockLambdaConfigurations)(lambdaClientMock, {
453
+ 'arn:aws:lambda:us-east-1:000000000000:function:autoinstrument-scooby': {
454
+ config: {
455
+ Environment: {
456
+ Variables: {
457
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
458
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'true',
459
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'index.handler',
460
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
461
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
462
+ [constants_1.SERVICE_ENV_VAR]: 'middletier',
463
+ [constants_1.SITE_ENV_VAR]: 'datadoghq.com',
464
+ [constants_2.TRACE_ENABLED_ENV_VAR]: 'true',
465
+ [constants_1.VERSION_ENV_VAR]: '0.2',
466
+ USER_VARIABLE: 'shouldnt be deleted by uninstrumentation',
467
+ },
468
+ },
469
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:autoinstrument-scooby',
470
+ FunctionName: 'autoinstrument-scooby',
471
+ Handler: '/opt/nodejs/node_modules/datadog-lambda-js/handler.handler',
472
+ Runtime: 'nodejs20.x',
473
+ },
474
+ },
475
+ 'arn:aws:lambda:us-east-1:000000000000:function:autoinstrument-scrapy': {
476
+ config: {
477
+ Environment: {
478
+ Variables: {
479
+ [constants_1.API_KEY_ENV_VAR]: '1234',
480
+ [constants_1.ENVIRONMENT_ENV_VAR]: 'staging',
481
+ [constants_2.FLUSH_TO_LOG_ENV_VAR]: 'true',
482
+ [constants_2.LAMBDA_HANDLER_ENV_VAR]: 'index.handler',
483
+ [constants_2.LOG_LEVEL_ENV_VAR]: 'debug',
484
+ [constants_2.MERGE_XRAY_TRACES_ENV_VAR]: 'false',
485
+ },
486
+ },
487
+ FunctionArn: 'arn:aws:lambda:us-east-1:000000000000:function:autoinstrument-scrapy',
488
+ FunctionName: 'autoinstrument-scrapy',
489
+ Handler: '/opt/nodejs/node_modules/datadog-lambda-js/handler.handler',
490
+ Runtime: 'nodejs20.x',
491
+ },
492
+ },
493
+ });
494
+ const result = yield (0, uninstrument_1.getUninstrumentedFunctionConfigsFromRegEx)(lambdaClientMock, cloudWatchLogsClientMock, 'autoinstrument-scr.', undefined);
495
+ expect(result.length).toEqual(1);
496
+ expect(result[0].updateFunctionConfigurationCommandInput).toMatchInlineSnapshot(`
497
+ {
498
+ "Environment": {
499
+ "Variables": {},
500
+ },
501
+ "FunctionName": "arn:aws:lambda:us-east-1:000000000000:function:autoinstrument-scrapy",
502
+ "Handler": "index.handler",
503
+ }
504
+ `);
505
+ }));
506
+ test('fails when retry count is exceeded', () => __awaiter(void 0, void 0, void 0, function* () {
507
+ lambdaClientMock.on(client_lambda_1.ListFunctionsCommand).rejects('ListFunctionsError');
508
+ const uninstrumentedConfig = (0, uninstrument_1.getUninstrumentedFunctionConfigsFromRegEx)(lambdaClientMock, cloudWatchLogsClientMock, 'fake-pattern', undefined);
509
+ yield expect(uninstrumentedConfig).rejects.toThrow('ListFunctionsError');
510
+ }));
511
+ });
512
+ });
513
+ //# sourceMappingURL=uninstrument.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstrument.test.js","sourceRoot":"","sources":["../../../../../src/commands/lambda/__tests__/functions/uninstrument.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("../../constants");
4
+ const versionChecker_1 = require("../../functions/versionChecker");
5
+ describe('Test extension and trace version checker', () => {
6
+ test.each `
7
+ runtimeType | extensionVersion | result
8
+ ${constants_1.RuntimeType.JAVA} | ${27} | ${true}
9
+ ${constants_1.RuntimeType.JAVA} | ${23} | ${false}
10
+ ${constants_1.RuntimeType.JAVA} | ${undefined} | ${false}
11
+ ${constants_1.RuntimeType.DOTNET} | ${27} | ${true}
12
+ ${constants_1.RuntimeType.DOTNET} | ${23} | ${false}
13
+ ${constants_1.RuntimeType.DOTNET} | ${undefined} | ${false}
14
+ ${constants_1.RuntimeType.NODE} | ${27} | ${true}
15
+ ${constants_1.RuntimeType.PYTHON} | ${23} | ${true}
16
+ `('should function isExtensionSupportUniversalInstrumentation() return $result if runtimeType=$runtimeType and extensionVersion=$extensionVersion', ({ runtimeType, extensionVersion, result }) => {
17
+ expect((0, versionChecker_1.isExtensionCompatibleWithUniversalInstrumentation)(runtimeType, extensionVersion)).toEqual(result);
18
+ });
19
+ test.each `
20
+ runtimeType | traceVersion | result
21
+ ${constants_1.RuntimeType.JAVA} | ${5} | ${true}
22
+ ${constants_1.RuntimeType.JAVA} | ${4} | ${false}
23
+ ${constants_1.RuntimeType.JAVA} | ${undefined} | ${true}
24
+ ${constants_1.RuntimeType.DOTNET} | ${3} | ${false}
25
+ ${constants_1.RuntimeType.DOTNET} | ${4} | ${true}
26
+ ${constants_1.RuntimeType.DOTNET} | ${undefined} | ${true}
27
+ ${constants_1.RuntimeType.NODE} | ${8} | ${true}
28
+ ${constants_1.RuntimeType.PYTHON} | ${2} | ${true}
29
+ `('should function isExtensionCompatibleWithTrace() return $result if runtimeType=$runtimeType and traceVersion=$traceVersion', ({ runtimeType, traceVersion, result }) => {
30
+ expect((0, versionChecker_1.isTracerCompatibleWithExtension)(runtimeType, traceVersion)).toEqual(result);
31
+ });
32
+ });
33
+ //# sourceMappingURL=versionChecker.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versionChecker.test.js","sourceRoot":"","sources":["../../../../../src/commands/lambda/__tests__/functions/versionChecker.test.ts"],"names":[],"mappings":";;AAAA,+CAA2C;AAC3C,mEAGuC;AAEvC,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IACxD,IAAI,CAAC,IAAI,CAAA;;MAEL,uBAAW,CAAC,IAAI,QAAQ,EAAE,iBAAiB,IAAI;MAC/C,uBAAW,CAAC,IAAI,QAAQ,EAAE,iBAAiB,KAAK;MAChD,uBAAW,CAAC,IAAI,QAAQ,SAAS,UAAU,KAAK;MAChD,uBAAW,CAAC,MAAM,MAAM,EAAE,iBAAiB,IAAI;MAC/C,uBAAW,CAAC,MAAM,MAAM,EAAE,iBAAiB,KAAK;MAChD,uBAAW,CAAC,MAAM,MAAM,SAAS,UAAU,KAAK;MAChD,uBAAW,CAAC,IAAI,QAAQ,EAAE,iBAAiB,IAAI;MAC/C,uBAAW,CAAC,MAAM,MAAM,EAAE,iBAAiB,IAAI;GAClD,CACC,gJAAgJ,EAChJ,CAAC,EAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAC,EAAE,EAAE;QAC1C,MAAM,CAAC,IAAA,kEAAiD,EAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1G,CAAC,CACF,CAAA;IAED,IAAI,CAAC,IAAI,CAAA;;MAEL,uBAAW,CAAC,IAAI,QAAQ,CAAC,cAAc,IAAI;MAC3C,uBAAW,CAAC,IAAI,QAAQ,CAAC,cAAc,KAAK;MAC5C,uBAAW,CAAC,IAAI,QAAQ,SAAS,MAAM,IAAI;MAC3C,uBAAW,CAAC,MAAM,MAAM,CAAC,cAAc,KAAK;MAC5C,uBAAW,CAAC,MAAM,MAAM,CAAC,cAAc,IAAI;MAC3C,uBAAW,CAAC,MAAM,MAAM,SAAS,MAAM,IAAI;MAC3C,uBAAW,CAAC,IAAI,QAAQ,CAAC,cAAc,IAAI;MAC3C,uBAAW,CAAC,MAAM,MAAM,CAAC,cAAc,IAAI;GAC9C,CACC,4HAA4H,EAC5H,CAAC,EAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAC,EAAE,EAAE;QACtC,MAAM,CAAC,IAAA,gDAA+B,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACpF,CAAC,CACF,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ import 'aws-sdk-client-mock-jest';