aws-cdk 2.8.0 → 2.9.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.
- package/README.md +1 -1
- package/build-info.json +2 -2
- package/lib/api/cloudformation-deployments.js +11 -5
- package/lib/api/hotswap/lambda-functions.js +68 -2
- package/lib/api/logs/logs-monitor.js +5 -4
- package/npm-shrinkwrap.json +20 -20
- package/package.json +11 -11
- package/test/api/hotswap/lambda-functions-docker-hotswap-deployments.test.d.ts +1 -0
- package/test/api/hotswap/lambda-functions-docker-hotswap-deployments.test.js +64 -0
- package/test/api/hotswap/lambda-functions-inline-hotswap-deployments.test.d.ts +1 -0
- package/test/api/hotswap/lambda-functions-inline-hotswap-deployments.test.js +139 -0
- package/test/api/logs/logs-monitor.test.js +2 -2
- package/test/cdk-toolkit.test.js +42 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aws-cdk",
|
|
3
3
|
"description": "CDK Toolkit, the command line tool for CDK apps",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.9.0",
|
|
5
5
|
"bin": {
|
|
6
6
|
"cdk": "bin/cdk"
|
|
7
7
|
},
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
},
|
|
36
36
|
"license": "Apache-2.0",
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@aws-cdk/core": "2.
|
|
38
|
+
"@aws-cdk/core": "2.9.0",
|
|
39
39
|
"@octokit/rest": "^18.12.0",
|
|
40
40
|
"@types/archiver": "^5.3.1",
|
|
41
41
|
"@types/fs-extra": "^8.1.2",
|
|
@@ -52,29 +52,29 @@
|
|
|
52
52
|
"@types/wrap-ansi": "^3.0.0",
|
|
53
53
|
"@types/yargs": "^15.0.14",
|
|
54
54
|
"aws-sdk-mock": "^5.5.1",
|
|
55
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
55
|
+
"@aws-cdk/cdk-build-tools": "2.9.0",
|
|
56
56
|
"constructs": "^10.0.0",
|
|
57
57
|
"jest": "^27.4.7",
|
|
58
58
|
"make-runnable": "^1.3.10",
|
|
59
59
|
"mockery": "^2.1.0",
|
|
60
60
|
"nock": "^13.2.2",
|
|
61
|
-
"@aws-cdk/pkglint": "2.
|
|
61
|
+
"@aws-cdk/pkglint": "2.9.0",
|
|
62
62
|
"sinon": "^9.2.4",
|
|
63
|
-
"ts-jest": "^27.1.
|
|
63
|
+
"ts-jest": "^27.1.3",
|
|
64
64
|
"ts-mock-imports": "^1.3.8",
|
|
65
65
|
"xml-js": "^1.6.11"
|
|
66
66
|
},
|
|
67
67
|
"dependencies": {
|
|
68
|
-
"@aws-cdk/cloud-assembly-schema": "2.
|
|
69
|
-
"@aws-cdk/cloudformation-diff": "2.
|
|
70
|
-
"@aws-cdk/cx-api": "2.
|
|
71
|
-
"@aws-cdk/region-info": "2.
|
|
68
|
+
"@aws-cdk/cloud-assembly-schema": "2.9.0",
|
|
69
|
+
"@aws-cdk/cloudformation-diff": "2.9.0",
|
|
70
|
+
"@aws-cdk/cx-api": "2.9.0",
|
|
71
|
+
"@aws-cdk/region-info": "2.9.0",
|
|
72
72
|
"@jsii/check-node": "1.52.1",
|
|
73
73
|
"archiver": "^5.3.0",
|
|
74
74
|
"aws-sdk": "^2.979.0",
|
|
75
75
|
"camelcase": "^6.3.0",
|
|
76
|
-
"cdk-assets": "2.
|
|
77
|
-
"chokidar": "^3.5.
|
|
76
|
+
"cdk-assets": "2.9.0",
|
|
77
|
+
"chokidar": "^3.5.3",
|
|
78
78
|
"chalk": "^4",
|
|
79
79
|
"decamelize": "^5.0.1",
|
|
80
80
|
"fs-extra": "^9.1.0",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const setup = require("./hotswap-test-setup");
|
|
4
|
+
let mockUpdateLambdaCode;
|
|
5
|
+
let mockTagResource;
|
|
6
|
+
let mockUntagResource;
|
|
7
|
+
let hotswapMockSdkProvider;
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
hotswapMockSdkProvider = setup.setupHotswapTests();
|
|
10
|
+
mockUpdateLambdaCode = jest.fn();
|
|
11
|
+
mockTagResource = jest.fn();
|
|
12
|
+
mockUntagResource = jest.fn();
|
|
13
|
+
hotswapMockSdkProvider.stubLambda({
|
|
14
|
+
updateFunctionCode: mockUpdateLambdaCode,
|
|
15
|
+
tagResource: mockTagResource,
|
|
16
|
+
untagResource: mockUntagResource,
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
test('calls the updateLambdaCode() API when it receives only a code difference in a Lambda function', async () => {
|
|
20
|
+
// GIVEN
|
|
21
|
+
setup.setCurrentCfnStackTemplate({
|
|
22
|
+
Resources: {
|
|
23
|
+
Func: {
|
|
24
|
+
Type: 'AWS::Lambda::Function',
|
|
25
|
+
Properties: {
|
|
26
|
+
Code: {
|
|
27
|
+
ImageUri: 'current-image',
|
|
28
|
+
},
|
|
29
|
+
FunctionName: 'my-function',
|
|
30
|
+
},
|
|
31
|
+
Metadata: {
|
|
32
|
+
'aws:asset:path': 'old-path',
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
const cdkStackArtifact = setup.cdkStackArtifactOf({
|
|
38
|
+
template: {
|
|
39
|
+
Resources: {
|
|
40
|
+
Func: {
|
|
41
|
+
Type: 'AWS::Lambda::Function',
|
|
42
|
+
Properties: {
|
|
43
|
+
Code: {
|
|
44
|
+
ImageUri: 'new-image',
|
|
45
|
+
},
|
|
46
|
+
FunctionName: 'my-function',
|
|
47
|
+
},
|
|
48
|
+
Metadata: {
|
|
49
|
+
'aws:asset:path': 'new-path',
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
// WHEN
|
|
56
|
+
const deployStackResult = await hotswapMockSdkProvider.tryHotswapDeployment(cdkStackArtifact);
|
|
57
|
+
// THEN
|
|
58
|
+
expect(deployStackResult).not.toBeUndefined();
|
|
59
|
+
expect(mockUpdateLambdaCode).toHaveBeenCalledWith({
|
|
60
|
+
FunctionName: 'my-function',
|
|
61
|
+
ImageUri: 'new-image',
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWZ1bmN0aW9ucy1kb2NrZXItaG90c3dhcC1kZXBsb3ltZW50cy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibGFtYmRhLWZ1bmN0aW9ucy1kb2NrZXItaG90c3dhcC1kZXBsb3ltZW50cy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsOENBQThDO0FBRTlDLElBQUksb0JBQTRHLENBQUM7QUFDakgsSUFBSSxlQUFnRSxDQUFDO0FBQ3JFLElBQUksaUJBQW9FLENBQUM7QUFDekUsSUFBSSxzQkFBb0QsQ0FBQztBQUV6RCxVQUFVLENBQUMsR0FBRyxFQUFFO0lBQ2Qsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbkQsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ2pDLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDNUIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzlCLHNCQUFzQixDQUFDLFVBQVUsQ0FBQztRQUNoQyxrQkFBa0IsRUFBRSxvQkFBb0I7UUFDeEMsV0FBVyxFQUFFLGVBQWU7UUFDNUIsYUFBYSxFQUFFLGlCQUFpQjtLQUNqQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQywrRkFBK0YsRUFBRSxLQUFLLElBQUksRUFBRTtJQUMvRyxRQUFRO0lBQ1IsS0FBSyxDQUFDLDBCQUEwQixDQUFDO1FBQy9CLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFO3dCQUNKLFFBQVEsRUFBRSxlQUFlO3FCQUMxQjtvQkFDRCxZQUFZLEVBQUUsYUFBYTtpQkFDNUI7Z0JBQ0QsUUFBUSxFQUFFO29CQUNSLGdCQUFnQixFQUFFLFVBQVU7aUJBQzdCO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztJQUNILE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDO1FBQ2hELFFBQVEsRUFBRTtZQUNSLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUU7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsVUFBVSxFQUFFO3dCQUNWLElBQUksRUFBRTs0QkFDSixRQUFRLEVBQUUsV0FBVzt5QkFDdEI7d0JBQ0QsWUFBWSxFQUFFLGFBQWE7cUJBQzVCO29CQUNELFFBQVEsRUFBRTt3QkFDUixnQkFBZ0IsRUFBRSxVQUFVO3FCQUM3QjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFFSCxPQUFPO0lBQ1AsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLHNCQUFzQixDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUYsT0FBTztJQUNQLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM5QyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztRQUNoRCxZQUFZLEVBQUUsYUFBYTtRQUMzQixRQUFRLEVBQUUsV0FBVztLQUN0QixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExhbWJkYSB9IGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0ICogYXMgc2V0dXAgZnJvbSAnLi9ob3Rzd2FwLXRlc3Qtc2V0dXAnO1xuXG5sZXQgbW9ja1VwZGF0ZUxhbWJkYUNvZGU6IChwYXJhbXM6IExhbWJkYS5UeXBlcy5VcGRhdGVGdW5jdGlvbkNvZGVSZXF1ZXN0KSA9PiBMYW1iZGEuVHlwZXMuRnVuY3Rpb25Db25maWd1cmF0aW9uO1xubGV0IG1vY2tUYWdSZXNvdXJjZTogKHBhcmFtczogTGFtYmRhLlR5cGVzLlRhZ1Jlc291cmNlUmVxdWVzdCkgPT4ge307XG5sZXQgbW9ja1VudGFnUmVzb3VyY2U6IChwYXJhbXM6IExhbWJkYS5UeXBlcy5VbnRhZ1Jlc291cmNlUmVxdWVzdCkgPT4ge307XG5sZXQgaG90c3dhcE1vY2tTZGtQcm92aWRlcjogc2V0dXAuSG90c3dhcE1vY2tTZGtQcm92aWRlcjtcblxuYmVmb3JlRWFjaCgoKSA9PiB7XG4gIGhvdHN3YXBNb2NrU2RrUHJvdmlkZXIgPSBzZXR1cC5zZXR1cEhvdHN3YXBUZXN0cygpO1xuICBtb2NrVXBkYXRlTGFtYmRhQ29kZSA9IGplc3QuZm4oKTtcbiAgbW9ja1RhZ1Jlc291cmNlID0gamVzdC5mbigpO1xuICBtb2NrVW50YWdSZXNvdXJjZSA9IGplc3QuZm4oKTtcbiAgaG90c3dhcE1vY2tTZGtQcm92aWRlci5zdHViTGFtYmRhKHtcbiAgICB1cGRhdGVGdW5jdGlvbkNvZGU6IG1vY2tVcGRhdGVMYW1iZGFDb2RlLFxuICAgIHRhZ1Jlc291cmNlOiBtb2NrVGFnUmVzb3VyY2UsXG4gICAgdW50YWdSZXNvdXJjZTogbW9ja1VudGFnUmVzb3VyY2UsXG4gIH0pO1xufSk7XG5cbnRlc3QoJ2NhbGxzIHRoZSB1cGRhdGVMYW1iZGFDb2RlKCkgQVBJIHdoZW4gaXQgcmVjZWl2ZXMgb25seSBhIGNvZGUgZGlmZmVyZW5jZSBpbiBhIExhbWJkYSBmdW5jdGlvbicsIGFzeW5jICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgc2V0dXAuc2V0Q3VycmVudENmblN0YWNrVGVtcGxhdGUoe1xuICAgIFJlc291cmNlczoge1xuICAgICAgRnVuYzoge1xuICAgICAgICBUeXBlOiAnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJyxcbiAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgIENvZGU6IHtcbiAgICAgICAgICAgIEltYWdlVXJpOiAnY3VycmVudC1pbWFnZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBGdW5jdGlvbk5hbWU6ICdteS1mdW5jdGlvbicsXG4gICAgICAgIH0sXG4gICAgICAgIE1ldGFkYXRhOiB7XG4gICAgICAgICAgJ2F3czphc3NldDpwYXRoJzogJ29sZC1wYXRoJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IGNka1N0YWNrQXJ0aWZhY3QgPSBzZXR1cC5jZGtTdGFja0FydGlmYWN0T2Yoe1xuICAgIHRlbXBsYXRlOiB7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgRnVuYzoge1xuICAgICAgICAgIFR5cGU6ICdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLFxuICAgICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIENvZGU6IHtcbiAgICAgICAgICAgICAgSW1hZ2VVcmk6ICduZXctaW1hZ2UnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIEZ1bmN0aW9uTmFtZTogJ215LWZ1bmN0aW9uJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIE1ldGFkYXRhOiB7XG4gICAgICAgICAgICAnYXdzOmFzc2V0OnBhdGgnOiAnbmV3LXBhdGgnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIC8vIFdIRU5cbiAgY29uc3QgZGVwbG95U3RhY2tSZXN1bHQgPSBhd2FpdCBob3Rzd2FwTW9ja1Nka1Byb3ZpZGVyLnRyeUhvdHN3YXBEZXBsb3ltZW50KGNka1N0YWNrQXJ0aWZhY3QpO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KGRlcGxveVN0YWNrUmVzdWx0KS5ub3QudG9CZVVuZGVmaW5lZCgpO1xuICBleHBlY3QobW9ja1VwZGF0ZUxhbWJkYUNvZGUpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICBGdW5jdGlvbk5hbWU6ICdteS1mdW5jdGlvbicsXG4gICAgSW1hZ2VVcmk6ICduZXctaW1hZ2UnLFxuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const setup = require("./hotswap-test-setup");
|
|
4
|
+
let mockUpdateLambdaCode;
|
|
5
|
+
let mockTagResource;
|
|
6
|
+
let mockUntagResource;
|
|
7
|
+
let hotswapMockSdkProvider;
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
hotswapMockSdkProvider = setup.setupHotswapTests();
|
|
10
|
+
mockUpdateLambdaCode = jest.fn();
|
|
11
|
+
mockTagResource = jest.fn();
|
|
12
|
+
mockUntagResource = jest.fn();
|
|
13
|
+
hotswapMockSdkProvider.stubLambda({
|
|
14
|
+
updateFunctionCode: mockUpdateLambdaCode,
|
|
15
|
+
tagResource: mockTagResource,
|
|
16
|
+
untagResource: mockUntagResource,
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
test('calls the updateLambdaCode() API when it receives only a code difference in a Lambda function (Inline Node.js code)', async () => {
|
|
20
|
+
// GIVEN
|
|
21
|
+
setup.setCurrentCfnStackTemplate({
|
|
22
|
+
Resources: {
|
|
23
|
+
Func: {
|
|
24
|
+
Type: 'AWS::Lambda::Function',
|
|
25
|
+
Properties: {
|
|
26
|
+
Code: {
|
|
27
|
+
ZipFile: 'exports.handler = () => {return true}',
|
|
28
|
+
},
|
|
29
|
+
Runtime: 'nodejs14.x',
|
|
30
|
+
FunctionName: 'my-function',
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
const newCode = 'exports.handler = () => {return false}';
|
|
36
|
+
const cdkStackArtifact = setup.cdkStackArtifactOf({
|
|
37
|
+
template: {
|
|
38
|
+
Resources: {
|
|
39
|
+
Func: {
|
|
40
|
+
Type: 'AWS::Lambda::Function',
|
|
41
|
+
Properties: {
|
|
42
|
+
Code: {
|
|
43
|
+
ZipFile: newCode,
|
|
44
|
+
},
|
|
45
|
+
Runtime: 'nodejs14.x',
|
|
46
|
+
FunctionName: 'my-function',
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
// WHEN
|
|
53
|
+
const deployStackResult = await hotswapMockSdkProvider.tryHotswapDeployment(cdkStackArtifact);
|
|
54
|
+
// THEN
|
|
55
|
+
expect(deployStackResult).not.toBeUndefined();
|
|
56
|
+
expect(mockUpdateLambdaCode).toHaveBeenCalledWith({
|
|
57
|
+
FunctionName: 'my-function',
|
|
58
|
+
ZipFile: expect.any(Buffer),
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
test('calls the updateLambdaCode() API when it receives only a code difference in a Lambda function (Inline Python code)', async () => {
|
|
62
|
+
// GIVEN
|
|
63
|
+
setup.setCurrentCfnStackTemplate({
|
|
64
|
+
Resources: {
|
|
65
|
+
Func: {
|
|
66
|
+
Type: 'AWS::Lambda::Function',
|
|
67
|
+
Properties: {
|
|
68
|
+
Code: {
|
|
69
|
+
ZipFile: 'def handler(event, context):\n return True',
|
|
70
|
+
},
|
|
71
|
+
Runtime: 'python3.9',
|
|
72
|
+
FunctionName: 'my-function',
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
const cdkStackArtifact = setup.cdkStackArtifactOf({
|
|
78
|
+
template: {
|
|
79
|
+
Resources: {
|
|
80
|
+
Func: {
|
|
81
|
+
Type: 'AWS::Lambda::Function',
|
|
82
|
+
Properties: {
|
|
83
|
+
Code: {
|
|
84
|
+
ZipFile: 'def handler(event, context):\n return False',
|
|
85
|
+
},
|
|
86
|
+
Runtime: 'python3.9',
|
|
87
|
+
FunctionName: 'my-function',
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
// WHEN
|
|
94
|
+
const deployStackResult = await hotswapMockSdkProvider.tryHotswapDeployment(cdkStackArtifact);
|
|
95
|
+
// THEN
|
|
96
|
+
expect(deployStackResult).not.toBeUndefined();
|
|
97
|
+
expect(mockUpdateLambdaCode).toHaveBeenCalledWith({
|
|
98
|
+
FunctionName: 'my-function',
|
|
99
|
+
ZipFile: expect.any(Buffer),
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
test('throw a CfnEvaluationException when it receives an unsupported function runtime', async () => {
|
|
103
|
+
// GIVEN
|
|
104
|
+
setup.setCurrentCfnStackTemplate({
|
|
105
|
+
Resources: {
|
|
106
|
+
Func: {
|
|
107
|
+
Type: 'AWS::Lambda::Function',
|
|
108
|
+
Properties: {
|
|
109
|
+
Code: {
|
|
110
|
+
ZipFile: 'def handler(event:, context:) true end',
|
|
111
|
+
},
|
|
112
|
+
Runtime: 'ruby2.7',
|
|
113
|
+
FunctionName: 'my-function',
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
});
|
|
118
|
+
const cdkStackArtifact = setup.cdkStackArtifactOf({
|
|
119
|
+
template: {
|
|
120
|
+
Resources: {
|
|
121
|
+
Func: {
|
|
122
|
+
Type: 'AWS::Lambda::Function',
|
|
123
|
+
Properties: {
|
|
124
|
+
Code: {
|
|
125
|
+
ZipFile: 'def handler(event:, context:) false end',
|
|
126
|
+
},
|
|
127
|
+
Runtime: 'ruby2.7',
|
|
128
|
+
FunctionName: 'my-function',
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
});
|
|
134
|
+
// WHEN
|
|
135
|
+
const tryHotswap = hotswapMockSdkProvider.tryHotswapDeployment(cdkStackArtifact);
|
|
136
|
+
// THEN
|
|
137
|
+
await expect(tryHotswap).rejects.toThrow('runtime ruby2.7 is unsupported, only node.js and python runtimes are currently supported.');
|
|
138
|
+
});
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWZ1bmN0aW9ucy1pbmxpbmUtaG90c3dhcC1kZXBsb3ltZW50cy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibGFtYmRhLWZ1bmN0aW9ucy1pbmxpbmUtaG90c3dhcC1kZXBsb3ltZW50cy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsOENBQThDO0FBRTlDLElBQUksb0JBQTRHLENBQUM7QUFDakgsSUFBSSxlQUFnRSxDQUFDO0FBQ3JFLElBQUksaUJBQW9FLENBQUM7QUFDekUsSUFBSSxzQkFBb0QsQ0FBQztBQUV6RCxVQUFVLENBQUMsR0FBRyxFQUFFO0lBQ2Qsc0JBQXNCLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbkQsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ2pDLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDNUIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzlCLHNCQUFzQixDQUFDLFVBQVUsQ0FBQztRQUNoQyxrQkFBa0IsRUFBRSxvQkFBb0I7UUFDeEMsV0FBVyxFQUFFLGVBQWU7UUFDNUIsYUFBYSxFQUFFLGlCQUFpQjtLQUNqQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxxSEFBcUgsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNySSxRQUFRO0lBQ1IsS0FBSyxDQUFDLDBCQUEwQixDQUFDO1FBQy9CLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSx1Q0FBdUM7cUJBQ2pEO29CQUNELE9BQU8sRUFBRSxZQUFZO29CQUNyQixZQUFZLEVBQUUsYUFBYTtpQkFDNUI7YUFDRjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxPQUFPLEdBQUcsd0NBQXdDLENBQUM7SUFDekQsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUM7UUFDaEQsUUFBUSxFQUFFO1lBQ1IsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRTtvQkFDSixJQUFJLEVBQUUsdUJBQXVCO29CQUM3QixVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFOzRCQUNKLE9BQU8sRUFBRSxPQUFPO3lCQUNqQjt3QkFDRCxPQUFPLEVBQUUsWUFBWTt3QkFDckIsWUFBWSxFQUFFLGFBQWE7cUJBQzVCO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztJQUVILE9BQU87SUFDUCxNQUFNLGlCQUFpQixHQUFHLE1BQU0sc0JBQXNCLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5RixPQUFPO0lBQ1AsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzlDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO1FBQ2hELFlBQVksRUFBRSxhQUFhO1FBQzNCLE9BQU8sRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztLQUM1QixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxvSEFBb0gsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNwSSxRQUFRO0lBQ1IsS0FBSyxDQUFDLDBCQUEwQixDQUFDO1FBQy9CLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUU7b0JBQ1YsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSw2Q0FBNkM7cUJBQ3ZEO29CQUNELE9BQU8sRUFBRSxXQUFXO29CQUNwQixZQUFZLEVBQUUsYUFBYTtpQkFDNUI7YUFDRjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUM7UUFDaEQsUUFBUSxFQUFFO1lBQ1IsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRTtvQkFDSixJQUFJLEVBQUUsdUJBQXVCO29CQUM3QixVQUFVLEVBQUU7d0JBQ1YsSUFBSSxFQUFFOzRCQUNKLE9BQU8sRUFBRSw4Q0FBOEM7eUJBQ3hEO3dCQUNELE9BQU8sRUFBRSxXQUFXO3dCQUNwQixZQUFZLEVBQUUsYUFBYTtxQkFDNUI7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsT0FBTztJQUNQLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxzQkFBc0IsQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRTlGLE9BQU87SUFDUCxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDOUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsb0JBQW9CLENBQUM7UUFDaEQsWUFBWSxFQUFFLGFBQWE7UUFDM0IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDO0tBQzVCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGlGQUFpRixFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ2pHLFFBQVE7SUFDUixLQUFLLENBQUMsMEJBQTBCLENBQUM7UUFDL0IsU0FBUyxFQUFFO1lBQ1QsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSx1QkFBdUI7Z0JBQzdCLFVBQVUsRUFBRTtvQkFDVixJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLHdDQUF3QztxQkFDbEQ7b0JBQ0QsT0FBTyxFQUFFLFNBQVM7b0JBQ2xCLFlBQVksRUFBRSxhQUFhO2lCQUM1QjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFDSCxNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztRQUNoRCxRQUFRLEVBQUU7WUFDUixTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSx1QkFBdUI7b0JBQzdCLFVBQVUsRUFBRTt3QkFDVixJQUFJLEVBQUU7NEJBQ0osT0FBTyxFQUFFLHlDQUF5Qzt5QkFDbkQ7d0JBQ0QsT0FBTyxFQUFFLFNBQVM7d0JBQ2xCLFlBQVksRUFBRSxhQUFhO3FCQUM1QjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFFSCxPQUFPO0lBQ1AsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUVqRixPQUFPO0lBQ1AsTUFBTSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQywyRkFBMkYsQ0FBQyxDQUFDO0FBQ3hJLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGFtYmRhIH0gZnJvbSAnYXdzLXNkayc7XG5pbXBvcnQgKiBhcyBzZXR1cCBmcm9tICcuL2hvdHN3YXAtdGVzdC1zZXR1cCc7XG5cbmxldCBtb2NrVXBkYXRlTGFtYmRhQ29kZTogKHBhcmFtczogTGFtYmRhLlR5cGVzLlVwZGF0ZUZ1bmN0aW9uQ29kZVJlcXVlc3QpID0+IExhbWJkYS5UeXBlcy5GdW5jdGlvbkNvbmZpZ3VyYXRpb247XG5sZXQgbW9ja1RhZ1Jlc291cmNlOiAocGFyYW1zOiBMYW1iZGEuVHlwZXMuVGFnUmVzb3VyY2VSZXF1ZXN0KSA9PiB7fTtcbmxldCBtb2NrVW50YWdSZXNvdXJjZTogKHBhcmFtczogTGFtYmRhLlR5cGVzLlVudGFnUmVzb3VyY2VSZXF1ZXN0KSA9PiB7fTtcbmxldCBob3Rzd2FwTW9ja1Nka1Byb3ZpZGVyOiBzZXR1cC5Ib3Rzd2FwTW9ja1Nka1Byb3ZpZGVyO1xuXG5iZWZvcmVFYWNoKCgpID0+IHtcbiAgaG90c3dhcE1vY2tTZGtQcm92aWRlciA9IHNldHVwLnNldHVwSG90c3dhcFRlc3RzKCk7XG4gIG1vY2tVcGRhdGVMYW1iZGFDb2RlID0gamVzdC5mbigpO1xuICBtb2NrVGFnUmVzb3VyY2UgPSBqZXN0LmZuKCk7XG4gIG1vY2tVbnRhZ1Jlc291cmNlID0gamVzdC5mbigpO1xuICBob3Rzd2FwTW9ja1Nka1Byb3ZpZGVyLnN0dWJMYW1iZGEoe1xuICAgIHVwZGF0ZUZ1bmN0aW9uQ29kZTogbW9ja1VwZGF0ZUxhbWJkYUNvZGUsXG4gICAgdGFnUmVzb3VyY2U6IG1vY2tUYWdSZXNvdXJjZSxcbiAgICB1bnRhZ1Jlc291cmNlOiBtb2NrVW50YWdSZXNvdXJjZSxcbiAgfSk7XG59KTtcblxudGVzdCgnY2FsbHMgdGhlIHVwZGF0ZUxhbWJkYUNvZGUoKSBBUEkgd2hlbiBpdCByZWNlaXZlcyBvbmx5IGEgY29kZSBkaWZmZXJlbmNlIGluIGEgTGFtYmRhIGZ1bmN0aW9uIChJbmxpbmUgTm9kZS5qcyBjb2RlKScsIGFzeW5jICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgc2V0dXAuc2V0Q3VycmVudENmblN0YWNrVGVtcGxhdGUoe1xuICAgIFJlc291cmNlczoge1xuICAgICAgRnVuYzoge1xuICAgICAgICBUeXBlOiAnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJyxcbiAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgIENvZGU6IHtcbiAgICAgICAgICAgIFppcEZpbGU6ICdleHBvcnRzLmhhbmRsZXIgPSAoKSA9PiB7cmV0dXJuIHRydWV9JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIFJ1bnRpbWU6ICdub2RlanMxNC54JyxcbiAgICAgICAgICBGdW5jdGlvbk5hbWU6ICdteS1mdW5jdGlvbicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBuZXdDb2RlID0gJ2V4cG9ydHMuaGFuZGxlciA9ICgpID0+IHtyZXR1cm4gZmFsc2V9JztcbiAgY29uc3QgY2RrU3RhY2tBcnRpZmFjdCA9IHNldHVwLmNka1N0YWNrQXJ0aWZhY3RPZih7XG4gICAgdGVtcGxhdGU6IHtcbiAgICAgIFJlc291cmNlczoge1xuICAgICAgICBGdW5jOiB7XG4gICAgICAgICAgVHlwZTogJ0FXUzo6TGFtYmRhOjpGdW5jdGlvbicsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgQ29kZToge1xuICAgICAgICAgICAgICBaaXBGaWxlOiBuZXdDb2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFJ1bnRpbWU6ICdub2RlanMxNC54JyxcbiAgICAgICAgICAgIEZ1bmN0aW9uTmFtZTogJ215LWZ1bmN0aW9uJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcblxuICAvLyBXSEVOXG4gIGNvbnN0IGRlcGxveVN0YWNrUmVzdWx0ID0gYXdhaXQgaG90c3dhcE1vY2tTZGtQcm92aWRlci50cnlIb3Rzd2FwRGVwbG95bWVudChjZGtTdGFja0FydGlmYWN0KTtcblxuICAvLyBUSEVOXG4gIGV4cGVjdChkZXBsb3lTdGFja1Jlc3VsdCkubm90LnRvQmVVbmRlZmluZWQoKTtcbiAgZXhwZWN0KG1vY2tVcGRhdGVMYW1iZGFDb2RlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7XG4gICAgRnVuY3Rpb25OYW1lOiAnbXktZnVuY3Rpb24nLFxuICAgIFppcEZpbGU6IGV4cGVjdC5hbnkoQnVmZmVyKSxcbiAgfSk7XG59KTtcblxudGVzdCgnY2FsbHMgdGhlIHVwZGF0ZUxhbWJkYUNvZGUoKSBBUEkgd2hlbiBpdCByZWNlaXZlcyBvbmx5IGEgY29kZSBkaWZmZXJlbmNlIGluIGEgTGFtYmRhIGZ1bmN0aW9uIChJbmxpbmUgUHl0aG9uIGNvZGUpJywgYXN5bmMgKCkgPT4ge1xuICAvLyBHSVZFTlxuICBzZXR1cC5zZXRDdXJyZW50Q2ZuU3RhY2tUZW1wbGF0ZSh7XG4gICAgUmVzb3VyY2VzOiB7XG4gICAgICBGdW5jOiB7XG4gICAgICAgIFR5cGU6ICdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLFxuICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgQ29kZToge1xuICAgICAgICAgICAgWmlwRmlsZTogJ2RlZiBoYW5kbGVyKGV2ZW50LCBjb250ZXh0KTpcXG4gIHJldHVybiBUcnVlJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIFJ1bnRpbWU6ICdweXRob24zLjknLFxuICAgICAgICAgIEZ1bmN0aW9uTmFtZTogJ215LWZ1bmN0aW9uJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IGNka1N0YWNrQXJ0aWZhY3QgPSBzZXR1cC5jZGtTdGFja0FydGlmYWN0T2Yoe1xuICAgIHRlbXBsYXRlOiB7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgRnVuYzoge1xuICAgICAgICAgIFR5cGU6ICdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLFxuICAgICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIENvZGU6IHtcbiAgICAgICAgICAgICAgWmlwRmlsZTogJ2RlZiBoYW5kbGVyKGV2ZW50LCBjb250ZXh0KTpcXG4gIHJldHVybiBGYWxzZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgUnVudGltZTogJ3B5dGhvbjMuOScsXG4gICAgICAgICAgICBGdW5jdGlvbk5hbWU6ICdteS1mdW5jdGlvbicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG5cbiAgLy8gV0hFTlxuICBjb25zdCBkZXBsb3lTdGFja1Jlc3VsdCA9IGF3YWl0IGhvdHN3YXBNb2NrU2RrUHJvdmlkZXIudHJ5SG90c3dhcERlcGxveW1lbnQoY2RrU3RhY2tBcnRpZmFjdCk7XG5cbiAgLy8gVEhFTlxuICBleHBlY3QoZGVwbG95U3RhY2tSZXN1bHQpLm5vdC50b0JlVW5kZWZpbmVkKCk7XG4gIGV4cGVjdChtb2NrVXBkYXRlTGFtYmRhQ29kZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgIEZ1bmN0aW9uTmFtZTogJ215LWZ1bmN0aW9uJyxcbiAgICBaaXBGaWxlOiBleHBlY3QuYW55KEJ1ZmZlciksXG4gIH0pO1xufSk7XG5cbnRlc3QoJ3Rocm93IGEgQ2ZuRXZhbHVhdGlvbkV4Y2VwdGlvbiB3aGVuIGl0IHJlY2VpdmVzIGFuIHVuc3VwcG9ydGVkIGZ1bmN0aW9uIHJ1bnRpbWUnLCBhc3luYyAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIHNldHVwLnNldEN1cnJlbnRDZm5TdGFja1RlbXBsYXRlKHtcbiAgICBSZXNvdXJjZXM6IHtcbiAgICAgIEZ1bmM6IHtcbiAgICAgICAgVHlwZTogJ0FXUzo6TGFtYmRhOjpGdW5jdGlvbicsXG4gICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICBDb2RlOiB7XG4gICAgICAgICAgICBaaXBGaWxlOiAnZGVmIGhhbmRsZXIoZXZlbnQ6LCBjb250ZXh0OikgdHJ1ZSBlbmQnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgUnVudGltZTogJ3J1YnkyLjcnLFxuICAgICAgICAgIEZ1bmN0aW9uTmFtZTogJ215LWZ1bmN0aW9uJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IGNka1N0YWNrQXJ0aWZhY3QgPSBzZXR1cC5jZGtTdGFja0FydGlmYWN0T2Yoe1xuICAgIHRlbXBsYXRlOiB7XG4gICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgRnVuYzoge1xuICAgICAgICAgIFR5cGU6ICdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLFxuICAgICAgICAgIFByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIENvZGU6IHtcbiAgICAgICAgICAgICAgWmlwRmlsZTogJ2RlZiBoYW5kbGVyKGV2ZW50OiwgY29udGV4dDopIGZhbHNlIGVuZCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgUnVudGltZTogJ3J1YnkyLjcnLFxuICAgICAgICAgICAgRnVuY3Rpb25OYW1lOiAnbXktZnVuY3Rpb24nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIC8vIFdIRU5cbiAgY29uc3QgdHJ5SG90c3dhcCA9IGhvdHN3YXBNb2NrU2RrUHJvdmlkZXIudHJ5SG90c3dhcERlcGxveW1lbnQoY2RrU3RhY2tBcnRpZmFjdCk7XG5cbiAgLy8gVEhFTlxuICBhd2FpdCBleHBlY3QodHJ5SG90c3dhcCkucmVqZWN0cy50b1Rocm93KCdydW50aW1lIHJ1YnkyLjcgaXMgdW5zdXBwb3J0ZWQsIG9ubHkgbm9kZS5qcyBhbmQgcHl0aG9uIHJ1bnRpbWVzIGFyZSBjdXJyZW50bHkgc3VwcG9ydGVkLicpO1xufSk7XG4iXX0=
|
|
@@ -44,7 +44,7 @@ test('continue to the next page if it exists', async () => {
|
|
|
44
44
|
// THEN
|
|
45
45
|
expect(stderrMock).toHaveBeenCalledTimes(2);
|
|
46
46
|
expect(stderrMock.mock.calls[0][0]).toContain(`[${chalk_1.blue('loggroup')}] ${chalk_1.yellow(HUMAN_TIME)} message`);
|
|
47
|
-
expect(stderrMock.mock.calls[1][0]).toContain(`[${chalk_1.blue('loggroup')}] ${chalk_1.yellow(new Date(T100).toLocaleTimeString())}
|
|
47
|
+
expect(stderrMock.mock.calls[1][0]).toContain(`[${chalk_1.blue('loggroup')}] ${chalk_1.yellow(new Date(T100).toLocaleTimeString())} >>> \`watch\` shows only the first 100 log messages - the rest have been truncated...`);
|
|
48
48
|
});
|
|
49
49
|
const T0 = 1597837230504;
|
|
50
50
|
const T100 = T0 + 100 * 1000;
|
|
@@ -56,4 +56,4 @@ function event(nr, message) {
|
|
|
56
56
|
ingestionTime: new Date(T0 * nr * 1000).getTime(),
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9ncy1tb25pdG9yLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJsb2dzLW1vbml0b3IudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFxQztBQUNyQyxxRUFBK0U7QUFDL0UsaURBQWdEO0FBQ2hELGtEQUE4QztBQUU5QyxJQUFJLEdBQVksQ0FBQztBQUNqQixJQUFJLFVBQTRCLENBQUM7QUFDakMsSUFBSSxPQUFrQyxDQUFDO0FBQ3ZDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7SUFDZCxPQUFPLEdBQUcsSUFBSSx3Q0FBeUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hELFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLEdBQUcsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RixHQUFHLEdBQUcsSUFBSSxrQkFBTyxFQUFFLENBQUM7QUFDdEIsQ0FBQyxDQUFDLENBQUM7QUFFSCxRQUFRLENBQUMsR0FBRyxFQUFFO0lBQ1osVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVILElBQUksU0FBaUIsQ0FBQztBQUN0QixJQUFJLFVBQWtCLENBQUM7QUFFdkIsU0FBUyxDQUFDLEdBQUcsRUFBRTtJQUNiLFNBQVMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pDLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0FBQ3hELENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLHdDQUF3QyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQ3hELFFBQVE7SUFDUixHQUFHLENBQUMsa0JBQWtCLENBQUM7UUFDckIsZUFBZTtZQUNiLE9BQU87Z0JBQ0wsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztnQkFDL0IsU0FBUyxFQUFFLFlBQVk7YUFDeEIsQ0FBQztRQUNKLENBQUM7S0FDRixDQUFDLENBQUM7SUFDSCxPQUFPLENBQUMsWUFBWSxDQUNsQjtRQUNFLElBQUksRUFBRSxNQUFNO1FBQ1osT0FBTyxFQUFFLGFBQWE7UUFDdEIsTUFBTSxFQUFFLFdBQVc7S0FDcEIsRUFDRCxHQUFHLEVBQ0gsQ0FBQyxVQUFVLENBQUMsQ0FDYixDQUFDO0lBQ0YsT0FBTztJQUNQLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQiw0Q0FBNEM7SUFDNUMsTUFBTSxXQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFbEIsT0FBTztJQUNQLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQzNDLElBQUksWUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLGNBQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUN0RCxDQUFDO0lBQ0YsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUMzQyxJQUFJLFlBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxjQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyx3RkFBd0YsQ0FDN0osQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxFQUFFLEdBQUcsYUFBYSxDQUFDO0FBQ3pCLE1BQU0sSUFBSSxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO0FBQzdCLFNBQVMsS0FBSyxDQUFDLEVBQVUsRUFBRSxPQUFlO0lBQ3hDLE9BQU87UUFDTCxPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDaEIsT0FBTztRQUNQLFNBQVMsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtRQUM3QyxhQUFhLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7S0FDbEQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBibHVlLCB5ZWxsb3cgfSBmcm9tICdjaGFsayc7XG5pbXBvcnQgeyBDbG91ZFdhdGNoTG9nRXZlbnRNb25pdG9yIH0gZnJvbSAnLi4vLi4vLi4vbGliL2FwaS9sb2dzL2xvZ3MtbW9uaXRvcic7XG5pbXBvcnQgeyBzbGVlcCB9IGZyb20gJy4uLy4uL2ludGVnL2hlbHBlcnMvYXdzJztcbmltcG9ydCB7IE1vY2tTZGsgfSBmcm9tICcuLi8uLi91dGlsL21vY2stc2RrJztcblxubGV0IHNkazogTW9ja1NkaztcbmxldCBzdGRlcnJNb2NrOiBqZXN0LlNweUluc3RhbmNlO1xubGV0IG1vbml0b3I6IENsb3VkV2F0Y2hMb2dFdmVudE1vbml0b3I7XG5iZWZvcmVFYWNoKCgpID0+IHtcbiAgbW9uaXRvciA9IG5ldyBDbG91ZFdhdGNoTG9nRXZlbnRNb25pdG9yKG5ldyBEYXRlKFQxMDApKTtcbiAgc3RkZXJyTW9jayA9IGplc3Quc3B5T24ocHJvY2Vzcy5zdGRlcnIsICd3cml0ZScpLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiB7IHJldHVybiB0cnVlOyB9KTtcbiAgc2RrID0gbmV3IE1vY2tTZGsoKTtcbn0pO1xuXG5hZnRlckFsbCgoKSA9PiB7XG4gIHN0ZGVyck1vY2subW9ja1Jlc3RvcmUoKTtcbiAgbW9uaXRvci5kZWFjdGl2YXRlKCk7XG59KTtcblxubGV0IFRJTUVTVEFNUDogbnVtYmVyO1xubGV0IEhVTUFOX1RJTUU6IHN0cmluZztcblxuYmVmb3JlQWxsKCgpID0+IHtcbiAgVElNRVNUQU1QID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG4gIEhVTUFOX1RJTUUgPSBuZXcgRGF0ZShUSU1FU1RBTVApLnRvTG9jYWxlVGltZVN0cmluZygpO1xufSk7XG5cbnRlc3QoJ2NvbnRpbnVlIHRvIHRoZSBuZXh0IHBhZ2UgaWYgaXQgZXhpc3RzJywgYXN5bmMgKCkgPT4ge1xuICAvLyBHSVZFTlxuICBzZGsuc3R1YkNsb3VkV2F0Y2hMb2dzKHtcbiAgICBmaWx0ZXJMb2dFdmVudHMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBldmVudHM6IFtldmVudCgxMDIsICdtZXNzYWdlJyldLFxuICAgICAgICBuZXh0VG9rZW46ICdzb21lLXRva2VuJyxcbiAgICAgIH07XG4gICAgfSxcbiAgfSk7XG4gIG1vbml0b3IuYWRkTG9nR3JvdXBzKFxuICAgIHtcbiAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgIGFjY291bnQ6ICcxMTExMTExMTExMScsXG4gICAgICByZWdpb246ICd1cy1lYXN0LTEnLFxuICAgIH0sXG4gICAgc2RrLFxuICAgIFsnbG9nZ3JvdXAnXSxcbiAgKTtcbiAgLy8gV0hFTlxuICBtb25pdG9yLmFjdGl2YXRlKCk7XG4gIC8vIG5lZWQgdGltZSBmb3IgdGhlIGxvZyBwcm9jZXNzaW5nIHRvIG9jY3VyXG4gIGF3YWl0IHNsZWVwKDEwMDApO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KHN0ZGVyck1vY2spLnRvSGF2ZUJlZW5DYWxsZWRUaW1lcygyKTtcbiAgZXhwZWN0KHN0ZGVyck1vY2subW9jay5jYWxsc1swXVswXSkudG9Db250YWluKFxuICAgIGBbJHtibHVlKCdsb2dncm91cCcpfV0gJHt5ZWxsb3coSFVNQU5fVElNRSl9IG1lc3NhZ2VgLFxuICApO1xuICBleHBlY3Qoc3RkZXJyTW9jay5tb2NrLmNhbGxzWzFdWzBdKS50b0NvbnRhaW4oXG4gICAgYFske2JsdWUoJ2xvZ2dyb3VwJyl9XSAke3llbGxvdyhuZXcgRGF0ZShUMTAwKS50b0xvY2FsZVRpbWVTdHJpbmcoKSl9ID4+PiBcXGB3YXRjaFxcYCBzaG93cyBvbmx5IHRoZSBmaXJzdCAxMDAgbG9nIG1lc3NhZ2VzIC0gdGhlIHJlc3QgaGF2ZSBiZWVuIHRydW5jYXRlZC4uLmAsXG4gICk7XG59KTtcblxuY29uc3QgVDAgPSAxNTk3ODM3MjMwNTA0O1xuY29uc3QgVDEwMCA9IFQwICsgMTAwICogMTAwMDtcbmZ1bmN0aW9uIGV2ZW50KG5yOiBudW1iZXIsIG1lc3NhZ2U6IHN0cmluZyk6IEFXUy5DbG91ZFdhdGNoTG9ncy5GaWx0ZXJlZExvZ0V2ZW50IHtcbiAgcmV0dXJuIHtcbiAgICBldmVudElkOiBgJHtucn1gLFxuICAgIG1lc3NhZ2UsXG4gICAgdGltZXN0YW1wOiBuZXcgRGF0ZShUMCAqIG5yICogMTAwMCkuZ2V0VGltZSgpLFxuICAgIGluZ2VzdGlvblRpbWU6IG5ldyBEYXRlKFQwICogbnIgKiAxMDAwKS5nZXRUaW1lKCksXG4gIH07XG59XG4iXX0=
|