@datadog/datadog-ci 2.18.1 → 2.19.1

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 (283) hide show
  1. package/README.md +16 -10
  2. package/dist/cli.d.ts +3 -1
  3. package/dist/cli.js +9 -2
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/cloud-run/flare.d.ts +38 -7
  6. package/dist/commands/cloud-run/flare.js +304 -39
  7. package/dist/commands/cloud-run/flare.js.map +1 -1
  8. package/dist/commands/cloud-run/renderer.js +5 -1
  9. package/dist/commands/cloud-run/renderer.js.map +1 -1
  10. package/dist/commands/dsyms/renderer.js +6 -6
  11. package/dist/commands/dsyms/renderer.js.map +1 -1
  12. package/dist/commands/dsyms/upload.d.ts +5 -5
  13. package/dist/commands/dsyms/upload.js +66 -42
  14. package/dist/commands/dsyms/upload.js.map +1 -1
  15. package/dist/commands/dsyms/utils.d.ts +1 -1
  16. package/dist/commands/dsyms/utils.js +3 -3
  17. package/dist/commands/dsyms/utils.js.map +1 -1
  18. package/dist/commands/flutter-symbols/helpers.js +8 -4
  19. package/dist/commands/flutter-symbols/helpers.js.map +1 -1
  20. package/dist/commands/flutter-symbols/renderer.js +2 -2
  21. package/dist/commands/flutter-symbols/renderer.js.map +1 -1
  22. package/dist/commands/flutter-symbols/upload.d.ts +13 -13
  23. package/dist/commands/flutter-symbols/upload.js +66 -66
  24. package/dist/commands/flutter-symbols/upload.js.map +1 -1
  25. package/dist/commands/gate/api.js +4 -2
  26. package/dist/commands/gate/api.js.map +1 -1
  27. package/dist/commands/gate/evaluate.d.ts +18 -6
  28. package/dist/commands/gate/evaluate.js +116 -40
  29. package/dist/commands/gate/evaluate.js.map +1 -1
  30. package/dist/commands/gate/interfaces.d.ts +5 -0
  31. package/dist/commands/gate/renderer.js +16 -14
  32. package/dist/commands/gate/renderer.js.map +1 -1
  33. package/dist/commands/gate/utils.d.ts +1 -0
  34. package/dist/commands/gate/utils.js +8 -4
  35. package/dist/commands/gate/utils.js.map +1 -1
  36. package/dist/commands/git-metadata/git.d.ts +1 -1
  37. package/dist/commands/git-metadata/git.js +7 -3
  38. package/dist/commands/git-metadata/git.js.map +1 -1
  39. package/dist/commands/git-metadata/gitdb.d.ts +1 -1
  40. package/dist/commands/git-metadata/gitdb.js +7 -7
  41. package/dist/commands/git-metadata/gitdb.js.map +1 -1
  42. package/dist/commands/git-metadata/index.js +5 -1
  43. package/dist/commands/git-metadata/index.js.map +1 -1
  44. package/dist/commands/git-metadata/library.d.ts +1 -1
  45. package/dist/commands/git-metadata/library.js +13 -13
  46. package/dist/commands/git-metadata/library.js.map +1 -1
  47. package/dist/commands/git-metadata/upload.d.ts +5 -5
  48. package/dist/commands/git-metadata/upload.js +30 -32
  49. package/dist/commands/git-metadata/upload.js.map +1 -1
  50. package/dist/commands/junit/api.js +4 -4
  51. package/dist/commands/junit/api.js.map +1 -1
  52. package/dist/commands/junit/id.js +1 -1
  53. package/dist/commands/junit/id.js.map +1 -1
  54. package/dist/commands/junit/renderer.d.ts +1 -1
  55. package/dist/commands/junit/renderer.js +3 -3
  56. package/dist/commands/junit/renderer.js.map +1 -1
  57. package/dist/commands/junit/upload.d.ts +12 -11
  58. package/dist/commands/junit/upload.js +74 -63
  59. package/dist/commands/junit/upload.js.map +1 -1
  60. package/dist/commands/junit/utils.d.ts +1 -2
  61. package/dist/commands/junit/utils.js +5 -10
  62. package/dist/commands/junit/utils.js.map +1 -1
  63. package/dist/commands/lambda/constants.d.ts +3 -3
  64. package/dist/commands/lambda/constants.js +4 -49
  65. package/dist/commands/lambda/constants.js.map +1 -1
  66. package/dist/commands/lambda/flare.d.ts +16 -30
  67. package/dist/commands/lambda/flare.js +90 -146
  68. package/dist/commands/lambda/flare.js.map +1 -1
  69. package/dist/commands/lambda/functions/commons.d.ts +3 -3
  70. package/dist/commands/lambda/functions/commons.js +19 -14
  71. package/dist/commands/lambda/functions/commons.js.map +1 -1
  72. package/dist/commands/lambda/functions/instrument.js +28 -28
  73. package/dist/commands/lambda/functions/instrument.js.map +1 -1
  74. package/dist/commands/lambda/functions/uninstrument.js +9 -9
  75. package/dist/commands/lambda/functions/uninstrument.js.map +1 -1
  76. package/dist/commands/lambda/functions/versionChecker.d.ts +2 -2
  77. package/dist/commands/lambda/instrument.d.ts +22 -20
  78. package/dist/commands/lambda/instrument.js +66 -60
  79. package/dist/commands/lambda/instrument.js.map +1 -1
  80. package/dist/commands/lambda/loggroup.js +8 -8
  81. package/dist/commands/lambda/loggroup.js.map +1 -1
  82. package/dist/commands/lambda/prompt.d.ts +1 -2
  83. package/dist/commands/lambda/prompt.js +20 -38
  84. package/dist/commands/lambda/prompt.js.map +1 -1
  85. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.d.ts +2 -0
  86. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.js +11 -0
  87. package/dist/commands/lambda/renderers/__mocks__/instrument-uninstrument-renderer.js.map +1 -0
  88. package/dist/commands/lambda/renderers/common-renderer.js +2 -2
  89. package/dist/commands/lambda/renderers/common-renderer.js.map +1 -1
  90. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.d.ts +2 -2
  91. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.js +50 -42
  92. package/dist/commands/lambda/renderers/instrument-uninstrument-renderer.js.map +1 -1
  93. package/dist/commands/lambda/tags.js +7 -7
  94. package/dist/commands/lambda/tags.js.map +1 -1
  95. package/dist/commands/lambda/uninstrument.d.ts +25 -7
  96. package/dist/commands/lambda/uninstrument.js +53 -45
  97. package/dist/commands/lambda/uninstrument.js.map +1 -1
  98. package/dist/commands/metric/metric.d.ts +4 -3
  99. package/dist/commands/metric/metric.js +10 -9
  100. package/dist/commands/metric/metric.js.map +1 -1
  101. package/dist/commands/react-native/codepush.d.ts +11 -10
  102. package/dist/commands/react-native/codepush.js +17 -19
  103. package/dist/commands/react-native/codepush.js.map +1 -1
  104. package/dist/commands/react-native/interfaces.d.ts +1 -1
  105. package/dist/commands/react-native/renderer.js +6 -6
  106. package/dist/commands/react-native/renderer.js.map +1 -1
  107. package/dist/commands/react-native/upload.d.ts +12 -12
  108. package/dist/commands/react-native/upload.js +67 -45
  109. package/dist/commands/react-native/upload.js.map +1 -1
  110. package/dist/commands/react-native/utils.js +2 -1
  111. package/dist/commands/react-native/utils.js.map +1 -1
  112. package/dist/commands/react-native/validation.js +1 -1
  113. package/dist/commands/react-native/validation.js.map +1 -1
  114. package/dist/commands/react-native/xcode.d.ts +6 -6
  115. package/dist/commands/react-native/xcode.js +33 -31
  116. package/dist/commands/react-native/xcode.js.map +1 -1
  117. package/dist/commands/sarif/api.js +5 -5
  118. package/dist/commands/sarif/api.js.map +1 -1
  119. package/dist/commands/sarif/renderer.d.ts +1 -1
  120. package/dist/commands/sarif/renderer.js +1 -1
  121. package/dist/commands/sarif/renderer.js.map +1 -1
  122. package/dist/commands/sarif/upload.d.ts +6 -6
  123. package/dist/commands/sarif/upload.js +46 -37
  124. package/dist/commands/sarif/upload.js.map +1 -1
  125. package/dist/commands/sbom/api.d.ts +7 -0
  126. package/dist/commands/sbom/api.js +49 -0
  127. package/dist/commands/sbom/api.js.map +1 -0
  128. package/dist/commands/sbom/cli.d.ts +1 -0
  129. package/dist/commands/sbom/cli.js +5 -0
  130. package/dist/commands/sbom/cli.js.map +1 -0
  131. package/dist/commands/sbom/constants.d.ts +2 -0
  132. package/dist/commands/sbom/constants.js +6 -0
  133. package/dist/commands/sbom/constants.js.map +1 -0
  134. package/dist/commands/sbom/json-schema/cyclonedx/bom-1.4.schema.json +1687 -0
  135. package/dist/commands/sbom/json-schema/jsf/jsf-0.82.schema.json +244 -0
  136. package/dist/commands/sbom/json-schema/spdx/spdx.schema.json +507 -0
  137. package/dist/commands/sbom/protobuf/bom-1.4.d.ts +11788 -0
  138. package/dist/commands/sbom/protobuf/bom-1.4.js +5161 -0
  139. package/dist/commands/sbom/protobuf/bom-1.4.js.map +1 -0
  140. package/dist/commands/sbom/protobuf/custom_message.d.ts +11 -0
  141. package/dist/commands/sbom/protobuf/custom_message.js +3 -0
  142. package/dist/commands/sbom/protobuf/custom_message.js.map +1 -0
  143. package/dist/commands/sbom/protobuf/google/protobuf/duration.d.ts +110 -0
  144. package/dist/commands/sbom/protobuf/google/protobuf/duration.js +126 -0
  145. package/dist/commands/sbom/protobuf/google/protobuf/duration.js.map +1 -0
  146. package/dist/commands/sbom/protobuf/google/protobuf/timestamp.d.ts +139 -0
  147. package/dist/commands/sbom/protobuf/google/protobuf/timestamp.js +126 -0
  148. package/dist/commands/sbom/protobuf/google/protobuf/timestamp.js.map +1 -0
  149. package/dist/commands/sbom/protobuf/sbom_intake.d.ts +53 -0
  150. package/dist/commands/sbom/protobuf/sbom_intake.js +383 -0
  151. package/dist/commands/sbom/protobuf/sbom_intake.js.map +1 -0
  152. package/dist/commands/sbom/types.d.ts +4 -0
  153. package/dist/commands/sbom/types.js +3 -0
  154. package/dist/commands/sbom/types.js.map +1 -0
  155. package/dist/commands/sbom/upload.d.ts +16 -0
  156. package/dist/commands/sbom/upload.js +134 -0
  157. package/dist/commands/sbom/upload.js.map +1 -0
  158. package/dist/commands/sbom/validation.d.ts +12 -0
  159. package/dist/commands/sbom/validation.js +51 -0
  160. package/dist/commands/sbom/validation.js.map +1 -0
  161. package/dist/commands/sourcemaps/renderer.js +6 -6
  162. package/dist/commands/sourcemaps/renderer.js.map +1 -1
  163. package/dist/commands/sourcemaps/upload.d.ts +10 -10
  164. package/dist/commands/sourcemaps/upload.js +61 -38
  165. package/dist/commands/sourcemaps/upload.js.map +1 -1
  166. package/dist/commands/sourcemaps/validation.js +4 -4
  167. package/dist/commands/sourcemaps/validation.js.map +1 -1
  168. package/dist/commands/stepfunctions/awsCommands.js +10 -10
  169. package/dist/commands/stepfunctions/awsCommands.js.map +1 -1
  170. package/dist/commands/stepfunctions/helpers.d.ts +4 -4
  171. package/dist/commands/stepfunctions/helpers.js +4 -4
  172. package/dist/commands/stepfunctions/helpers.js.map +1 -1
  173. package/dist/commands/stepfunctions/instrument.d.ts +5 -4
  174. package/dist/commands/stepfunctions/instrument.js +30 -31
  175. package/dist/commands/stepfunctions/instrument.js.map +1 -1
  176. package/dist/commands/stepfunctions/uninstrument.d.ts +6 -1
  177. package/dist/commands/stepfunctions/uninstrument.js +23 -23
  178. package/dist/commands/stepfunctions/uninstrument.js.map +1 -1
  179. package/dist/commands/synthetics/api.d.ts +1 -1
  180. package/dist/commands/synthetics/api.js +11 -11
  181. package/dist/commands/synthetics/api.js.map +1 -1
  182. package/dist/commands/synthetics/errors.d.ts +3 -3
  183. package/dist/commands/synthetics/index.js +5 -1
  184. package/dist/commands/synthetics/index.js.map +1 -1
  185. package/dist/commands/synthetics/interfaces.d.ts +6 -6
  186. package/dist/commands/synthetics/interfaces.js +2 -2
  187. package/dist/commands/synthetics/interfaces.js.map +1 -1
  188. package/dist/commands/synthetics/mobile.d.ts +1 -1
  189. package/dist/commands/synthetics/mobile.js +26 -20
  190. package/dist/commands/synthetics/mobile.js.map +1 -1
  191. package/dist/commands/synthetics/reporters/default.d.ts +2 -2
  192. package/dist/commands/synthetics/reporters/default.js +14 -14
  193. package/dist/commands/synthetics/reporters/default.js.map +1 -1
  194. package/dist/commands/synthetics/reporters/junit.d.ts +2 -2
  195. package/dist/commands/synthetics/reporters/junit.js +11 -11
  196. package/dist/commands/synthetics/reporters/junit.js.map +1 -1
  197. package/dist/commands/synthetics/run-tests-command.d.ts +21 -19
  198. package/dist/commands/synthetics/run-tests-command.js +108 -42
  199. package/dist/commands/synthetics/run-tests-command.js.map +1 -1
  200. package/dist/commands/synthetics/run-tests-lib.d.ts +1 -1
  201. package/dist/commands/synthetics/run-tests-lib.js +16 -16
  202. package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
  203. package/dist/commands/synthetics/tunnel/crypto.js +3 -3
  204. package/dist/commands/synthetics/tunnel/crypto.js.map +1 -1
  205. package/dist/commands/synthetics/tunnel/tunnel.js +11 -11
  206. package/dist/commands/synthetics/tunnel/tunnel.js.map +1 -1
  207. package/dist/commands/synthetics/tunnel/websocket.d.ts +1 -0
  208. package/dist/commands/synthetics/tunnel/websocket.js +7 -3
  209. package/dist/commands/synthetics/tunnel/websocket.js.map +1 -1
  210. package/dist/commands/synthetics/upload-application-command.d.ts +10 -8
  211. package/dist/commands/synthetics/upload-application-command.js +36 -13
  212. package/dist/commands/synthetics/upload-application-command.js.map +1 -1
  213. package/dist/commands/synthetics/utils.d.ts +12 -12
  214. package/dist/commands/synthetics/utils.js +51 -47
  215. package/dist/commands/synthetics/utils.js.map +1 -1
  216. package/dist/commands/tag/tag.d.ts +4 -3
  217. package/dist/commands/tag/tag.js +10 -9
  218. package/dist/commands/tag/tag.js.map +1 -1
  219. package/dist/commands/trace/api.js +4 -4
  220. package/dist/commands/trace/api.js.map +1 -1
  221. package/dist/commands/trace/interfaces.d.ts +1 -1
  222. package/dist/commands/trace/trace.d.ts +5 -4
  223. package/dist/commands/trace/trace.js +11 -10
  224. package/dist/commands/trace/trace.js.map +1 -1
  225. package/dist/commands/version/cli.js +6 -5
  226. package/dist/commands/version/cli.js.map +1 -1
  227. package/dist/constants.d.ts +7 -0
  228. package/dist/constants.js +52 -1
  229. package/dist/constants.js.map +1 -1
  230. package/dist/helpers/api.d.ts +5 -0
  231. package/dist/helpers/api.js +16 -0
  232. package/dist/helpers/api.js.map +1 -0
  233. package/dist/helpers/base-intake-url.d.ts +1 -1
  234. package/dist/helpers/ci.d.ts +13 -13
  235. package/dist/helpers/ci.js +17 -17
  236. package/dist/helpers/ci.js.map +1 -1
  237. package/dist/helpers/config.d.ts +5 -0
  238. package/dist/helpers/config.js +3 -0
  239. package/dist/helpers/config.js.map +1 -0
  240. package/dist/helpers/flare.d.ts +22 -0
  241. package/dist/helpers/flare.js +118 -8
  242. package/dist/helpers/flare.js.map +1 -1
  243. package/dist/helpers/git/format-git-sourcemaps-data.js +7 -3
  244. package/dist/helpers/git/format-git-sourcemaps-data.js.map +1 -1
  245. package/dist/helpers/git/format-git-span-data.js +6 -6
  246. package/dist/helpers/git/format-git-span-data.js.map +1 -1
  247. package/dist/helpers/git/get-git-data.js +3 -3
  248. package/dist/helpers/git/get-git-data.js.map +1 -1
  249. package/dist/helpers/interfaces.d.ts +9 -3
  250. package/dist/helpers/logger.js +1 -1
  251. package/dist/helpers/logger.js.map +1 -1
  252. package/dist/helpers/plist.d.ts +1 -1
  253. package/dist/helpers/plist.js +1 -1
  254. package/dist/helpers/plist.js.map +1 -1
  255. package/dist/helpers/prompt.d.ts +1 -0
  256. package/dist/helpers/prompt.js +20 -2
  257. package/dist/helpers/prompt.js.map +1 -1
  258. package/dist/helpers/renderer.d.ts +24 -0
  259. package/dist/helpers/renderer.js +60 -9
  260. package/dist/helpers/renderer.js.map +1 -1
  261. package/dist/helpers/retry.d.ts +1 -1
  262. package/dist/helpers/retry.js +3 -3
  263. package/dist/helpers/retry.js.map +1 -1
  264. package/dist/helpers/tags.d.ts +8 -0
  265. package/dist/helpers/tags.js +27 -1
  266. package/dist/helpers/tags.js.map +1 -1
  267. package/dist/helpers/upload.js +3 -3
  268. package/dist/helpers/upload.js.map +1 -1
  269. package/dist/helpers/user-provided-git.js +6 -6
  270. package/dist/helpers/user-provided-git.js.map +1 -1
  271. package/dist/helpers/utils.d.ts +4 -5
  272. package/dist/helpers/utils.js +18 -25
  273. package/dist/helpers/utils.js.map +1 -1
  274. package/dist/helpers/validation.d.ts +3 -1
  275. package/dist/helpers/validation.js +27 -1
  276. package/dist/helpers/validation.js.map +1 -1
  277. package/dist/helpers/version.d.ts +4 -0
  278. package/dist/helpers/version.js +9 -0
  279. package/dist/helpers/version.js.map +1 -0
  280. package/dist/index.d.ts +4 -4
  281. package/dist/index.js +11 -8
  282. package/dist/index.js.map +1 -1
  283. package/package.json +23 -13
