@appland/scanner 1.40.3 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +63 -39
  2. package/built/appMapIndex.js +40 -0
  3. package/built/appMapIndex.js.map +1 -0
  4. package/built/check.js +3 -3
  5. package/built/check.js.map +1 -1
  6. package/built/checkInstance.js +4 -4
  7. package/built/checkInstance.js.map +1 -1
  8. package/built/cli/ci/command.js +21 -26
  9. package/built/cli/ci/command.js.map +1 -1
  10. package/built/cli/fail.js +13 -0
  11. package/built/cli/fail.js.map +1 -0
  12. package/built/cli/merge/command.js +101 -0
  13. package/built/cli/merge/command.js.map +1 -0
  14. package/built/cli/merge/options.js +3 -0
  15. package/built/cli/merge/options.js.map +1 -0
  16. package/built/cli/reportUploadURL.js +11 -0
  17. package/built/cli/reportUploadURL.js.map +1 -0
  18. package/built/cli/scan/command.js +5 -1
  19. package/built/cli/scan/command.js.map +1 -1
  20. package/built/cli/scan/scanner.js +2 -2
  21. package/built/cli/scan/scanner.js.map +1 -1
  22. package/built/cli/scan.js +4 -2
  23. package/built/cli/scan.js.map +1 -1
  24. package/built/cli/updateCommitStatus.js +65 -0
  25. package/built/cli/updateCommitStatus.js.map +1 -0
  26. package/built/cli/upload/command.js +10 -5
  27. package/built/cli/upload/command.js.map +1 -1
  28. package/built/cli.js +2 -0
  29. package/built/cli.js.map +1 -1
  30. package/built/database/index.js +136 -161
  31. package/built/database/index.js.map +1 -1
  32. package/built/integration/appland/{fetchStatus.js → app/listFindingStatus.js} +1 -1
  33. package/built/integration/appland/app/listFindingStatus.js.map +1 -0
  34. package/built/integration/appland/{appMap.js → appMap/create.js} +43 -48
  35. package/built/integration/appland/appMap/create.js.map +1 -0
  36. package/built/integration/appland/location.js +3 -0
  37. package/built/integration/appland/location.js.map +1 -0
  38. package/built/integration/appland/{mapset.js → mapset/create.js} +41 -46
  39. package/built/integration/appland/mapset/create.js.map +1 -0
  40. package/built/integration/appland/{upload.js → scannerJob/create.js} +27 -19
  41. package/built/integration/appland/scannerJob/create.js.map +1 -0
  42. package/built/integration/appland/scannerJob/merge.js +92 -0
  43. package/built/integration/appland/scannerJob/merge.js.map +1 -0
  44. package/built/integration/appland/scannerJob.js +3 -0
  45. package/built/integration/appland/scannerJob.js.map +1 -0
  46. package/built/report/summaryReport.js +1 -1
  47. package/built/report/summaryReport.js.map +1 -1
  48. package/built/ruleChecker.js +12 -11
  49. package/built/ruleChecker.js.map +1 -1
  50. package/built/rules/authzBeforeAuthn.js +6 -0
  51. package/built/rules/authzBeforeAuthn.js.map +1 -1
  52. package/built/rules/circularDependency.js +4 -0
  53. package/built/rules/circularDependency.js.map +1 -1
  54. package/built/rules/deserializationOfUntrustedData.js +8 -0
  55. package/built/rules/deserializationOfUntrustedData.js.map +1 -1
  56. package/built/rules/http500.js +7 -0
  57. package/built/rules/http500.js.map +1 -1
  58. package/built/rules/illegalPackageDependency.js +7 -0
  59. package/built/rules/illegalPackageDependency.js.map +1 -1
  60. package/built/rules/incompatibleHttpClientRequest.js +7 -0
  61. package/built/rules/incompatibleHttpClientRequest.js.map +1 -1
  62. package/built/rules/insecureCompare.js +4 -0
  63. package/built/rules/insecureCompare.js.map +1 -1
  64. package/built/rules/jobNotCancelled.js +3 -0
  65. package/built/rules/jobNotCancelled.js.map +1 -1
  66. package/built/rules/lib/matchEvent.js +3 -4
  67. package/built/rules/lib/matchEvent.js.map +1 -1
  68. package/built/rules/lib/parseRuleDescription.js +18 -0
  69. package/built/rules/lib/parseRuleDescription.js.map +1 -0
  70. package/built/rules/logoutWithoutSessionReset.js +8 -0
  71. package/built/rules/logoutWithoutSessionReset.js.map +1 -1
  72. package/built/rules/missingAuthentication.js +6 -0
  73. package/built/rules/missingAuthentication.js.map +1 -1
  74. package/built/rules/missingContentType.js +6 -0
  75. package/built/rules/missingContentType.js.map +1 -1
  76. package/built/rules/nPlusOneQuery.js +8 -2
  77. package/built/rules/nPlusOneQuery.js.map +1 -1
  78. package/built/rules/queryFromInvalidPackage.js +6 -0
  79. package/built/rules/queryFromInvalidPackage.js.map +1 -1
  80. package/built/rules/queryFromView.js +6 -0
  81. package/built/rules/queryFromView.js.map +1 -1
  82. package/built/rules/rpcWithoutCircuitBreaker.js +6 -0
  83. package/built/rules/rpcWithoutCircuitBreaker.js.map +1 -1
  84. package/built/rules/saveWithoutValidation.js +6 -0
  85. package/built/rules/saveWithoutValidation.js.map +1 -1
  86. package/built/rules/secretInLog.js +3 -0
  87. package/built/rules/secretInLog.js.map +1 -1
  88. package/built/rules/slowFunctionCall.js +6 -0
  89. package/built/rules/slowFunctionCall.js.map +1 -1
  90. package/built/rules/slowHttpServerRequest.js +6 -0
  91. package/built/rules/slowHttpServerRequest.js.map +1 -1
  92. package/built/rules/slowQuery.js +6 -0
  93. package/built/rules/slowQuery.js.map +1 -1
  94. package/built/rules/tooManyJoins.js +9 -3
  95. package/built/rules/tooManyJoins.js.map +1 -1
  96. package/built/rules/tooManyUpdates.js +6 -0
  97. package/built/rules/tooManyUpdates.js.map +1 -1
  98. package/built/rules/unbatchedMaterializedQuery.js +9 -4
  99. package/built/rules/unbatchedMaterializedQuery.js.map +1 -1
  100. package/built/rules/updateInGetRequest.js +6 -0
  101. package/built/rules/updateInGetRequest.js.map +1 -1
  102. package/built/scope/sqlTransactionScope.js +3 -2
  103. package/built/scope/sqlTransactionScope.js.map +1 -1
  104. package/built/sqlWarning.js +56 -0
  105. package/built/sqlWarning.js.map +1 -0
  106. package/doc/architecture.md +48 -0
  107. package/doc/labels/audit.md +7 -0
  108. package/doc/labels/dao.materialize.md +12 -0
  109. package/doc/labels/deserialize.safe.md +9 -0
  110. package/doc/labels/deserialize.unsafe.md +12 -0
  111. package/doc/labels/http.session.clear.md +7 -0
  112. package/doc/labels/job.cancel.md +11 -0
  113. package/doc/labels/job.create.md +13 -0
  114. package/doc/labels/log.md +12 -0
  115. package/doc/labels/public.md +8 -0
  116. package/doc/labels/rpc.circuit_breaker.md +16 -0
  117. package/doc/labels/sanitize.md +29 -0
  118. package/doc/labels/secret.md +11 -0
  119. package/doc/labels/security.authentication.md +10 -0
  120. package/doc/labels/security.authorization.md +9 -0
  121. package/doc/labels/security.logout.md +9 -0
  122. package/doc/labels/string.equals.md +18 -0
  123. package/doc/rules/authzBeforeAuthn.md +47 -0
  124. package/doc/rules/circularDependency.md +57 -0
  125. package/doc/rules/deserializationOfUntrustedData.md +55 -0
  126. package/doc/rules/http500.md +36 -0
  127. package/doc/rules/illegalPackageDependency.md +50 -0
  128. package/doc/rules/incompatibleHttpClientRequest.md +35 -0
  129. package/doc/rules/insecureCompare.md +59 -0
  130. package/doc/rules/jobNotCancelled.md +49 -0
  131. package/doc/rules/logoutWithoutSessionReset.md +40 -0
  132. package/doc/rules/missingAuthentication.md +59 -0
  133. package/doc/rules/missingContentType.md +33 -0
  134. package/doc/rules/nPlusOneQuery.md +52 -0
  135. package/doc/rules/queryFromInvalidPackage.md +45 -0
  136. package/doc/rules/queryFromView.md +42 -0
  137. package/doc/rules/rpcWithoutCircuitBreaker.md +44 -0
  138. package/doc/rules/saveWithoutValidation.md +33 -0
  139. package/doc/rules/secretInLog.md +49 -0
  140. package/doc/rules/slowFunctionCall.md +39 -0
  141. package/doc/rules/slowHttpServerRequest.md +34 -0
  142. package/doc/rules/slowQuery.md +33 -0
  143. package/doc/rules/tooManyJoins.md +40 -0
  144. package/doc/rules/tooManyUpdates.md +46 -0
  145. package/doc/rules/unbatchedMaterializedQuery.md +54 -0
  146. package/doc/rules/updateInGetRequest.md +44 -0
  147. package/package.json +10 -6
  148. package/built/integration/appland/appMap.js.map +0 -1
  149. package/built/integration/appland/fetchStatus.js.map +0 -1
  150. package/built/integration/appland/mapset.js.map +0 -1
  151. package/built/integration/appland/upload.js.map +0 -1
