slnodejs 6.0.29 → 6.1.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.
- package/lib/cli.js +1 -1
- package/package.json +124 -123
- package/tsOutputs/api.d.ts +12 -10
- package/tsOutputs/api.js +116 -115
- package/tsOutputs/build-scanner/ast-utils.js +39 -0
- package/tsOutputs/build-scanner/ast-utils.js.map +1 -0
- package/tsOutputs/build-scanner/build-diff-process.js +352 -346
- package/tsOutputs/build-scanner/build-diff-process.js.map +1 -1
- package/tsOutputs/build-scanner/cia.js +95 -95
- package/tsOutputs/build-scanner/complexity-metrics/complexity-metrics.js +1 -0
- package/tsOutputs/build-scanner/complexity-metrics/complexity-metrics.js.map +1 -0
- package/tsOutputs/build-scanner/configuration-loader.js +17 -17
- package/tsOutputs/build-scanner/current-agent-instance.js +5 -5
- package/tsOutputs/build-scanner/default-values-resolver.js +42 -42
- package/tsOutputs/build-scanner/entities-mapper.js +35 -35
- package/tsOutputs/build-scanner/file-and-folder-utils.js +176 -176
- package/tsOutputs/build-scanner/file-system/actual-file.js +66 -46
- package/tsOutputs/build-scanner/file-system/actual-file.js.map +1 -1
- package/tsOutputs/build-scanner/git-format-builder.js +68 -68
- package/tsOutputs/build-scanner/global-error-handler.js +20 -20
- package/tsOutputs/build-scanner/instrumentation/browser-instrumenter.js +299 -299
- package/tsOutputs/build-scanner/instrumentation/browser-instrumenter.js.map +1 -1
- package/tsOutputs/build-scanner/instrumentation/file-instrumenter.js +271 -180
- package/tsOutputs/build-scanner/instrumentation/file-instrumenter.js.map +1 -1
- package/tsOutputs/build-scanner/instrumentation/instrumentation-utils.js +58 -58
- package/tsOutputs/build-scanner/instrumentation/instrumented-file-size-reducer.js +159 -159
- package/tsOutputs/build-scanner/instrumentation/markup-file-instrumenter.js +185 -137
- package/tsOutputs/build-scanner/instrumentation/markup-file-instrumenter.js.map +1 -1
- package/tsOutputs/build-scanner/instrumentation/sync-instrumenter.js +39 -39
- package/tsOutputs/build-scanner/js_diff/ast-node-types.js +44 -44
- package/tsOutputs/build-scanner/js_diff/branch-key.js +10 -10
- package/tsOutputs/build-scanner/js_diff/branch-signature.js +156 -156
- package/tsOutputs/build-scanner/js_diff/code-metrics-spec.js +1 -0
- package/tsOutputs/build-scanner/js_diff/code-metrics-spec.js.map +1 -0
- package/tsOutputs/build-scanner/js_diff/code-metrics.js +1 -0
- package/tsOutputs/build-scanner/js_diff/code-metrics.js.map +1 -0
- package/tsOutputs/build-scanner/js_diff/create-node-key.js +7 -7
- package/tsOutputs/build-scanner/js_diff/dry-run-files-mapping.js +23 -23
- package/tsOutputs/build-scanner/js_diff/dry-run-files-mapping.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/file-signature.js +234 -244
- package/tsOutputs/build-scanner/js_diff/file-signature.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/files-mapping.js +460 -473
- package/tsOutputs/build-scanner/js_diff/files-mapping.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/generated-file-signature.js +143 -143
- package/tsOutputs/build-scanner/js_diff/generated-file-signature.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/globalMethodIndexer.js +26 -26
- package/tsOutputs/build-scanner/js_diff/guess-method-location.js +100 -97
- package/tsOutputs/build-scanner/js_diff/guess-method-location.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/guess-method-name.js +54 -54
- package/tsOutputs/build-scanner/js_diff/method-signature.js +142 -140
- package/tsOutputs/build-scanner/js_diff/method-signature.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/sl-mapper.js +136 -75
- package/tsOutputs/build-scanner/js_diff/sl-mapper.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/source-data-enricher.js +89 -89
- package/tsOutputs/build-scanner/js_diff/source-data-enricher.js.map +1 -1
- package/tsOutputs/build-scanner/js_diff/source-files-notifier.js +31 -31
- package/tsOutputs/build-scanner/js_diff/source-position-mapper.js +29 -29
- package/tsOutputs/build-scanner/mappings/contracts.js +3 -0
- package/tsOutputs/build-scanner/mappings/contracts.js.map +1 -0
- package/tsOutputs/build-scanner/mappings/ensure-files-handler.service.js +214 -0
- package/tsOutputs/build-scanner/mappings/ensure-files-handler.service.js.map +1 -0
- package/tsOutputs/build-scanner/mappings/file-element-utils.js +47 -0
- package/tsOutputs/build-scanner/mappings/file-element-utils.js.map +1 -0
- package/tsOutputs/build-scanner/mappings/file-enricher.js +205 -0
- package/tsOutputs/build-scanner/mappings/file-enricher.js.map +1 -0
- package/tsOutputs/build-scanner/mappings/files-data-container.js +52 -0
- package/tsOutputs/build-scanner/mappings/files-data-container.js.map +1 -0
- package/tsOutputs/build-scanner/mappings/scm-file-fixer.js +78 -0
- package/tsOutputs/build-scanner/mappings/scm-file-fixer.js.map +1 -0
- package/tsOutputs/build-scanner/markup-files-parser.js +71 -71
- package/tsOutputs/build-scanner/nopt-types.js +19 -19
- package/tsOutputs/build-scanner/nopt-usage-2.js +56 -56
- package/tsOutputs/build-scanner/polyfills.js +6 -6
- package/tsOutputs/build-scanner/scm/parse-log.js +5 -5
- package/tsOutputs/build-scanner/scm/scm-files-container.js +49 -49
- package/tsOutputs/build-scanner/sl-config-cia-cli.js +175 -175
- package/tsOutputs/build-scanner/utils.js +91 -91
- package/tsOutputs/cli-parse/agent-instance-data.d.ts +2 -2
- package/tsOutputs/cli-parse/agent-instance-data.js +6 -6
- package/tsOutputs/cli-parse/child-process-wrapper.js +82 -82
- package/tsOutputs/cli-parse/cli.js +509 -506
- package/tsOutputs/cli-parse/cli.js.map +1 -1
- package/tsOutputs/cli-parse/constants/constants.js +55 -56
- package/tsOutputs/cli-parse/constants/constants.js.map +1 -1
- package/tsOutputs/cli-parse/constants/third-parties.js +10 -10
- package/tsOutputs/cli-parse/contracts.js +2 -2
- package/tsOutputs/cli-parse/custom-commander.js +44 -31
- package/tsOutputs/cli-parse/custom-commander.js.map +1 -1
- package/tsOutputs/cli-parse/executors/base-executor.js +263 -254
- package/tsOutputs/cli-parse/executors/base-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/build-args-dto.js +55 -55
- package/tsOutputs/cli-parse/executors/build-end-executor.js +115 -117
- package/tsOutputs/cli-parse/executors/build-end-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/build-executor.js +147 -149
- package/tsOutputs/cli-parse/executors/build-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/config-executor.js +112 -111
- package/tsOutputs/cli-parse/executors/config-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/base-data.js +55 -55
- package/tsOutputs/cli-parse/executors/dry-run/base-data.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/build-mapping-data.js +228 -230
- package/tsOutputs/cli-parse/executors/dry-run/build-mapping-data.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/dry-run-executor.js +277 -277
- package/tsOutputs/cli-parse/executors/dry-run/dry-run-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/dry-run-validation.js +120 -122
- package/tsOutputs/cli-parse/executors/dry-run/dry-run-validation.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/footprints-data.js +130 -72
- package/tsOutputs/cli-parse/executors/dry-run/footprints-data.js.map +1 -1
- package/tsOutputs/cli-parse/executors/dry-run/helper-methods.js +104 -99
- package/tsOutputs/cli-parse/executors/dry-run/helper-methods.js.map +1 -1
- package/tsOutputs/cli-parse/executors/end-execution-executor.js +88 -90
- package/tsOutputs/cli-parse/executors/end-execution-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/integration-build-components-executor.js +132 -134
- package/tsOutputs/cli-parse/executors/integration-build-components-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/integration-build-delete-components-executor.js +73 -75
- package/tsOutputs/cli-parse/executors/integration-build-delete-components-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/integration-build-update-components-executor.js +71 -73
- package/tsOutputs/cli-parse/executors/integration-build-update-components-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/mocha-executor.js +122 -124
- package/tsOutputs/cli-parse/executors/mocha-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/nyc-report-executor.js +104 -106
- package/tsOutputs/cli-parse/executors/nyc-report-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/pr-config-executor.js +83 -85
- package/tsOutputs/cli-parse/executors/pr-config-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/run-executor.js +93 -95
- package/tsOutputs/cli-parse/executors/run-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/start-execution-executor.js +91 -93
- package/tsOutputs/cli-parse/executors/start-execution-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/test-executions-executor.js +75 -77
- package/tsOutputs/cli-parse/executors/test-executions-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/test-listener-executor.js +149 -151
- package/tsOutputs/cli-parse/executors/test-listener-executor.js.map +1 -1
- package/tsOutputs/cli-parse/executors/test-runner-build-session-data-builder.js +75 -77
- package/tsOutputs/cli-parse/executors/test-runner-build-session-data-builder.js.map +1 -1
- package/tsOutputs/cli-parse/executors/upload-report-executor.js +116 -118
- package/tsOutputs/cli-parse/executors/upload-report-executor.js.map +1 -1
- package/tsOutputs/cli-parse/utils.js +32 -32
- package/tsOutputs/common/agent-events/agent-events-conracts.d.ts +123 -123
- package/tsOutputs/common/agent-events/agent-events-conracts.js +56 -56
- package/tsOutputs/common/agent-events/agent-events-controller.d.ts +45 -45
- package/tsOutputs/common/agent-events/agent-events-controller.js +301 -301
- package/tsOutputs/common/agent-events/agent-instance-info-builder.d.ts +22 -22
- package/tsOutputs/common/agent-events/agent-instance-info-builder.js +63 -63
- package/tsOutputs/common/agent-events/agent-start-info-builder.d.ts +14 -14
- package/tsOutputs/common/agent-events/agent-start-info-builder.js +23 -23
- package/tsOutputs/common/agent-events/ci-info-builder.d.ts +7 -7
- package/tsOutputs/common/agent-events/ci-info-builder.js +30 -30
- package/tsOutputs/common/agent-events/cockpit-notifier.d.ts +26 -26
- package/tsOutputs/common/agent-events/cockpit-notifier.js +119 -119
- package/tsOutputs/common/agent-events/dry-run-agent-events-controller.d.ts +7 -7
- package/tsOutputs/common/agent-events/dry-run-agent-events-controller.js +31 -33
- package/tsOutputs/common/agent-events/dry-run-agent-events-controller.js.map +1 -1
- package/tsOutputs/common/agent-events/machine-info-builder.d.ts +7 -7
- package/tsOutputs/common/agent-events/machine-info-builder.js +35 -35
- package/tsOutputs/common/agent-events/nodejs-env-info-builder.d.ts +8 -8
- package/tsOutputs/common/agent-events/nodejs-env-info-builder.js +19 -19
- package/tsOutputs/common/agent-events/sensitive-data-filter.d.ts +2 -2
- package/tsOutputs/common/agent-events/sensitive-data-filter.js +54 -54
- package/tsOutputs/common/agent-instance-data.d.ts +10 -10
- package/tsOutputs/common/agent-instance-data.js +39 -39
- package/tsOutputs/common/config-process/config-loader.d.ts +8 -8
- package/tsOutputs/common/config-process/config-loader.js +86 -86
- package/tsOutputs/common/config-process/config-system.d.ts +88 -88
- package/tsOutputs/common/config-process/config-system.js +293 -293
- package/tsOutputs/common/config-process/config.d.ts +60 -60
- package/tsOutputs/common/config-process/config.js +90 -92
- package/tsOutputs/common/config-process/config.js.map +1 -1
- package/tsOutputs/common/config-process/index.d.ts +21 -21
- package/tsOutputs/common/config-process/index.js +125 -127
- package/tsOutputs/common/config-process/index.js.map +1 -1
- package/tsOutputs/common/constants/constants.d.ts +18 -18
- package/tsOutputs/common/constants/constants.js +29 -29
- package/tsOutputs/common/constants/sl-env-vars.d.ts +52 -52
- package/tsOutputs/common/constants/sl-env-vars.js +122 -122
- package/tsOutputs/common/contracts.d.ts +123 -122
- package/tsOutputs/common/contracts.js +2 -2
- package/tsOutputs/common/coverage-elements/contracts.d.ts +25 -25
- package/tsOutputs/common/coverage-elements/contracts.js +8 -8
- package/tsOutputs/common/coverage-elements/file-element.d.ts +35 -35
- package/tsOutputs/common/coverage-elements/file-element.js +158 -158
- package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.d.ts +12 -12
- package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.js +95 -97
- package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.js.map +1 -1
- package/tsOutputs/common/coverage-elements/new-id-resolver.d.ts +3 -3
- package/tsOutputs/common/coverage-elements/new-id-resolver.js +45 -45
- package/tsOutputs/common/coverage-elements/original-module-loader.d.ts +41 -41
- package/tsOutputs/common/coverage-elements/original-module-loader.js +189 -189
- package/tsOutputs/common/coverage-elements/unique-id-converter.d.ts +32 -32
- package/tsOutputs/common/coverage-elements/unique-id-converter.js +234 -234
- package/tsOutputs/common/environment-data-service.d.ts +15 -15
- package/tsOutputs/common/environment-data-service.js +60 -60
- package/tsOutputs/common/events-process/events-contracts.d.ts +52 -52
- package/tsOutputs/common/events-process/events-contracts.js +19 -19
- package/tsOutputs/common/events-process/events-creator.js +42 -40
- package/tsOutputs/common/events-process/events-creator.js.map +1 -1
- package/tsOutputs/common/events-process/index.d.ts +42 -42
- package/tsOutputs/common/events-process/index.js +265 -266
- package/tsOutputs/common/events-process/index.js.map +1 -1
- package/tsOutputs/common/footprints-process/collection-interval.d.ts +10 -10
- package/tsOutputs/common/footprints-process/collection-interval.js +27 -27
- package/tsOutputs/common/footprints-process/footprints-service-proxy.d.ts +12 -12
- package/tsOutputs/common/footprints-process/footprints-service-proxy.js +51 -51
- package/tsOutputs/common/footprints-process/index.d.ts +71 -71
- package/tsOutputs/common/footprints-process/index.js +264 -264
- package/tsOutputs/common/footprints-process/istanbul-to-footprints-contract.d.ts +98 -98
- package/tsOutputs/common/footprints-process/istanbul-to-footprints-contract.js +9 -9
- package/tsOutputs/common/footprints-process/istanbul-to-footprints.d.ts +47 -47
- package/tsOutputs/common/footprints-process/istanbul-to-footprints.js +421 -421
- package/tsOutputs/common/footprints-process/production-footprints-handler.d.ts +54 -54
- package/tsOutputs/common/footprints-process/production-footprints-handler.js +308 -308
- package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.d.ts +20 -20
- package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.js +63 -65
- package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/buffer-size-helper.d.ts +15 -15
- package/tsOutputs/common/footprints-process-v6/buffer-size-helper.js +40 -40
- package/tsOutputs/common/footprints-process-v6/contracts.d.ts +184 -181
- package/tsOutputs/common/footprints-process-v6/contracts.js +9 -9
- package/tsOutputs/common/footprints-process-v6/footprints-buffer.d.ts +36 -34
- package/tsOutputs/common/footprints-process-v6/footprints-buffer.js +147 -135
- package/tsOutputs/common/footprints-process-v6/footprints-buffer.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/hits-collector.d.ts +24 -24
- package/tsOutputs/common/footprints-process-v6/hits-collector.js +168 -168
- package/tsOutputs/common/footprints-process-v6/hits-converter.d.ts +30 -28
- package/tsOutputs/common/footprints-process-v6/hits-converter.js +135 -105
- package/tsOutputs/common/footprints-process-v6/hits-converter.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/index.d.ts +41 -40
- package/tsOutputs/common/footprints-process-v6/index.js +304 -258
- package/tsOutputs/common/footprints-process-v6/index.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/location-formatter.d.ts +6 -6
- package/tsOutputs/common/footprints-process-v6/location-formatter.js +25 -25
- package/tsOutputs/common/footprints-process-v6/relative-path-resolver.d.ts +8 -8
- package/tsOutputs/common/footprints-process-v6/relative-path-resolver.js +28 -28
- package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.d.ts +9 -9
- package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.js +38 -40
- package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/remote-footprints-process.d.ts +8 -8
- package/tsOutputs/common/footprints-process-v6/remote-footprints-process.js +32 -34
- package/tsOutputs/common/footprints-process-v6/remote-footprints-process.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/remote-hits-collector.d.ts +14 -14
- package/tsOutputs/common/footprints-process-v6/remote-hits-collector.js +39 -41
- package/tsOutputs/common/footprints-process-v6/remote-hits-collector.js.map +1 -1
- package/tsOutputs/common/footprints-process-v6/source-map-data.d.ts +9 -9
- package/tsOutputs/common/footprints-process-v6/source-map-data.js +32 -32
- package/tsOutputs/common/footprints-process-v6/source-map-data.js.map +1 -1
- package/tsOutputs/common/http/backend-proxy-interface.d.ts +33 -33
- package/tsOutputs/common/http/backend-proxy-interface.js +2 -2
- package/tsOutputs/common/http/backend-proxy.d.ts +54 -53
- package/tsOutputs/common/http/backend-proxy.js +408 -398
- package/tsOutputs/common/http/backend-proxy.js.map +1 -1
- package/tsOutputs/common/http/contracts.d.ts +280 -203
- package/tsOutputs/common/http/contracts.js +156 -158
- package/tsOutputs/common/http/contracts.js.map +1 -1
- package/tsOutputs/common/http/dry-run-proxy.js +106 -106
- package/tsOutputs/common/http/entities-mapper.d.ts +4 -4
- package/tsOutputs/common/http/entities-mapper.js +17 -17
- package/tsOutputs/common/http/http-client.d.ts +21 -21
- package/tsOutputs/common/http/http-client.js +195 -191
- package/tsOutputs/common/http/http-client.js.map +1 -1
- package/tsOutputs/common/http/http-verb.d.ts +6 -6
- package/tsOutputs/common/http/http-verb.js +10 -10
- package/tsOutputs/common/http/sl-routes.d.ts +70 -70
- package/tsOutputs/common/http/sl-routes.js +218 -218
- package/tsOutputs/common/ignored-files-handler.js +122 -122
- package/tsOutputs/common/logger.d.ts +40 -40
- package/tsOutputs/common/logger.js +188 -190
- package/tsOutputs/common/logger.js.map +1 -1
- package/tsOutputs/common/messages-formatter.d.ts +6 -6
- package/tsOutputs/common/messages-formatter.js +21 -21
- package/tsOutputs/common/queue.d.ts +19 -19
- package/tsOutputs/common/queue.js +55 -57
- package/tsOutputs/common/queue.js.map +1 -1
- package/tsOutputs/common/scm/contracts.js +2 -2
- package/tsOutputs/common/scm/git-cloner.js +138 -0
- package/tsOutputs/common/scm/git-cloner.js.map +1 -0
- package/tsOutputs/common/scm/git-format-builder.js +72 -72
- package/tsOutputs/common/scm/git.js +411 -411
- package/tsOutputs/common/scm/none.js +115 -115
- package/tsOutputs/common/scm/scm-factory.js +21 -21
- package/tsOutputs/common/short-name-to-file-mapper.js +79 -79
- package/tsOutputs/common/source-map-handler.d.ts +58 -58
- package/tsOutputs/common/source-map-handler.js +197 -197
- package/tsOutputs/common/source-map-reader.js +84 -84
- package/tsOutputs/common/source-maps-utils.d.ts +3 -3
- package/tsOutputs/common/source-maps-utils.js +39 -39
- package/tsOutputs/common/state-tracker-fpv6.d.ts +6 -6
- package/tsOutputs/common/state-tracker-fpv6.js +42 -44
- package/tsOutputs/common/state-tracker-fpv6.js.map +1 -1
- package/tsOutputs/common/state-tracker.d.ts +49 -49
- package/tsOutputs/common/state-tracker.js +299 -304
- package/tsOutputs/common/state-tracker.js.map +1 -1
- package/tsOutputs/common/system-date.d.ts +2 -2
- package/tsOutputs/common/system-date.js +21 -21
- package/tsOutputs/common/utils/abstract-data-builder.d.ts +10 -10
- package/tsOutputs/common/utils/abstract-data-builder.js +24 -24
- package/tsOutputs/common/utils/build-session-data-builder.d.ts +18 -18
- package/tsOutputs/common/utils/build-session-data-builder.js +135 -137
- package/tsOutputs/common/utils/build-session-data-builder.js.map +1 -1
- package/tsOutputs/common/utils/dependency-utils.js +69 -69
- package/tsOutputs/common/utils/files-utils.d.ts +6 -5
- package/tsOutputs/common/utils/files-utils.js +45 -36
- package/tsOutputs/common/utils/files-utils.js.map +1 -1
- package/tsOutputs/common/utils/parsing-utils.d.ts +4 -4
- package/tsOutputs/common/utils/parsing-utils.js +29 -29
- package/tsOutputs/common/utils/test-utils/mock-server-utils/contracts.js +10 -10
- package/tsOutputs/common/utils/test-utils/mock-server-utils/mock-server-proxy.js +248 -248
- package/tsOutputs/common/utils/timer-utils.d.ts +3 -3
- package/tsOutputs/common/utils/timer-utils.js +12 -12
- package/tsOutputs/common/utils/token-data-builder.d.ts +21 -21
- package/tsOutputs/common/utils/token-data-builder.js +95 -97
- package/tsOutputs/common/utils/token-data-builder.js.map +1 -1
- package/tsOutputs/common/utils/validation-utils.d.ts +3 -3
- package/tsOutputs/common/utils/validation-utils.js +18 -18
- package/tsOutputs/common/uuid.js +23 -23
- package/tsOutputs/common/watchdog.d.ts +96 -96
- package/tsOutputs/common/watchdog.js +149 -151
- package/tsOutputs/common/watchdog.js.map +1 -1
- package/tsOutputs/mocha-reporter/constants.js +27 -27
- package/tsOutputs/mocha-reporter/end-execution.js +22 -22
- package/tsOutputs/mocha-reporter/index.js +323 -323
- package/tsOutputs/test-listener/IConsoleLogger.js +5 -5
- package/tsOutputs/test-listener/SlNodeJsProxy.js +96 -96
- package/tsOutputs/test-listener/UserMessageHelper.js +47 -47
- package/tsOutputs/test-listener/agent-loader.js +58 -58
- package/tsOutputs/test-listener/agent.d.ts +53 -53
- package/tsOutputs/test-listener/agent.js +273 -273
- package/tsOutputs/test-listener/api.js +157 -157
- package/tsOutputs/test-listener/base-proxy.d.ts +15 -15
- package/tsOutputs/test-listener/base-proxy.js +133 -133
- package/tsOutputs/test-listener/bootstrap.js +16 -16
- package/tsOutputs/test-listener/child-process-patcher.js +136 -136
- package/tsOutputs/test-listener/cli.js +64 -64
- package/tsOutputs/test-listener/coloring/http-coloring.d.ts +15 -15
- package/tsOutputs/test-listener/coloring/http-coloring.js +188 -188
- package/tsOutputs/test-listener/coloring/icoloring-provider.d.ts +10 -10
- package/tsOutputs/test-listener/coloring/icoloring-provider.js +2 -2
- package/tsOutputs/test-listener/coloring/listening-port.d.ts +20 -20
- package/tsOutputs/test-listener/coloring/listening-port.js +48 -48
- package/tsOutputs/test-listener/command-line-arg-parser.js +91 -91
- package/tsOutputs/test-listener/config-process/config-loader.js +104 -104
- package/tsOutputs/test-listener/config-process/config-system.d.ts +88 -88
- package/tsOutputs/test-listener/config-process/config-system.js +285 -285
- package/tsOutputs/test-listener/config-process/index.js +126 -128
- package/tsOutputs/test-listener/config-process/index.js.map +1 -1
- package/tsOutputs/test-listener/config.d.ts +50 -50
- package/tsOutputs/test-listener/config.js +80 -82
- package/tsOutputs/test-listener/config.js.map +1 -1
- package/tsOutputs/test-listener/contracts.d.ts +72 -72
- package/tsOutputs/test-listener/contracts.js +2 -2
- package/tsOutputs/test-listener/entities/BasicConfigurationData.js +72 -72
- package/tsOutputs/test-listener/entities/build-scanner/ConfigModeData.js +48 -50
- package/tsOutputs/test-listener/entities/build-scanner/ConfigModeData.js.map +1 -1
- package/tsOutputs/test-listener/entities/build-scanner/ScanModeData.js +51 -53
- package/tsOutputs/test-listener/entities/build-scanner/ScanModeData.js.map +1 -1
- package/tsOutputs/test-listener/environment-data-service.d.ts +11 -11
- package/tsOutputs/test-listener/environment-data-service.js +60 -60
- package/tsOutputs/test-listener/execution-process/contracts.js +5 -5
- package/tsOutputs/test-listener/execution-process/entities-mapper.js +49 -49
- package/tsOutputs/test-listener/execution-process/execution-service-proxy.js +205 -207
- package/tsOutputs/test-listener/execution-process/execution-service-proxy.js.map +1 -1
- package/tsOutputs/test-listener/execution-process/index.js +163 -163
- package/tsOutputs/test-listener/factory.d.ts +87 -87
- package/tsOutputs/test-listener/factory.js +285 -285
- package/tsOutputs/test-listener/footprints-process/footprints-service-proxy.js +50 -52
- package/tsOutputs/test-listener/footprints-process/footprints-service-proxy.js.map +1 -1
- package/tsOutputs/test-listener/footprints-process/index.js +230 -230
- package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-base.js +130 -130
- package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-contract.js +2 -2
- package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-v3.js +288 -290
- package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-v3.js.map +1 -1
- package/tsOutputs/test-listener/integrations/SlGulp.js +104 -104
- package/tsOutputs/test-listener/logs-process/index.d.ts +48 -48
- package/tsOutputs/test-listener/logs-process/index.js +142 -142
- package/tsOutputs/test-listener/logs-process/log-service-proxy.d.ts +9 -9
- package/tsOutputs/test-listener/logs-process/log-service-proxy.js +29 -31
- package/tsOutputs/test-listener/logs-process/log-service-proxy.js.map +1 -1
- package/tsOutputs/test-listener/nyc-report-executor-fpv6.js +143 -136
- package/tsOutputs/test-listener/nyc-report-executor-fpv6.js.map +1 -1
- package/tsOutputs/test-listener/nyc-report-executor.js +144 -144
- package/tsOutputs/test-listener/queue.js +55 -57
- package/tsOutputs/test-listener/queue.js.map +1 -1
- package/tsOutputs/test-listener/remote-agent.d.ts +42 -42
- package/tsOutputs/test-listener/remote-agent.js +200 -200
- package/tsOutputs/test-listener/resolvers/AppNameResolver.js +32 -34
- package/tsOutputs/test-listener/resolvers/AppNameResolver.js.map +1 -1
- package/tsOutputs/test-listener/resolvers/ArgumentResolver.js +64 -64
- package/tsOutputs/test-listener/resolvers/BuildResolver.js +31 -33
- package/tsOutputs/test-listener/resolvers/BuildResolver.js.map +1 -1
- package/tsOutputs/test-listener/resolvers/BuildSessionIdFileResolver.js +31 -33
- package/tsOutputs/test-listener/resolvers/BuildSessionIdFileResolver.js.map +1 -1
- package/tsOutputs/test-listener/resolvers/BuildSessionIdResolver.js +34 -36
- package/tsOutputs/test-listener/resolvers/BuildSessionIdResolver.js.map +1 -1
- package/tsOutputs/test-listener/resolvers/ProxyResolver.js +31 -33
- package/tsOutputs/test-listener/resolvers/ProxyResolver.js.map +1 -1
- package/tsOutputs/test-listener/resolvers/TokenResolver.js +31 -33
- package/tsOutputs/test-listener/resolvers/TokenResolver.js.map +1 -1
- package/tsOutputs/test-listener/state-tracker-process/index.js +160 -162
- package/tsOutputs/test-listener/state-tracker-process/index.js.map +1 -1
- package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.d.ts +8 -8
- package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.js +69 -71
- package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.js.map +1 -1
- package/tsOutputs/test-listener/test-recommendation-handler.d.ts +29 -29
- package/tsOutputs/test-listener/test-recommendation-handler.js +161 -161
- package/tsOutputs/test-listener/upload-report-handler.js +96 -96
- package/tsOutputs/test-listener/utils.js +68 -68
- package/tsOutputs/test-listener/uuid.d.ts +3 -3
- package/tsOutputs/test-listener/uuid.js +23 -23
- package/tsOutputs/test-listener/wait-for-multiple-callbacks.d.ts +22 -22
- package/tsOutputs/test-listener/wait-for-multiple-callbacks.js +60 -60
- package/tsOutputs/test-listener/watchdog.d.ts +89 -89
- package/tsOutputs/test-listener/watchdog.js +144 -146
- package/tsOutputs/test-listener/watchdog.js.map +1 -1
- package/browser-agent/dist/browser-agent-all.js +0 -100989
- package/browser-agent/dist/browser-agent-all.min.js +0 -57
- package/browser-agent/package.json +0 -44
|
@@ -1,53 +1,51 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
this.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}(base_proxy_1.BaseProxy));
|
|
52
|
-
exports.FootprintsServiceProxy = FootprintsServiceProxy;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
extendStatics(d, b);
|
|
11
|
+
function __() { this.constructor = d; }
|
|
12
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.FootprintsServiceProxy = void 0;
|
|
17
|
+
var base_proxy_1 = require("../base-proxy");
|
|
18
|
+
var messages_formatter_1 = require("../../common/messages-formatter");
|
|
19
|
+
var FootprintsServiceProxy = /** @class */ (function (_super) {
|
|
20
|
+
__extends(FootprintsServiceProxy, _super);
|
|
21
|
+
function FootprintsServiceProxy(cfg, request, logger) {
|
|
22
|
+
return _super.call(this, cfg, request, logger) || this;
|
|
23
|
+
}
|
|
24
|
+
FootprintsServiceProxy.prototype.submitFootprints = function (packetToSend, callback) {
|
|
25
|
+
if (!packetToSend) {
|
|
26
|
+
this.logger.info('Submit footprints - got null or empty packet. Skip submitting.');
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
var bufferToSend = new Buffer(JSON.stringify(packetToSend));
|
|
30
|
+
var hitFiles = this.getHitFiles(packetToSend);
|
|
31
|
+
this.logger.debug('Submitting footprints, tests: %s', JSON.stringify(packetToSend.tests));
|
|
32
|
+
this.logger.debug('Submitting footprints, files: %s', hitFiles);
|
|
33
|
+
var url = '/v5/agents/footprints';
|
|
34
|
+
this.post(bufferToSend, url, callback);
|
|
35
|
+
};
|
|
36
|
+
FootprintsServiceProxy.prototype.getHitFiles = function (packetToSend) {
|
|
37
|
+
if (!this.logger.isDebugEnabled()) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
var formatter = new messages_formatter_1.MessagesFormatter();
|
|
41
|
+
if (packetToSend && packetToSend.apps && packetToSend.apps[0] && packetToSend.apps[0].files) {
|
|
42
|
+
packetToSend.apps[0].files.forEach(function (file) {
|
|
43
|
+
formatter.addContent(file.path);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
return formatter.content;
|
|
47
|
+
};
|
|
48
|
+
return FootprintsServiceProxy;
|
|
49
|
+
}(base_proxy_1.BaseProxy));
|
|
50
|
+
exports.FootprintsServiceProxy = FootprintsServiceProxy;
|
|
53
51
|
//# sourceMappingURL=footprints-service-proxy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footprints-service-proxy.js","sourceRoot":"","sources":["../../../test-listener/footprints-process/footprints-service-proxy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"footprints-service-proxy.js","sourceRoot":"","sources":["../../../test-listener/footprints-process/footprints-service-proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0C;AAI1C,sEAAkE;AAIlE;IAA4C,0CAAS;IACjD,gCAAmB,GAAgB,EAAE,OAAkC,EAAE,MAAc;eACnF,kBAAM,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC;IAC/B,CAAC;IAEM,iDAAgB,GAAvB,UAAwB,YAAgC,EAAE,QAA8B;QACpF,IAAG,CAAC,YAAY,EAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YACnF,OAAO;SACV;QACD,IAAM,YAAY,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9D,IAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAM,GAAG,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAEO,4CAAW,GAAnB,UAAoB,YAAY;QAC5B,IAAG,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAC;YAAC,OAAO;SAAC;QAC1C,IAAM,SAAS,GAAG,IAAI,sCAAiB,EAAE,CAAA;QACzC,IAAG,YAAY,IAAI,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAC;YACvF,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;gBACpC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;SACN;QACD,OAAO,SAAS,CAAC,OAAO,CAAC;IAC7B,CAAC;IACL,6BAAC;AAAD,CAAC,AA5BD,CAA4C,sBAAS,GA4BpD;AA5BY,wDAAsB"}
|
|
@@ -1,231 +1,231 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FootprintsProcess = void 0;
|
|
4
|
-
var queue_1 = require("../queue");
|
|
5
|
-
var system_date_1 = require("../../common/system-date");
|
|
6
|
-
var FootprintsProcess = /** @class */ (function () {
|
|
7
|
-
function FootprintsProcess(
|
|
8
|
-
/**
|
|
9
|
-
* Initial configuration
|
|
10
|
-
*/
|
|
11
|
-
cfg,
|
|
12
|
-
/**
|
|
13
|
-
* Background thread that tells the footprints service to send footprints from the queue to the server
|
|
14
|
-
*/
|
|
15
|
-
sendToServerWatchdog,
|
|
16
|
-
/**
|
|
17
|
-
* Foreground thread that prevents the process from shutting down, and kept alive while there are items to submit to the server or items are currently being submitted
|
|
18
|
-
*/
|
|
19
|
-
keepaliveWatchdog,
|
|
20
|
-
/**
|
|
21
|
-
* Configuration process that periodically refreshes server-sent configuration
|
|
22
|
-
*/
|
|
23
|
-
configProcess,
|
|
24
|
-
/**
|
|
25
|
-
* Proxy to the server for footprints submission
|
|
26
|
-
*/
|
|
27
|
-
footprintsServiceProxy,
|
|
28
|
-
/**
|
|
29
|
-
* Environments service, used to get environmental data for submission (process id, machine data, etc.)
|
|
30
|
-
*/
|
|
31
|
-
environmentDataService, agentInstanceData, istanbulToFootprints, logger) {
|
|
32
|
-
var _this = this;
|
|
33
|
-
this.cfg = cfg;
|
|
34
|
-
this.sendToServerWatchdog = sendToServerWatchdog;
|
|
35
|
-
this.keepaliveWatchdog = keepaliveWatchdog;
|
|
36
|
-
this.configProcess = configProcess;
|
|
37
|
-
this.footprintsServiceProxy = footprintsServiceProxy;
|
|
38
|
-
this.environmentDataService = environmentDataService;
|
|
39
|
-
this.agentInstanceData = agentInstanceData;
|
|
40
|
-
this.istanbulToFootprints = istanbulToFootprints;
|
|
41
|
-
this.logger = logger;
|
|
42
|
-
this.isSubmittingFootprints = false;
|
|
43
|
-
this.sequence = 0;
|
|
44
|
-
this.isRunning = false;
|
|
45
|
-
this.stopCallbacks = [];
|
|
46
|
-
if (!cfg)
|
|
47
|
-
throw new Error('cfg was not specified');
|
|
48
|
-
if (!sendToServerWatchdog)
|
|
49
|
-
throw new Error('sendToServerWatchdog was not specified');
|
|
50
|
-
if (!keepaliveWatchdog)
|
|
51
|
-
throw new Error('keepaliveWatchdog was not specified');
|
|
52
|
-
if (!configProcess)
|
|
53
|
-
throw new Error('configProcess was not specified');
|
|
54
|
-
if (!footprintsServiceProxy)
|
|
55
|
-
throw new Error('footprintsServiceProxy was not specified');
|
|
56
|
-
if (!environmentDataService)
|
|
57
|
-
throw new Error('environmentDataService was not specified');
|
|
58
|
-
if (!agentInstanceData)
|
|
59
|
-
throw new Error('agentInstanceData was not specified');
|
|
60
|
-
if (!istanbulToFootprints)
|
|
61
|
-
throw new Error('istanbulToFootprints was not specified');
|
|
62
|
-
if (!logger) {
|
|
63
|
-
throw new Error('logger was not specified');
|
|
64
|
-
}
|
|
65
|
-
this.footprintsQueue = new queue_1.Queue();
|
|
66
|
-
sendToServerWatchdog.on('alarm', function () {
|
|
67
|
-
_this.logger.debug('Start submitting footprints, triggered by send to server watchdog.');
|
|
68
|
-
_this.submitQueuedFootprints();
|
|
69
|
-
});
|
|
70
|
-
configProcess.on('configuration_changed', function (cfg) {
|
|
71
|
-
_this.updateConfig(cfg);
|
|
72
|
-
});
|
|
73
|
-
this.footprintsQueue.on('full', function () {
|
|
74
|
-
_this.logger.debug('Start submitting footprints, queue is full.');
|
|
75
|
-
_this.submitQueuedFootprints();
|
|
76
|
-
});
|
|
77
|
-
keepaliveWatchdog.on('alarm', function () {
|
|
78
|
-
//console.log('keepaliveWatchdog. isSubmittingFootprints:' + this.isSubmittingFootprints + ', queue size: ' + this.footprintsQueue.getQueueSize());
|
|
79
|
-
if (!_this.isSubmittingFootprints && _this.footprintsQueue.getQueueSize() == 0) {
|
|
80
|
-
keepaliveWatchdog.stop();
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
FootprintsProcess.prototype.enqueueCurrentFootprints = function (executionId, testName) {
|
|
85
|
-
var footprints = this.istanbulToFootprints.getCurrentFootprints();
|
|
86
|
-
var hitModules = Object.keys(footprints);
|
|
87
|
-
if (!hitModules || hitModules.length == 0) { //If no modules were hit at all, don't enqueue anything
|
|
88
|
-
this.logger.info('No files were hit, not enqueuing footprints.');
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
this.logger.info('Enqueuing footprints for %s files.', hitModules.length);
|
|
92
|
-
this.footprintsQueue.enqueue({
|
|
93
|
-
executionId: executionId,
|
|
94
|
-
testName: testName,
|
|
95
|
-
footprints: footprints,
|
|
96
|
-
localTime: system_date_1.getSystemDateValueOf()
|
|
97
|
-
});
|
|
98
|
-
if (this.isRunning && this.cfg.sendFootprints.value && this.cfg.enabled.value) {
|
|
99
|
-
this.ensureKeepaliveThreadRunning();
|
|
100
|
-
this.sendToServerWatchdog.start();
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
FootprintsProcess.prototype.ensureKeepaliveThreadRunning = function () {
|
|
104
|
-
this.keepaliveWatchdog.start();
|
|
105
|
-
};
|
|
106
|
-
FootprintsProcess.prototype.updateConfig = function (updatedCfg) {
|
|
107
|
-
if (updatedCfg.sendFootprints.value === false || updatedCfg.enabled.value === false) {
|
|
108
|
-
this.footprintsQueue.clear();
|
|
109
|
-
this.stop(function () { });
|
|
110
|
-
}
|
|
111
|
-
this.cfg = updatedCfg;
|
|
112
|
-
this.sendToServerWatchdog.setInterval(this.cfg.interval.value);
|
|
113
|
-
};
|
|
114
|
-
FootprintsProcess.prototype.createFootprintsPacket = function (items) {
|
|
115
|
-
var packet = this.istanbulToFootprints.createFootprintsPackageForSending(items, {
|
|
116
|
-
customerId: this.cfg.customerId.value,
|
|
117
|
-
environment: this.environmentDataService.getEnvDataForSubmission(),
|
|
118
|
-
configurationData: this.cfg.toJsonObject(),
|
|
119
|
-
meta: {
|
|
120
|
-
sequence: ++this.sequence,
|
|
121
|
-
generated: system_date_1.getSystemDateValueOf(),
|
|
122
|
-
agentId: this.agentInstanceData.agentId
|
|
123
|
-
},
|
|
124
|
-
tests: [],
|
|
125
|
-
apps: []
|
|
126
|
-
});
|
|
127
|
-
return packet;
|
|
128
|
-
};
|
|
129
|
-
FootprintsProcess.prototype.submitQueuedFootprints = function () {
|
|
130
|
-
var _this = this;
|
|
131
|
-
if (!this.isRunning) {
|
|
132
|
-
this.logger.info('Agent is not running, not sending footprints');
|
|
133
|
-
return;
|
|
134
|
-
}
|
|
135
|
-
if (this.cfg.sendFootprints.value === false) {
|
|
136
|
-
this.logger.info('Not sending footprints since agent is configured to not send.');
|
|
137
|
-
return; //Can't start without server or token
|
|
138
|
-
}
|
|
139
|
-
if (this.isSubmittingFootprints) {
|
|
140
|
-
this.logger.info('Not sending footprints since its already submitting.');
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
if (this.footprintsQueue.getQueueSize() == 0) {
|
|
144
|
-
this.logger.info('Not sending footprints since queue size is 0');
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
this.logger.info('About to send footprints. Queue size:' + this.footprintsQueue.getQueueSize());
|
|
148
|
-
var items = this.footprintsQueue.dequeue(/*this.cfg.maxFootprintsChunkSize ||*/ 1000);
|
|
149
|
-
var packet = this.createFootprintsPacket(items);
|
|
150
|
-
this.isSubmittingFootprints = true;
|
|
151
|
-
this.footprintsServiceProxy.submitFootprints(packet, function (err) {
|
|
152
|
-
_this.isSubmittingFootprints = false;
|
|
153
|
-
_this.logger.info('Sent footprints. Queue size:' + _this.footprintsQueue.getQueueSize() + ', err:' + err);
|
|
154
|
-
if (err) {
|
|
155
|
-
_this.environmentDataService.setLastError(err.stack);
|
|
156
|
-
_this.footprintsQueue.requeue(items); //Requeue items for later submission
|
|
157
|
-
}
|
|
158
|
-
else if (_this.footprintsQueue.getQueueSize() > 0) { //If there was an error, don't send now. Otherwise, if the queue still has items, send those now
|
|
159
|
-
_this.submitQueuedFootprints();
|
|
160
|
-
}
|
|
161
|
-
else
|
|
162
|
-
_this.fireQueueEmpty();
|
|
163
|
-
});
|
|
164
|
-
};
|
|
165
|
-
FootprintsProcess.prototype.fireQueueEmpty = function () {
|
|
166
|
-
var _this = this;
|
|
167
|
-
if (this.stopCallbacks.length > 0) {
|
|
168
|
-
this.stopCallbacks.forEach(function (cb) {
|
|
169
|
-
try {
|
|
170
|
-
cb();
|
|
171
|
-
}
|
|
172
|
-
catch (err) {
|
|
173
|
-
_this.environmentDataService.setLastError(err.stack);
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
};
|
|
178
|
-
FootprintsProcess.prototype.start = function () {
|
|
179
|
-
if (this.isRunning)
|
|
180
|
-
return; //Already started
|
|
181
|
-
if (this.cfg.enabled.value == false)
|
|
182
|
-
return; //Don't do anything if agent is completely disabled
|
|
183
|
-
this.isRunning = true;
|
|
184
|
-
this.sendToServerWatchdog.start();
|
|
185
|
-
if (this.footprintsQueue.getQueueSize() > 0) {
|
|
186
|
-
this.ensureKeepaliveThreadRunning();
|
|
187
|
-
}
|
|
188
|
-
};
|
|
189
|
-
FootprintsProcess.prototype.stop = function (callback) {
|
|
190
|
-
var _this = this;
|
|
191
|
-
try {
|
|
192
|
-
this.sendToServerWatchdog.stop();
|
|
193
|
-
if (this.cfg.enabled.value === false || this.cfg.sendFootprints.value === false) { //Footprints/Agent functionality is disabled. Return immediately
|
|
194
|
-
this.isRunning = false;
|
|
195
|
-
return callback();
|
|
196
|
-
}
|
|
197
|
-
this.logger.debug('Start submitting footprints, triggered by stop event.');
|
|
198
|
-
this.submitQueuedFootprints(); //If footprints are being submitted, this has no effect. Otherwise, it will start submitting footprints if the queue is non-empty
|
|
199
|
-
if (this.isSubmittingFootprints) {
|
|
200
|
-
/*
|
|
201
|
-
Nothing to do right now, since footprints are being submitted
|
|
202
|
-
When the submission is over (successfully or not), if the queue is empty the next batch of footprints will be sent.
|
|
203
|
-
If after submission the queue is cleared, this callback will be called
|
|
204
|
-
*/
|
|
205
|
-
this.stopCallbacks.push(function () {
|
|
206
|
-
_this.isRunning = false;
|
|
207
|
-
_this.keepaliveWatchdog.stop();
|
|
208
|
-
return callback();
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
/*
|
|
213
|
-
Queue must be empty, and nothing is sent. submitQueuedFootprints() would have started sending footprints if the queue was non-empty
|
|
214
|
-
*/
|
|
215
|
-
this.isRunning = false;
|
|
216
|
-
this.keepaliveWatchdog.stop();
|
|
217
|
-
return callback();
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
catch (err) {
|
|
221
|
-
//TODO: log
|
|
222
|
-
return callback();
|
|
223
|
-
}
|
|
224
|
-
};
|
|
225
|
-
FootprintsProcess.prototype.getQueueSize = function () {
|
|
226
|
-
return this.footprintsQueue.getQueueSize();
|
|
227
|
-
};
|
|
228
|
-
return FootprintsProcess;
|
|
229
|
-
}());
|
|
230
|
-
exports.FootprintsProcess = FootprintsProcess;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FootprintsProcess = void 0;
|
|
4
|
+
var queue_1 = require("../queue");
|
|
5
|
+
var system_date_1 = require("../../common/system-date");
|
|
6
|
+
var FootprintsProcess = /** @class */ (function () {
|
|
7
|
+
function FootprintsProcess(
|
|
8
|
+
/**
|
|
9
|
+
* Initial configuration
|
|
10
|
+
*/
|
|
11
|
+
cfg,
|
|
12
|
+
/**
|
|
13
|
+
* Background thread that tells the footprints service to send footprints from the queue to the server
|
|
14
|
+
*/
|
|
15
|
+
sendToServerWatchdog,
|
|
16
|
+
/**
|
|
17
|
+
* Foreground thread that prevents the process from shutting down, and kept alive while there are items to submit to the server or items are currently being submitted
|
|
18
|
+
*/
|
|
19
|
+
keepaliveWatchdog,
|
|
20
|
+
/**
|
|
21
|
+
* Configuration process that periodically refreshes server-sent configuration
|
|
22
|
+
*/
|
|
23
|
+
configProcess,
|
|
24
|
+
/**
|
|
25
|
+
* Proxy to the server for footprints submission
|
|
26
|
+
*/
|
|
27
|
+
footprintsServiceProxy,
|
|
28
|
+
/**
|
|
29
|
+
* Environments service, used to get environmental data for submission (process id, machine data, etc.)
|
|
30
|
+
*/
|
|
31
|
+
environmentDataService, agentInstanceData, istanbulToFootprints, logger) {
|
|
32
|
+
var _this = this;
|
|
33
|
+
this.cfg = cfg;
|
|
34
|
+
this.sendToServerWatchdog = sendToServerWatchdog;
|
|
35
|
+
this.keepaliveWatchdog = keepaliveWatchdog;
|
|
36
|
+
this.configProcess = configProcess;
|
|
37
|
+
this.footprintsServiceProxy = footprintsServiceProxy;
|
|
38
|
+
this.environmentDataService = environmentDataService;
|
|
39
|
+
this.agentInstanceData = agentInstanceData;
|
|
40
|
+
this.istanbulToFootprints = istanbulToFootprints;
|
|
41
|
+
this.logger = logger;
|
|
42
|
+
this.isSubmittingFootprints = false;
|
|
43
|
+
this.sequence = 0;
|
|
44
|
+
this.isRunning = false;
|
|
45
|
+
this.stopCallbacks = [];
|
|
46
|
+
if (!cfg)
|
|
47
|
+
throw new Error('cfg was not specified');
|
|
48
|
+
if (!sendToServerWatchdog)
|
|
49
|
+
throw new Error('sendToServerWatchdog was not specified');
|
|
50
|
+
if (!keepaliveWatchdog)
|
|
51
|
+
throw new Error('keepaliveWatchdog was not specified');
|
|
52
|
+
if (!configProcess)
|
|
53
|
+
throw new Error('configProcess was not specified');
|
|
54
|
+
if (!footprintsServiceProxy)
|
|
55
|
+
throw new Error('footprintsServiceProxy was not specified');
|
|
56
|
+
if (!environmentDataService)
|
|
57
|
+
throw new Error('environmentDataService was not specified');
|
|
58
|
+
if (!agentInstanceData)
|
|
59
|
+
throw new Error('agentInstanceData was not specified');
|
|
60
|
+
if (!istanbulToFootprints)
|
|
61
|
+
throw new Error('istanbulToFootprints was not specified');
|
|
62
|
+
if (!logger) {
|
|
63
|
+
throw new Error('logger was not specified');
|
|
64
|
+
}
|
|
65
|
+
this.footprintsQueue = new queue_1.Queue();
|
|
66
|
+
sendToServerWatchdog.on('alarm', function () {
|
|
67
|
+
_this.logger.debug('Start submitting footprints, triggered by send to server watchdog.');
|
|
68
|
+
_this.submitQueuedFootprints();
|
|
69
|
+
});
|
|
70
|
+
configProcess.on('configuration_changed', function (cfg) {
|
|
71
|
+
_this.updateConfig(cfg);
|
|
72
|
+
});
|
|
73
|
+
this.footprintsQueue.on('full', function () {
|
|
74
|
+
_this.logger.debug('Start submitting footprints, queue is full.');
|
|
75
|
+
_this.submitQueuedFootprints();
|
|
76
|
+
});
|
|
77
|
+
keepaliveWatchdog.on('alarm', function () {
|
|
78
|
+
//console.log('keepaliveWatchdog. isSubmittingFootprints:' + this.isSubmittingFootprints + ', queue size: ' + this.footprintsQueue.getQueueSize());
|
|
79
|
+
if (!_this.isSubmittingFootprints && _this.footprintsQueue.getQueueSize() == 0) {
|
|
80
|
+
keepaliveWatchdog.stop();
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
FootprintsProcess.prototype.enqueueCurrentFootprints = function (executionId, testName) {
|
|
85
|
+
var footprints = this.istanbulToFootprints.getCurrentFootprints();
|
|
86
|
+
var hitModules = Object.keys(footprints);
|
|
87
|
+
if (!hitModules || hitModules.length == 0) { //If no modules were hit at all, don't enqueue anything
|
|
88
|
+
this.logger.info('No files were hit, not enqueuing footprints.');
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this.logger.info('Enqueuing footprints for %s files.', hitModules.length);
|
|
92
|
+
this.footprintsQueue.enqueue({
|
|
93
|
+
executionId: executionId,
|
|
94
|
+
testName: testName,
|
|
95
|
+
footprints: footprints,
|
|
96
|
+
localTime: system_date_1.getSystemDateValueOf()
|
|
97
|
+
});
|
|
98
|
+
if (this.isRunning && this.cfg.sendFootprints.value && this.cfg.enabled.value) {
|
|
99
|
+
this.ensureKeepaliveThreadRunning();
|
|
100
|
+
this.sendToServerWatchdog.start();
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
FootprintsProcess.prototype.ensureKeepaliveThreadRunning = function () {
|
|
104
|
+
this.keepaliveWatchdog.start();
|
|
105
|
+
};
|
|
106
|
+
FootprintsProcess.prototype.updateConfig = function (updatedCfg) {
|
|
107
|
+
if (updatedCfg.sendFootprints.value === false || updatedCfg.enabled.value === false) {
|
|
108
|
+
this.footprintsQueue.clear();
|
|
109
|
+
this.stop(function () { });
|
|
110
|
+
}
|
|
111
|
+
this.cfg = updatedCfg;
|
|
112
|
+
this.sendToServerWatchdog.setInterval(this.cfg.interval.value);
|
|
113
|
+
};
|
|
114
|
+
FootprintsProcess.prototype.createFootprintsPacket = function (items) {
|
|
115
|
+
var packet = this.istanbulToFootprints.createFootprintsPackageForSending(items, {
|
|
116
|
+
customerId: this.cfg.customerId.value,
|
|
117
|
+
environment: this.environmentDataService.getEnvDataForSubmission(),
|
|
118
|
+
configurationData: this.cfg.toJsonObject(),
|
|
119
|
+
meta: {
|
|
120
|
+
sequence: ++this.sequence,
|
|
121
|
+
generated: system_date_1.getSystemDateValueOf(),
|
|
122
|
+
agentId: this.agentInstanceData.agentId
|
|
123
|
+
},
|
|
124
|
+
tests: [],
|
|
125
|
+
apps: []
|
|
126
|
+
});
|
|
127
|
+
return packet;
|
|
128
|
+
};
|
|
129
|
+
FootprintsProcess.prototype.submitQueuedFootprints = function () {
|
|
130
|
+
var _this = this;
|
|
131
|
+
if (!this.isRunning) {
|
|
132
|
+
this.logger.info('Agent is not running, not sending footprints');
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
if (this.cfg.sendFootprints.value === false) {
|
|
136
|
+
this.logger.info('Not sending footprints since agent is configured to not send.');
|
|
137
|
+
return; //Can't start without server or token
|
|
138
|
+
}
|
|
139
|
+
if (this.isSubmittingFootprints) {
|
|
140
|
+
this.logger.info('Not sending footprints since its already submitting.');
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
if (this.footprintsQueue.getQueueSize() == 0) {
|
|
144
|
+
this.logger.info('Not sending footprints since queue size is 0');
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
this.logger.info('About to send footprints. Queue size:' + this.footprintsQueue.getQueueSize());
|
|
148
|
+
var items = this.footprintsQueue.dequeue(/*this.cfg.maxFootprintsChunkSize ||*/ 1000);
|
|
149
|
+
var packet = this.createFootprintsPacket(items);
|
|
150
|
+
this.isSubmittingFootprints = true;
|
|
151
|
+
this.footprintsServiceProxy.submitFootprints(packet, function (err) {
|
|
152
|
+
_this.isSubmittingFootprints = false;
|
|
153
|
+
_this.logger.info('Sent footprints. Queue size:' + _this.footprintsQueue.getQueueSize() + ', err:' + err);
|
|
154
|
+
if (err) {
|
|
155
|
+
_this.environmentDataService.setLastError(err.stack);
|
|
156
|
+
_this.footprintsQueue.requeue(items); //Requeue items for later submission
|
|
157
|
+
}
|
|
158
|
+
else if (_this.footprintsQueue.getQueueSize() > 0) { //If there was an error, don't send now. Otherwise, if the queue still has items, send those now
|
|
159
|
+
_this.submitQueuedFootprints();
|
|
160
|
+
}
|
|
161
|
+
else
|
|
162
|
+
_this.fireQueueEmpty();
|
|
163
|
+
});
|
|
164
|
+
};
|
|
165
|
+
FootprintsProcess.prototype.fireQueueEmpty = function () {
|
|
166
|
+
var _this = this;
|
|
167
|
+
if (this.stopCallbacks.length > 0) {
|
|
168
|
+
this.stopCallbacks.forEach(function (cb) {
|
|
169
|
+
try {
|
|
170
|
+
cb();
|
|
171
|
+
}
|
|
172
|
+
catch (err) {
|
|
173
|
+
_this.environmentDataService.setLastError(err.stack);
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
FootprintsProcess.prototype.start = function () {
|
|
179
|
+
if (this.isRunning)
|
|
180
|
+
return; //Already started
|
|
181
|
+
if (this.cfg.enabled.value == false)
|
|
182
|
+
return; //Don't do anything if agent is completely disabled
|
|
183
|
+
this.isRunning = true;
|
|
184
|
+
this.sendToServerWatchdog.start();
|
|
185
|
+
if (this.footprintsQueue.getQueueSize() > 0) {
|
|
186
|
+
this.ensureKeepaliveThreadRunning();
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
FootprintsProcess.prototype.stop = function (callback) {
|
|
190
|
+
var _this = this;
|
|
191
|
+
try {
|
|
192
|
+
this.sendToServerWatchdog.stop();
|
|
193
|
+
if (this.cfg.enabled.value === false || this.cfg.sendFootprints.value === false) { //Footprints/Agent functionality is disabled. Return immediately
|
|
194
|
+
this.isRunning = false;
|
|
195
|
+
return callback();
|
|
196
|
+
}
|
|
197
|
+
this.logger.debug('Start submitting footprints, triggered by stop event.');
|
|
198
|
+
this.submitQueuedFootprints(); //If footprints are being submitted, this has no effect. Otherwise, it will start submitting footprints if the queue is non-empty
|
|
199
|
+
if (this.isSubmittingFootprints) {
|
|
200
|
+
/*
|
|
201
|
+
Nothing to do right now, since footprints are being submitted
|
|
202
|
+
When the submission is over (successfully or not), if the queue is empty the next batch of footprints will be sent.
|
|
203
|
+
If after submission the queue is cleared, this callback will be called
|
|
204
|
+
*/
|
|
205
|
+
this.stopCallbacks.push(function () {
|
|
206
|
+
_this.isRunning = false;
|
|
207
|
+
_this.keepaliveWatchdog.stop();
|
|
208
|
+
return callback();
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
/*
|
|
213
|
+
Queue must be empty, and nothing is sent. submitQueuedFootprints() would have started sending footprints if the queue was non-empty
|
|
214
|
+
*/
|
|
215
|
+
this.isRunning = false;
|
|
216
|
+
this.keepaliveWatchdog.stop();
|
|
217
|
+
return callback();
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
catch (err) {
|
|
221
|
+
//TODO: log
|
|
222
|
+
return callback();
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
FootprintsProcess.prototype.getQueueSize = function () {
|
|
226
|
+
return this.footprintsQueue.getQueueSize();
|
|
227
|
+
};
|
|
228
|
+
return FootprintsProcess;
|
|
229
|
+
}());
|
|
230
|
+
exports.FootprintsProcess = FootprintsProcess;
|
|
231
231
|
//# sourceMappingURL=index.js.map
|