package/README.md CHANGED
@@ -144,16 +144,22 @@ yarn prepack
144
144
  To release a new version of `datadog-ci`:
145
145
 
146
146
  1. Create a new branch for the version upgrade.
147
- 2. Update the `package.json` version, commit the change `vX.X.X` and tag it with `git tag vX.X.X`, based on the version you are upgrading to. You may refer to [Semantic Versioning](https://semver.org/#summary) to determine what level to increment.
148
- 3. Push the branch along with the tag to the upstream (GitHub) with `git push --tags origin name-of-the-branch`, create a Pull Request with the changes introduced in the description details, and get at least one approval. For example, see this [sample pull request](https://github.com/DataDog/datadog-ci/pull/78).
149
- 4. Once you've received at least one approval, merge the Pull Request **with the "Create a merge commit" strategy**.
150
- 5. Create a GitHub Release from the [Tags page](https://github.com/DataDog/datadog-ci/tags) with the description of changes introduced.
151
- 6. Once the release has been created, a GitHub Action publishes the package. Make sure the job succeeds.
152
- 7. When the package has been published, go to the [Datadog GitLab pipelines](https://gitlab.ddbuild.io/DataDog/datadog-ci/-/pipelines), find the pipeline for your tag, and start the `build` stage to run the Docker image build jobs. Once the jobs pass, the `release` stage automatically triggers. Make sure all the jobs succeed.
153
- 8. If the release introduced any **changes in the** `synthetics` **command**, you have to upgrade `datadog-ci` in the following projects:
154
- - [GitHub Action](https://github.com/DataDog/synthetics-ci-github-action)
155
- - [CircleCI Orb](https://github.com/DataDog/synthetics-test-automation-circleci-orb)
156
- - [Azure DevOps Extension](https://github.com/DataDog/datadog-ci-azure-devops)
147
+ 2. Update the `package.json` version to `X.X.X`, commit the change `vX.X.X` and tag it with `git tag vX.X.X`.
148
+ - You may refer to [Semantic Versioning](https://semver.org/#summary) to determine what level to increment.
149
+ 4. Push the branch **along with the tag** with `git push --tags origin name-of-the-branch`, create a PR, and get at least one approval.
150
+ - [Create a draft GitHub Release (prefilled link)](https://github.com/DataDog/datadog-ci/releases/new?title=%3Csame-as-tag%3E&body=%3C!--%20Use%20the%20%22Generate%20release%20notes%22%20button%20at%20the%20top%20right,%20then%20categorize%20the%20changes%20--%3E) and **save it as a draft**.
151
+ - Please categorize the changes by product or "Documentation" / "Dependencies" / "Chores". You can find commands grouped by product in the [`.github/CODEOWNERS`](https://github.com/DataDog/datadog-ci/blob/master/.github/CODEOWNERS) file.
152
+ - Copy the categorized release notes, and paste them in the description of your PR. This ensures the feature PRs have a link to your release PR.
153
+ - See this [example PR](https://github.com/DataDog/datadog-ci/pull/1047).
154
+ 5. Once you've received at least one approval, merge the PR **with the "Create a merge commit" strategy**.
155
+ - You may notice that some **_GitLab_** jobs are pending, this is expected (see **step 7**). You can merge the PR when *only those jobs* are left.
156
+ - The "Create a merge commit" strategy is required for **step 7**, and for the GitHub Release to point to an existing commit once the PR is merged.
157
+ 6. Go back to your draft GitHub Release, and publish it.
158
+ 7. Once the release is published, [this GitHub Workflow](https://github.com/DataDog/datadog-ci/actions/workflows/release.yml) publishes the NPM package and adds binaries to the release's assets. Wait for it to succeed.
159
+ 8. When the NPM package is published, go to the [_GitLab_ pipelines](https://gitlab.ddbuild.io/DataDog/datadog-ci/-/pipelines?scope=tags&status=manual), find the pipeline for your tag, and start the `build` stage to run the Docker image build jobs.
160
+ - Make sure all the jobs and downstream jobs succeed.
161
+
162
+ Thanks for creating a release! 🎉
157
163
 
158
164
  </details>
159
165
 
package/dist/cli.d.ts CHANGED
@@ -1 +1,3 @@
1
- export {};
1
+ import { Cli } from 'clipanion';
2
+ declare const cli: Cli<import("clipanion").BaseContext>;
3
+ export { cli };
package/dist/cli.js CHANGED
@@ -4,9 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.cli = void 0;
7
8
  const fs_1 = __importDefault(require("fs"));
8
9
  const clipanion_1 = require("clipanion");
9
- const BETA_COMMANDS = ['gate'];
10
+ const version_1 = require("./helpers/version");
11
+ const BETA_COMMANDS = ['gate', 'sbom'];
10
12
  const onError = (err) => {
11
13
  console.log(err);
12
14
  process.exitCode = 1;
@@ -16,8 +18,11 @@ process.on('unhandledRejection', onError);
16
18
  const cli = new clipanion_1.Cli({
17
19
  binaryLabel: 'Datadog CI',
18
20
  binaryName: 'datadog-ci',
19
- binaryVersion: require('../package.json').version,
21
+ binaryVersion: version_1.version,
20
22
  });
23
+ exports.cli = cli;
24
+ cli.register(clipanion_1.Builtins.HelpCommand);
25
+ cli.register(clipanion_1.Builtins.VersionCommand);
21
26
  const commandsPath = `${__dirname}/commands`;
22
27
  for (const commandFolder of fs_1.default.readdirSync(commandsPath)) {
23
28
  const betaCommandsEnabled = process.env.DD_BETA_COMMANDS_ENABLED === '1' || process.env.DD_BETA_COMMANDS_ENABLED === 'true';
@@ -26,6 +31,8 @@ for (const commandFolder of fs_1.default.readdirSync(commandsPath)) {
26
31
  }
27
32
  const commandPath = `${commandsPath}/${commandFolder}`;
28
33
  if (fs_1.default.statSync(commandPath).isDirectory()) {
34
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
35
+ ;
29
36
  require(`${commandPath}/cli`).forEach((command) => cli.register(command));
30
37
  }
31
38
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;AAAA,4CAAmB;AAEnB,yCAA6B;AAG7B,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,CAAA;AAE9B,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,EAAE;IAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAA;AAED,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;AACxC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;AAEzC,MAAM,GAAG,GAAG,IAAI,eAAG,CAAC;IAClB,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO;CAClD,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,GAAG,SAAS,WAAW,CAAA;AAC5C,KAAK,MAAM,aAAa,IAAI,YAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IACxD,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,CAAA;IACjG,IAAI,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,EAAE;QACjE,SAAQ;KACT;IACD,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,aAAa,EAAE,CAAA;IACtD,IAAI,YAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE;QAC1C,OAAO,CAAC,GAAG,WAAW,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAqB,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;KACxF;CACF;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,KAAK,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAA;CACH"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAmB;AAEnB,yCAAuC;AAGvC,+CAAyC;AAEzC,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEtC,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,EAAE;IAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;AACtB,CAAC,CAAA;AAED,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;AACxC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;AAEzC,MAAM,GAAG,GAAG,IAAI,eAAG,CAAC;IAClB,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,iBAAO;CACvB,CAAC,CAAA;AA2BM,kBAAG;AAzBX,GAAG,CAAC,QAAQ,CAAC,oBAAQ,CAAC,WAAW,CAAC,CAAA;AAClC,GAAG,CAAC,QAAQ,CAAC,oBAAQ,CAAC,cAAc,CAAC,CAAA;AAErC,MAAM,YAAY,GAAG,GAAG,SAAS,WAAW,CAAA;AAC5C,KAAK,MAAM,aAAa,IAAI,YAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IACxD,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,CAAA;IACjG,IAAI,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,EAAE;QACjE,SAAQ;KACT;IACD,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,aAAa,EAAE,CAAA;IACtD,IAAI,YAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,EAAE;QAC1C,8DAA8D;QAC9D,CAAC;QAAC,OAAO,CAAC,GAAG,WAAW,MAAM,CAAoB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;KAC/F;CACF;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,KAAK,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAA;CACH"}
@@ -6,20 +6,24 @@ import { Command } from 'clipanion';
6
6
  import { CloudRunLog } from './interfaces';
7
7
  export declare const MAX_LOGS = 1000;
8
8
  export declare class CloudRunFlareCommand extends Command {
9
+ static paths: string[][];
10
+ static usage: import("clipanion").Usage;
9
11
  private isDryRun;
10
12
  private withLogs;
11
- private service?;
12
- private project?;
13
- private region?;
14
- private caseId?;
15
- private email?;
13
+ private service;
14
+ private project;
15
+ private region;
16
+ private caseId;
17
+ private email;
18
+ private start;
19
+ private end;
16
20
  private apiKey?;
17
21
  /**
18
22
  * Entry point for the `cloud-run flare` command.
19
23
  * Gathers Cloud Run service configuration and sends it to Datadog.
20
24
  * @returns 0 if the command ran successfully, 1 otherwise.
21
25
  */
22
- execute(): Promise<1 | 0>;
26
+ execute(): Promise<0 | 1>;
23
27
  }
24
28
  /**
25
29
  * Check if the user is authenticated with GCP.
@@ -43,18 +47,45 @@ export declare const getCloudRunServiceConfig: (runClient: ServicesClient, servi
43
47
  * @returns masked config
44
48
  */
45
49
  export declare const maskConfig: (config: any) => IService;
50
+ /**
51
+ * Summarizes the Cloud Run config as to not flood the terminal
52
+ * @param config
53
+ * @returns a summarized config
54
+ */
55
+ export declare const summarizeConfig: (config: IService) => any;
46
56
  /**
47
57
  * Gets recent logs
48
58
  * @param logClient Logging client
49
59
  * @param serviceId
50
60
  * @param location
61
+ * @param startMillis start time in milliseconds or undefined if no start time is specified
62
+ * @param endMillis end time in milliseconds or undefined if no end time is specified
51
63
  * @param severityFilter if included, adds the string to the filter
52
64
  * @returns array of logs as CloudRunLog interfaces
53
65
  */
54
- export declare const getLogs: (logClient: Logging, serviceId: string, location: string, severityFilter?: string | undefined) => Promise<CloudRunLog[]>;
66
+ export declare const getLogs: (logClient: Logging, serviceId: string, location: string, startMillis?: number, endMillis?: number, severityFilter?: string) => Promise<CloudRunLog[]>;
55
67
  /**
56
68
  * Save logs in a CSV format
57
69
  * @param logs array of logs stored as CloudRunLog interfaces
58
70
  * @param filePath path to save the CSV file
59
71
  */
60
72
  export declare const saveLogsFile: (logs: CloudRunLog[], filePath: string) => void;
73
+ /**
74
+ * Gets recent revisions for a cloud-run service
75
+ * @param service
76
+ * @param location
77
+ * @param project
78
+ * @returns a string array of recent revisions and their deployment timestamp
79
+ */
80
+ export declare const getRecentRevisions: (service: string, location: string, project: string) => Promise<string[]>;
81
+ /**
82
+ * Generate the insights file
83
+ * @param insightsFilePath path to the insights file
84
+ * @param isDryRun whether or not this is a dry run
85
+ * @param config Cloud run service configuration
86
+ * @param service
87
+ * @param location
88
+ * @param project
89
+ * @param revisions a string array of recent revisions
90
+ */
91
+ export declare const generateInsightsFile: (insightsFilePath: string, isDryRun: boolean, config: IService, service: string, location: string, project: string, revisions: string[]) => void;