package/README.md CHANGED
@@ -238,7 +238,9 @@ _Example_
238
238
  "enumerateScope": false,
239
239
  "references": {
240
240
  "CWE-863": "https://cwe.mitre.org/data/definitions/863.html"
241
- }
241
+ },
242
+ "description": "Determines when authorization logic is applied to a user identity that has not been properly verified. Because the the user's identity has not been verified yet, the outcome of the authorization check cannot be trusted. A malicious user might be able to get themselves authorized as a different user than they really are - or they may not be logged in at all.",
243
+ "url": "https://appland.com/docs/analysis/rules-reference.html#authz-before-authn"
242
244
  },
243
245
  "id": "authz-before-authn",
244
246
  "options": {},
@@ -257,7 +259,9 @@ _Example_
257
259
  "references": {
258
260
  "CWE-1047": "https://cwe.mitre.org/data/definitions/1047.html"
259
261
  },
260
- "enumerateScope": false
262
+ "enumerateScope": false,
263
+ "description": "Finds cycles in the package dependency graph. Cyclic dependencies make code hard to maintain because all the code in the cycle is inter-dependent. While it might look like the code in the different packages has separate functions, in essence all the code in the cycle acts like one big package.",
264
+ "url": "https://appland.com/docs/analysis/rules-reference.html#circular-dependency"
261
265
  }
262
266
  }
263
267
  ]
@@ -276,44 +280,64 @@ _Example_
276
280
 
277
281
  ```json
278
282
  "findings": [
279
- {
280
- "appMapFile": "tmp/appmap/rspec/API_ScannerJobsController_create_logged_in_uploads_a_scanner_job_from_a_tarball.appmap.json",
281
- "checkId": "slow-function-call",
282
- "ruleId": "slow-function-call",
283
- "ruleTitle": "Slow function call",
284
- "event": {
285
- "id": 125,
286
- "event": "call",
287
- "thread_id": 76340,
288
- "defined_class": "Scanner",
289
- "method_id": "publish_from_upload",
290
- "path": "app/models/scanner.rb",
291
- "lineno": 397,
292
- "static": true,
293
- "receiver": {
294
- "class": "Module",
295
- "object_id": 1380300,
296
- "value": "Scanner"
297
- }
298
- },
299
- "hash": "a2bfc16512fadf8536355610fcaa63b391596dc0f60d7ef7f885a4eb6ec8f7c1",
300
- "scope": {
301
- "id": 29,
302
- "event": "call",
303
- "thread_id": 76340,
304
- "http_server_request": {
305
- "request_method": "POST",
306
- "path_info": "/api/scanner_jobs",
307
- "normalized_path_info": "/api/scanner_jobs",
308
- "headers": {
309
- "Host": "www.example.com",
310
- "Accept": "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5",
311
- "Authorization": "Bearer YWRtaW46NzM4NzVmOWYtMmQ4Ni00YWIwLTk5OWEtMWUwNjc2NGE5NTUw"
283
+ {
284
+ "appMapFile": "./tmp/appmap/rspec/Extensions_Upload_processing_logged_in_appmap_with_org_name_with_org_membership_is_added_to_the_specified_org.appmap.json",
285
+ "checkId": "illegal-package-dependency",
286
+ "ruleId": "illegal-package-dependency",
287
+ "ruleTitle": "Illegal use of code by a non-whitelisted package",
288
+ "event": {
289
+ "id": 244,
290
+ "event": "call",
291
+ "thread_id": 461760,
292
+ "defined_class": "DAO::Scenario",
293
+ "method_id": "validate",
294
+ "path": "app/models/dao/scenario.rb",
295
+ "lineno": 149,
296
+ "static": false,
297
+ "receiver": {
298
+ "class": "DAO::Scenario",
299
+ "object_id": 501420,
300
+ "value": "#<DAO::Scenario:0x00007f7f50cd6a78>"
312
301
  }
313
- }
314
- },
315
- "message": "Slow app/models/Scanner.publish_from_upload call (0.538877ms)"
316
- }
302
+ },
303
+ "hash": "a3a2be87f722fe53e9fbbb57dd1acd82d8cf76d3c346556e8e495cd0a91eba2e",
304
+ "stack": [
305
+ "app/models/dao/scenario.rb:149",
306
+ "app/controllers/concerns/mute_logging.rb:4",
307
+ "app/models/scenario/save_scenario.rb:11",
308
+ "app/models/scenario/build.rb:68",
309
+ "app/controllers/scenario_uploads_controller.rb:60",
310
+ "app/controllers/scenario_uploads_controller.rb:44",
311
+ "app/controllers/concerns/with_authentication.rb:6",
312
+ "app/controllers/concerns/in_transaction.rb:8"
313
+ ],
314
+ "scope": {
315
+ "id": 11,
316
+ "event": "call",
317
+ "thread_id": 461760,
318
+ "http_server_request": {
319
+ "request_method": "GET",
320
+ "path_info": "/scenario_uploads/1",
321
+ "normalized_path_info": "/scenario_uploads/{id}",
322
+ "headers": {
323
+ "Host": "127.0.0.1:61019",
324
+ "Connection": "keep-alive",
325
+ "Upgrade-Insecure-Requests": "1",
326
+ "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/97.0.4692.99 Safari/537.36",
327
+ "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
328
+ "Sec-Fetch-Site": "none",
329
+ "Sec-Fetch-Mode": "navigate",
330
+ "Sec-Fetch-User": "?1",
331
+ "Sec-Fetch-Dest": "document",
332
+ "Accept-Encoding": "gzip, deflate, br",
333
+ "Accept-Language": "en-US",
334
+ "Cookie": "appland_session=YKhMDBpgpV0hwKaBkxlaq%2BVzBRK2u6r%2BU%2BnFmJ61y5Q6TxptqxED597yhcmKqSTLfs%2FExRKU8WJ8iN7pV5Si7i0iJfPMa32ubjqMx0wVtcZ%2Fxo%2BwIcDF%2FI6Qaf7cU6oj6DaErr8GElQTTlA0TdRBrCgo43no%2BD4pSwkXvweqR175ZrCN%2FrjBZElvLaxyoY8kKsABEEtmI2aRcCcDJylP1hVrAI6%2BcWgVhb42ITJ8%2BuN0KiZDZSJWOsQFW6l656tyDDjC3UQvf65u5zvDAbqhIJkSEBXfn8p7c7I%2Bo8Cc9UWjLCNTCV%2BTL5iJ5qKDLHb7sHQftnOymCkyc%2FM57Bute59Lmyk6ZsNj4Y3Zbv6upszqyfJMhPyvcESz6BZCrzEGJudCueDtwNAnBPu3zE%2B1xQcKMpmF1R8Jw7ds41i90fFE0tkUCaiDzHdZUveVQKm7N%2F9pgTKE7a%2FyrevoPBKjpsqOrG%2BLe1Xhc%2FyWZBzXKbaTkHIRhoLijV9vGRH%2F%2Fk%2B9uZW0uhyfnoLDJB7af2vArKwNhEwuCBsXybPmyDDq2oLq8fMyWeVOpY7H44pGHho1D1qQdVfBzrLVoUG%2FqAbBSh0roHl%2FFjfRKmSil6iTQWQSNkemb73NNAsg3U2lI2AcjoNCzZHJS8S7iIpbZonabSR7AKyssx%2BSRYjdTsy5FplO--DN1nLB2Gux0u9W7x--RCmfYC53sopFkHidZ1uSNA%3D%3D",
335
+ "Version": "HTTP/1.1"
336
+ }
337
+ }
338
+ },
339
+ "message": "Code object app/models/dao/DAO::Scenario#validate was invoked from app/controllers/concerns, not from ^app/models/?"
340
+ }
317
341
  ]
318
342
  ```
319
343
 
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var models_1 = require("@appland/models");
7
+ var lru_cache_1 = __importDefault(require("lru-cache"));
8
+ var sqlWarning_1 = __importDefault(require("./sqlWarning"));
9
+ var NormalizedSQLBySQLString = new lru_cache_1.default({ max: 10000 });
10
+ var ASTBySQLString = new lru_cache_1.default({ max: 1000 });
11
+ var AppMapIndex = /** @class */ (function () {
12
+ function AppMapIndex(appMap) {
13
+ this.appMap = appMap;
14
+ }
15
+ AppMapIndex.prototype.sqlAST = function (event) {
16
+ if (!event.sql)
17
+ throw new Error(event.fqid + " is not a SQL query");
18
+ var sql = this.sqlNormalized(event);
19
+ var ast = ASTBySQLString.get(sql);
20
+ if (!ast) {
21
+ ast = (0, models_1.parseSQL)(sql, sqlWarning_1.default);
22
+ ast ? ASTBySQLString.set(sql, ast) : ASTBySQLString.set(sql, []);
23
+ }
24
+ return ast;
25
+ };
26
+ AppMapIndex.prototype.sqlNormalized = function (event) {
27
+ if (!event.sql)
28
+ throw new Error(event.fqid + " is not a SQL query");
29
+ var cacheKey = [event.sql.database_type, event.sql.sql].join(':');
30
+ var sql = NormalizedSQLBySQLString.get(cacheKey);
31
+ if (!sql) {
32
+ sql = (0, models_1.normalizeSQL)(event.sql.sql, event.sql.database_type);
33
+ NormalizedSQLBySQLString.set(cacheKey, sql);
34
+ }
35
+ return sql;
36
+ };
37
+ return AppMapIndex;
38
+ }());
39
+ exports.default = AppMapIndex;
40
+ //# sourceMappingURL=appMapIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appMapIndex.js","sourceRoot":"","sources":["../src/appMapIndex.ts"],"names":[],"mappings":";;;;;AAAA,0CAAwE;AAExE,wDAAiC;AACjC,4DAAsC;AAEtC,IAAM,wBAAwB,GAAG,IAAI,mBAAQ,CAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9E,IAAM,cAAc,GAAG,IAAI,mBAAQ,CAAmB,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AAErE;IACE,qBAAmB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAErC,4BAAM,GAAN,UAAO,KAAY;QACjB,IAAI,CAAC,KAAK,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAI,KAAK,CAAC,IAAI,wBAAqB,CAAC,CAAC;QAEpE,IAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,EAAE;YACR,GAAG,GAAG,IAAA,iBAAQ,EAAC,GAAG,EAAE,oBAAU,CAAC,CAAC;YAChC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,EAAS,CAAC,CAAC;SACzE;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,mCAAa,GAAb,UAAc,KAAY;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAI,KAAK,CAAC,IAAI,wBAAqB,CAAC,CAAC;QAEpE,IAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,GAAG,GAAG,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,EAAE;YACR,GAAG,GAAG,IAAA,qBAAY,EAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC3D,wBAAwB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAC7C;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACH,kBAAC;AAAD,CAAC,AA1BD,IA0BC"}
package/built/check.js CHANGED
@@ -15,14 +15,14 @@ var Check = /** @class */ (function () {
15
15
  this.includeEvent = [];
16
16
  this.excludeEvent = [];
17
17
  }
18
- Check.prototype.filterScope = function (event, appMap) {
19
- if (this.includeScope.length > 0 && !this.includeScope.every(function (fn) { return fn(event, appMap); })) {
18
+ Check.prototype.filterScope = function (event, appMapIndex) {
19
+ if (this.includeScope.length > 0 && !this.includeScope.every(function (fn) { return fn(event, appMapIndex); })) {
20
20
  if ((0, util_1.verbose)()) {
21
21
  console.warn("\t'includeScope' clause is not satisifed.");
22
22
  }
23
23
  return false;
24
24
  }
25
- if (this.excludeScope.some(function (fn) { return fn(event, appMap); })) {
25
+ if (this.excludeScope.some(function (fn) { return fn(event, appMapIndex); })) {
26
26
  if ((0, util_1.verbose)()) {
27
27
  console.warn("\t'excludeScope' clause is not satisifed.");
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":";;AACA,yCAA2C;AAG3C;IASE,eAAmB,IAAU,EAAE,OAA6B;QAAzC,SAAI,GAAJ,IAAI,CAAM;QAC3B,SAAS,WAAW;YAClB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,2BAAW,GAAX,UAAY,KAAY,EAAE,MAAe;QACvC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAjB,CAAiB,CAAC,EAAE;YACvF,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAjB,CAAiB,CAAC,EAAE;YACrD,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAQ,GAAR;QACE,IAAM,MAAM,GAAG,CAAC,MAAI,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC;QACrC,4DAA4D;QAC5D,IAAM,IAAI,GAAQ,IAAI,CAAC;QACvB,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;YAC3E,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,MAAI,GAAG,SAAI,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAG,CAAC,CAAC;aACnD;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACH,YAAC;AAAD,CAAC,AAlDD,IAkDC"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../src/check.ts"],"names":[],"mappings":";;AACA,yCAA2C;AAG3C;IASE,eAAmB,IAAU,EAAE,OAA6B;QAAzC,SAAI,GAAJ,IAAI,CAAM;QAC3B,SAAS,WAAW;YAClB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,2BAAW,GAAX,UAAY,KAAY,EAAE,WAAwB;QAChD,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAtB,CAAsB,CAAC,EAAE;YAC5F,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAtB,CAAsB,CAAC,EAAE;YAC1D,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAQ,GAAR;QACE,IAAM,MAAM,GAAG,CAAC,MAAI,IAAI,CAAC,IAAI,CAAC,EAAE,MAAG,CAAC,CAAC;QACrC,4DAA4D;QAC5D,IAAM,IAAI,GAAQ,IAAI,CAAC;QACvB,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;YAC3E,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,MAAI,GAAG,SAAI,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAG,CAAC,CAAC;aACnD;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACH,YAAC;AAAD,CAAC,AAlDD,IAkDC"}
@@ -41,21 +41,21 @@ var CheckInstance = /** @class */ (function () {
41
41
  enumerable: false,
42
42
  configurable: true
43
43
  });
44
- CheckInstance.prototype.filterEvent = function (event, appMap) {
45
- if (this.ruleLogic.where && !this.ruleLogic.where(event, appMap)) {
44
+ CheckInstance.prototype.filterEvent = function (event, appMapIndex) {
45
+ if (this.ruleLogic.where && !this.ruleLogic.where(event, appMapIndex)) {
46
46
  if ((0, util_1.verbose)()) {
47
47
  console.warn("\t'where' clause is not satisifed.");
48
48
  }
49
49
  return false;
50
50
  }
51
51
  if (this.check.includeEvent.length > 0 &&
52
- !this.check.includeEvent.every(function (fn) { return fn(event, appMap); })) {
52
+ !this.check.includeEvent.every(function (fn) { return fn(event, appMapIndex); })) {
53
53
  if ((0, util_1.verbose)()) {
54
54
  console.warn("\t'includeEvent' clause is not satisifed.");
55
55
  }
56
56
  return false;
57
57
  }
58
- if (this.check.excludeEvent.some(function (fn) { return fn(event, appMap); })) {
58
+ if (this.check.excludeEvent.some(function (fn) { return fn(event, appMapIndex); })) {
59
59
  if ((0, util_1.verbose)()) {
60
60
  console.warn("\t'excludeEvent' clause is not satisifed.");
61
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checkInstance.js","sourceRoot":"","sources":["../src/checkInstance.ts"],"names":[],"mappings":";;AAEA,yCAA2C;AAG3C;IAIE,uBAAY,KAAY;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,sBAAI,kCAAO;aAAX;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,iCAAM;aAAV;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,CAAC;;;OAAA;IAED,sBAAI,gCAAK;aAAT;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B,CAAC;;;OAAA;IAED,sBAAI,gCAAK;aAAT;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,yCAAc;aAAlB;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;QACxC,CAAC;;;OAAA;IAED,mCAAW,GAAX,UAAY,KAAY,EAAE,MAAe;QACvC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE;YAChE,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;aACpD;YACD,OAAO,KAAK,CAAC;SACd;QAED,IACE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;YAClC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAjB,CAAiB,CAAC,EACzD;YACA,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAjB,CAAiB,CAAC,EAAE;YAC3D,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACH,oBAAC;AAAD,CAAC,AAtDD,IAsDC"}
1
+ {"version":3,"file":"checkInstance.js","sourceRoot":"","sources":["../src/checkInstance.ts"],"names":[],"mappings":";;AAEA,yCAA2C;AAG3C;IAIE,uBAAY,KAAY;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,sBAAI,kCAAO;aAAX;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,iCAAM;aAAV;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,CAAC;;;OAAA;IAED,sBAAI,gCAAK;aAAT;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B,CAAC;;;OAAA;IAED,sBAAI,gCAAK;aAAT;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,yCAAc;aAAlB;YACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;QACxC,CAAC;;;OAAA;IAED,mCAAW,GAAX,UAAY,KAAY,EAAE,WAAwB;QAChD,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE;YACrE,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;aACpD;YACD,OAAO,KAAK,CAAC;SACd;QAED,IACE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;YAClC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAtB,CAAsB,CAAC,EAC9D;YACA,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAtB,CAAsB,CAAC,EAAE;YAChE,IAAI,IAAA,cAAO,GAAE,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;aAC3D;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACH,oBAAC;AAAD,CAAC,AAtDD,IAsDC"}
@@ -58,12 +58,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
58
58
  var glob_1 = require("glob");
59
59
  var promises_1 = require("fs/promises");
60
60
  var util_1 = require("util");
61
- var yargs_1 = __importDefault(require("yargs"));
62
61
  var configurationProvider_1 = require("../../configuration/configurationProvider");
63
62
  var errors_1 = require("../../errors");
64
63
  var util_2 = require("../../rules/lib/util");
65
- var upload_1 = __importDefault(require("../../integration/appland/upload"));
66
- var commitStatus_1 = __importDefault(require("../../integration/github/commitStatus"));
64
+ var create_1 = require("../../integration/appland/scannerJob/create");
67
65
  var findings_1 = require("../../findings");
68
66
  var findingsReport_1 = __importDefault(require("../../report/findingsReport"));
69
67
  var summaryReport_1 = __importDefault(require("../../report/summaryReport"));
@@ -72,6 +70,8 @@ var resolveAppId_1 = __importDefault(require("../resolveAppId"));
72
70
  var validateFile_1 = __importDefault(require("../validateFile"));
73
71
  var scanner_1 = __importDefault(require("../scan/scanner"));
74
72
  var scanArgs_1 = __importDefault(require("../scanArgs"));
73
+ var updateCommitStatus_1 = __importDefault(require("../updateCommitStatus"));
74
+ var reportUploadURL_1 = __importDefault(require("../reportUploadURL"));
75
75
  exports.default = {
76
76
  command: 'ci',
77
77
  describe: 'Scan AppMaps, report findings to AppMap Server, and update SCM status',
@@ -84,7 +84,7 @@ exports.default = {
84
84
  });
85
85
  args.option('update-commit-status', {
86
86
  describe: 'update commit status in SCM system',
87
- default: true,
87
+ default: false,
88
88
  type: 'boolean',
89
89
  });
90
90
  args.option('upload', {
@@ -92,21 +92,24 @@ exports.default = {
92
92
  default: true,
93
93
  type: 'boolean',
94
94
  });
95
+ args.option('merge-key', {
96
+ describe: 'build job identifier. This is used to merge findings from parallelized scans',
97
+ });
95
98
  return args.strict();
96
99
  },
97
100
  handler: function (options) {
98
101
  return __awaiter(this, void 0, void 0, function () {
99
- var _a, appmapDir, config, isVerbose, fail, appIdArg, reportFile, doUpload, updateCommitStatus, glob, files, appId, configData, scanner, _b, rawScanResults, findingStatuses, scanResults, err_1;
102
+ var _a, appmapDir, config, isVerbose, failOption, appIdArg, reportFile, doUpload, updateCommitStatusOption, mergeKey, glob, files, appId, configData, scanner, _b, rawScanResults, findingStatuses, scanResults, uploadResponse, err_1;
100
103
  return __generator(this, function (_c) {
101
104
  switch (_c.label) {
102
105
  case 0:
103
- _a = options, appmapDir = _a.appmapDir, config = _a.config, isVerbose = _a.verbose, fail = _a.fail, appIdArg = _a.app, reportFile = _a.reportFile, doUpload = _a.upload, updateCommitStatus = _a.updateCommitStatus;
106
+ _a = options, appmapDir = _a.appmapDir, config = _a.config, isVerbose = _a.verbose, failOption = _a.fail, appIdArg = _a.app, reportFile = _a.reportFile, doUpload = _a.upload, updateCommitStatusOption = _a.updateCommitStatus, mergeKey = _a.mergeKey;
104
107
  if (isVerbose) {
105
108
  (0, util_2.verbose)(true);
106
109
  }
107
110
  _c.label = 1;
108
111
  case 1:
109
- _c.trys.push([1, 14, , 15]);
112
+ _c.trys.push([1, 12, , 13]);
110
113
  if (!appmapDir) {
111
114
  throw new errors_1.ValidationError('--appmap-dir is required');
112
115
  }
@@ -136,31 +139,23 @@ exports.default = {
136
139
  (0, findingsReport_1.default)(scanResults.findings, scanResults.appMapMetadata);
137
140
  (0, summaryReport_1.default)(scanResults, true);
138
141
  if (!doUpload) return [3 /*break*/, 9];
139
- return [4 /*yield*/, (0, upload_1.default)(rawScanResults, appId)];
142
+ return [4 /*yield*/, (0, create_1.create)(rawScanResults, appId, mergeKey)];
140
143
  case 8:
141
- _c.sent();
144
+ uploadResponse = _c.sent();
145
+ (0, reportUploadURL_1.default)(uploadResponse.summary.numFindings, uploadResponse.url);
142
146
  _c.label = 9;
143
147
  case 9:
144
- if (!updateCommitStatus) return [3 /*break*/, 13];
145
- if (!(scanResults.findings.length > 0)) return [3 /*break*/, 11];
146
- return [4 /*yield*/, (0, commitStatus_1.default)('failure', scanResults.summary.numChecks + " checks, " + scanResults.findings.length + " findings. See CI job log for details.")];
148
+ if (!updateCommitStatusOption) return [3 /*break*/, 11];
149
+ return [4 /*yield*/, (0, updateCommitStatus_1.default)(scanResults.findings.length, scanResults.summary.numChecks)];
147
150
  case 10:
148
151
  _c.sent();
149
- console.log("Commit status updated to: failure (" + scanResults.findings.length + " findings)");
152
+ _c.label = 11;
153
+ case 11:
154
+ if (failOption) {
155
+ fail(scanResults.findings.length);
156
+ }
150
157
  return [3 /*break*/, 13];
151
- case 11: return [4 /*yield*/, (0, commitStatus_1.default)('success', scanResults.summary.numChecks + " checks passed")];
152
158
  case 12:
153
- _c.sent();
154
- console.log("Commit status updated to: success.");
155
- _c.label = 13;
156
- case 13:
157
- if (fail) {
158
- if (scanResults.findings.length > 0) {
159
- yargs_1.default.exit(1, new Error(scanResults.findings.length + " findings"));
160
- }
161
- }
162
- return [3 /*break*/, 15];
163
- case 14:
164
159
  err_1 = _c.sent();
165
160
  if (err_1 instanceof errors_1.ValidationError) {
166
161
  console.warn(err_1.message);
@@ -174,7 +169,7 @@ exports.default = {
174
169
  return [2 /*return*/, process.exit(exitCode_1.ExitCode.RuntimeError)];
175
170
  }
176
171
  throw err_1;
177
- case 15: return [2 /*return*/];
172
+ case 13: return [2 /*return*/];
178
173
  }
179
174
  });
180
175
  });
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/cli/ci/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/cli/ci/command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var yargs_1 = __importDefault(require("yargs"));
7
+ function fail(numFindings) {
8
+ if (numFindings > 0) {
9
+ yargs_1.default.exit(1, new Error(numFindings + " findings"));
10
+ }
11
+ }
12
+ exports.default = fail;
13
+ //# sourceMappingURL=fail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fail.js","sourceRoot":"","sources":["../../src/cli/fail.ts"],"names":[],"mappings":";;;;;AAAA,gDAA0B;AAE1B,SAAwB,IAAI,CAAC,WAAmB;IAC9C,IAAI,WAAW,GAAG,CAAC,EAAE;QACnB,eAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,CAAI,WAAW,cAAW,CAAC,CAAC,CAAC;KACrD;AACH,CAAC;AAJD,uBAIC"}
@@ -0,0 +1,101 @@
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 __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var util_1 = require("../../rules/lib/util");
43
+ var merge_1 = require("../../integration/appland/scannerJob/merge");
44
+ var resolveAppId_1 = __importDefault(require("../resolveAppId"));
45
+ var updateCommitStatus_1 = __importDefault(require("../updateCommitStatus"));
46
+ exports.default = {
47
+ command: 'merge <merge-key>',
48
+ describe: 'Merge scan results from parallel scans',
49
+ builder: function (args) {
50
+ args.option('app', {
51
+ describe: 'name of the app to publish the findings for. By default, this is determined by looking in appmap.yml',
52
+ });
53
+ args.option('fail', {
54
+ describe: 'exit with non-zero status if there are any new findings',
55
+ default: false,
56
+ type: 'boolean',
57
+ });
58
+ args.option('update-commit-status', {
59
+ describe: 'update commit status in SCM system',
60
+ default: false,
61
+ type: 'boolean',
62
+ });
63
+ args.positional('merge-key', {
64
+ describe: 'build job identifier. This is used to merge findings from parallelized scans',
65
+ type: 'string',
66
+ });
67
+ return args.strict();
68
+ },
69
+ handler: function (options) {
70
+ return __awaiter(this, void 0, void 0, function () {
71
+ var _a, isVerbose, appIdArg, failOption, updateCommitStatusOption, mergeKey, appId, mergeResults;
72
+ return __generator(this, function (_b) {
73
+ switch (_b.label) {
74
+ case 0:
75
+ _a = options, isVerbose = _a.verbose, appIdArg = _a.app, failOption = _a.fail, updateCommitStatusOption = _a.updateCommitStatus, mergeKey = _a.mergeKey;
76
+ if (isVerbose) {
77
+ (0, util_1.verbose)(true);
78
+ }
79
+ return [4 /*yield*/, (0, resolveAppId_1.default)(appIdArg, '.')];
80
+ case 1:
81
+ appId = _b.sent();
82
+ return [4 /*yield*/, (0, merge_1.merge)(appId, mergeKey)];
83
+ case 2:
84
+ mergeResults = _b.sent();
85
+ console.warn("Merged results to " + mergeResults.url);
86
+ if (!updateCommitStatusOption) return [3 /*break*/, 4];
87
+ return [4 /*yield*/, (0, updateCommitStatus_1.default)(mergeResults.summary.numFindings, mergeResults.summary.numChecks)];
88
+ case 3:
89
+ _b.sent();
90
+ _b.label = 4;
91
+ case 4:
92
+ if (failOption) {
93
+ fail(mergeResults.summary.numFindings);
94
+ }
95
+ return [2 /*return*/];
96
+ }
97
+ });
98
+ });
99
+ },
100
+ };
101
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/cli/merge/command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+C;AAG/C,oEAAsF;AACtF,iEAA2C;AAC3C,6EAAuD;AAEvD,kBAAe;IACb,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,wCAAwC;IAClD,OAAO,EAAP,UAAQ,IAAU;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACjB,QAAQ,EACN,sGAAsG;SACzG,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAClB,QAAQ,EAAE,yDAAyD;YACnE,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE;YAClC,QAAQ,EAAE,oCAAoC;YAC9C,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;YAC3B,QAAQ,EAAE,8EAA8E;YACxF,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IACK,OAAO,EAAb,UAAc,OAAkB;;;;;;wBACxB,KAMF,OAAoC,EAL7B,SAAS,aAAA,EACb,QAAQ,SAAA,EACP,UAAU,UAAA,EACI,wBAAwB,wBAAA,EAC5C,QAAQ,cAAA,CAC+B;wBAEzC,IAAI,SAAS,EAAE;4BACb,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC;yBACf;wBAEa,qBAAM,IAAA,sBAAY,EAAC,QAAQ,EAAE,GAAG,CAAC,EAAA;;wBAAzC,KAAK,GAAG,SAAiC;wBAE1B,qBAAM,IAAA,aAAe,EAAC,KAAK,EAAE,QAAQ,CAAC,EAAA;;wBAArD,YAAY,GAAG,SAAsC;wBAC3D,OAAO,CAAC,IAAI,CAAC,uBAAqB,YAAY,CAAC,GAAK,CAAC,CAAC;6BAElD,wBAAwB,EAAxB,wBAAwB;wBAC1B,qBAAM,IAAA,4BAAkB,EAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,EAAA;;wBAA1F,SAA0F,CAAC;;;wBAG7F,IAAI,UAAU,EAAE;4BACd,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;yBACxC;;;;;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cli/merge/options.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function reportUploadURL(numFindings, url) {
4
+ var message = "Uploaded " + numFindings + " findings";
5
+ if (url) {
6
+ message += " to " + url;
7
+ }
8
+ console.log(message);
9
+ }
10
+ exports.default = reportUploadURL;
11
+ //# sourceMappingURL=reportUploadURL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportUploadURL.js","sourceRoot":"","sources":["../../src/cli/reportUploadURL.ts"],"names":[],"mappings":";;AAEA,SAAwB,eAAe,CAAC,WAAmB,EAAE,GAAS;IACpE,IAAI,OAAO,GAAG,cAAY,WAAW,cAAW,CAAC;IACjD,IAAI,GAAG,EAAE;QACP,OAAO,IAAI,SAAO,GAAK,CAAC;KACzB;IACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAND,kCAMC"}
@@ -121,7 +121,7 @@ exports.default = {
121
121
  },
122
122
  handler: function (options) {
123
123
  return __awaiter(this, void 0, void 0, function () {
124
- var _a, appmapDir, appmapFile, config, isVerbose, reportAllFindings, appIdArg, apiKey, ide, reportFile, files, glob, configData, scanner, _b, rawScanResults, findingStatuses, scanResults, err_1;
124
+ var _a, appmapDir, appmapFile, config, isVerbose, reportAllFindings, appIdArg, apiKey, ide, reportFile, files, glob, configData, scanner, startTime, _b, rawScanResults, findingStatuses, scanResults, elapsed, numChecks, err_1;
125
125
  return __generator(this, function (_c) {
126
126
  switch (_c.label) {
127
127
  case 0:
@@ -162,6 +162,7 @@ exports.default = {
162
162
  case 7:
163
163
  configData = _c.sent();
164
164
  scanner = (0, scanner_1.default)(reportAllFindings, configData, files);
165
+ startTime = Date.now();
165
166
  return [4 /*yield*/, Promise.all([scanner.scan(), scanner.fetchFindingStatus(appIdArg, appmapDir)])];
166
167
  case 8:
167
168
  _b = __read.apply(void 0, [_c.sent(), 2]), rawScanResults = _b[0], findingStatuses = _b[1];
@@ -181,6 +182,9 @@ exports.default = {
181
182
  console.log();
182
183
  (0, summaryReport_1.default)(scanResults, true);
183
184
  console.log('\n');
185
+ elapsed = Date.now() - startTime;
186
+ numChecks = scanResults.checks.length * scanResults.summary.numAppMaps;
187
+ console.log("Performed " + numChecks + " checks in " + elapsed + "ms (" + Math.floor(numChecks / (elapsed / 1000.0)) + " checks/sec)");
184
188
  return [3 /*break*/, 11];
185
189
  case 10:
186
190
  err_1 = _c.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/cli/scan/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/cli/scan/command.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
56
56
  Object.defineProperty(exports, "__esModule", { value: true });
57
57
  var src_1 = require("@appland/client/dist/src");
58
58
  var configurationProvider_1 = require("../../configuration/configurationProvider");
59
- var fetchStatus_1 = __importDefault(require("../../integration/appland/fetchStatus"));
59
+ var listFindingStatus_1 = __importDefault(require("../../integration/appland/app/listFindingStatus"));
60
60
  var resolveAppId_1 = __importDefault(require("../resolveAppId"));
61
61
  var scan_1 = __importDefault(require("../scan"));
62
62
  var scanResults_1 = require("../../report/scanResults");
@@ -122,7 +122,7 @@ var ServerIntegratedScanner = /** @class */ (function (_super) {
122
122
  case 0: return [4 /*yield*/, (0, resolveAppId_1.default)(appIdArg, appMapDir)];
123
123
  case 1:
124
124
  appId = _a.sent();
125
- return [4 /*yield*/, (0, fetchStatus_1.default)(appId)];
125
+ return [4 /*yield*/, (0, listFindingStatus_1.default)(appId)];
126
126
  case 2: return [2 /*return*/, _a.sent()];
127
127
  }
128
128
  });
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../src/cli/scan/scanner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAoF;AAEpF,mFAAuE;AAEvE,sFAAgE;AAEhE,iEAA2C;AAC3C,iDAA2B;AAC3B,wDAAuD;AAQvD,SAAwB,OAAO,CAC7B,iBAA0B,EAC1B,aAA4B,EAC5B,KAAe;IAEf,OAAO,iBAAiB;QACtB,CAAC,CAAC,IAAI,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC;QAC7C,CAAC,CAAC,IAAI,uBAAuB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AARD,0BAQC;AAED;IACE,qBAAmB,aAA4B,EAAS,KAAe;QAApD,kBAAa,GAAb,aAAa,CAAe;QAAS,UAAK,GAAL,KAAK,CAAU;IAAG,CAAC;IAErE,0BAAI,GAAV;;;;;4BACE,qBAAM,IAAI,CAAC,yBAAyB,EAAE,EAAA;;wBAAtC,SAAsC,CAAC;wBAExB,qBAAM,IAAA,kCAAU,EAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAA7C,MAAM,GAAG,SAAoC;wBACd,qBAAM,IAAA,cAAI,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAA;;wBAA7D,KAA+B,SAA8B,EAA3D,cAAc,oBAAA,EAAE,QAAQ,cAAA;wBAChC,sBAAO,IAAI,yBAAW,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAC;;;;KAC9E;IAGH,kBAAC;AAAD,CAAC,AAZD,IAYC;AAED;IAAsC,2CAAW;IAAjD;;IAwBA,CAAC;IAvBO,2DAAyB,GAA/B;;;gBACE,sBAAO,IAAI,OAAO,CAAC,UAAC,OAAO;wBACzB,IAAA,uBAAiB,GAAE;6BAChB,IAAI,CAAC,cAAM,OAAA,OAAO,CAAC,IAAI,CAAC,EAAb,CAAa,CAAC;6BACzB,KAAK,CAAC,UAAC,GAAG;4BACT,OAAO,CAAC,IAAI,CAAC,kCAAc,CAAC,CAAC;4BAC7B,OAAO,CAAC,IAAI,CAAC,4DAAkD,CAAC,CAAC;4BACjE,OAAO,CAAC,IAAI,CAAC,oCAAwB,GAAG,CAAC,QAAQ,EAAI,CAAC,CAAC;4BACvD,OAAO,CAAC,IAAI,CACV,yFAA+E,CAChF,CAAC;4BACF,OAAO,CAAC,KAAK,CAAC,CAAC;wBACjB,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,EAAC;;;KACJ;IAEK,oDAAkB,GAAxB,UACE,QAAiB,EACjB,SAAkB;;;;;4BAEJ,qBAAM,IAAA,sBAAY,EAAC,QAAQ,EAAE,SAAS,CAAC,EAAA;;wBAA/C,KAAK,GAAG,SAAuC;wBAC9C,qBAAM,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAA;4BAA/B,sBAAO,SAAwB,EAAC;;;;KACjC;IACH,8BAAC;AAAD,CAAC,AAxBD,CAAsC,WAAW,GAwBhD;AAED;IAAgC,qCAAW;IAA3C;;IAQA,CAAC;IAPO,qDAAyB,GAA/B;;;gBACE,sBAAO,IAAI,EAAC;;;KACb;IAEK,8CAAkB,GAAxB;;;gBACE,sBAAO,EAAE,EAAC;;;KACX;IACH,wBAAC;AAAD,CAAC,AARD,CAAgC,WAAW,GAQ1C"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../src/cli/scan/scanner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAoF;AAEpF,mFAAuE;AAEvE,sGAA0E;AAE1E,iEAA2C;AAC3C,iDAA2B;AAC3B,wDAAuD;AAQvD,SAAwB,OAAO,CAC7B,iBAA0B,EAC1B,aAA4B,EAC5B,KAAe;IAEf,OAAO,iBAAiB;QACtB,CAAC,CAAC,IAAI,iBAAiB,CAAC,aAAa,EAAE,KAAK,CAAC;QAC7C,CAAC,CAAC,IAAI,uBAAuB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AACxD,CAAC;AARD,0BAQC;AAED;IACE,qBAAmB,aAA4B,EAAS,KAAe;QAApD,kBAAa,GAAb,aAAa,CAAe;QAAS,UAAK,GAAL,KAAK,CAAU;IAAG,CAAC;IAErE,0BAAI,GAAV;;;;;4BACE,qBAAM,IAAI,CAAC,yBAAyB,EAAE,EAAA;;wBAAtC,SAAsC,CAAC;wBAExB,qBAAM,IAAA,kCAAU,EAAC,IAAI,CAAC,aAAa,CAAC,EAAA;;wBAA7C,MAAM,GAAG,SAAoC;wBACd,qBAAM,IAAA,cAAI,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAA;;wBAA7D,KAA+B,SAA8B,EAA3D,cAAc,oBAAA,EAAE,QAAQ,cAAA;wBAChC,sBAAO,IAAI,yBAAW,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAC;;;;KAC9E;IAGH,kBAAC;AAAD,CAAC,AAZD,IAYC;AAED;IAAsC,2CAAW;IAAjD;;IAwBA,CAAC;IAvBO,2DAAyB,GAA/B;;;gBACE,sBAAO,IAAI,OAAO,CAAC,UAAC,OAAO;wBACzB,IAAA,uBAAiB,GAAE;6BAChB,IAAI,CAAC,cAAM,OAAA,OAAO,CAAC,IAAI,CAAC,EAAb,CAAa,CAAC;6BACzB,KAAK,CAAC,UAAC,GAAG;4BACT,OAAO,CAAC,IAAI,CAAC,kCAAc,CAAC,CAAC;4BAC7B,OAAO,CAAC,IAAI,CAAC,4DAAkD,CAAC,CAAC;4BACjE,OAAO,CAAC,IAAI,CAAC,oCAAwB,GAAG,CAAC,QAAQ,EAAI,CAAC,CAAC;4BACvD,OAAO,CAAC,IAAI,CACV,yFAA+E,CAChF,CAAC;4BACF,OAAO,CAAC,KAAK,CAAC,CAAC;wBACjB,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,EAAC;;;KACJ;IAEK,oDAAkB,GAAxB,UACE,QAAiB,EACjB,SAAkB;;;;;4BAEJ,qBAAM,IAAA,sBAAY,EAAC,QAAQ,EAAE,SAAS,CAAC,EAAA;;wBAA/C,KAAK,GAAG,SAAuC;wBAC9C,qBAAM,IAAA,2BAAW,EAAC,KAAK,CAAC,EAAA;4BAA/B,sBAAO,SAAwB,EAAC;;;;KACjC;IACH,8BAAC;AAAD,CAAC,AAxBD,CAAsC,WAAW,GAwBhD;AAED;IAAgC,qCAAW;IAA3C;;IAQA,CAAC;IAPO,qDAAyB,GAA/B;;;gBACE,sBAAO,IAAI,EAAC;;;KACb;IAEK,8CAAkB,GAAxB;;;gBACE,sBAAO,EAAE,EAAC;;;KACX;IACH,wBAAC;AAAD,CAAC,AARD,CAAgC,WAAW,GAQ1C"}