@aws-cdk/aws-lambda-go-alpha 2.25.0-alpha.0 → 2.28.0-alpha.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/.jsii +19 -6
- package/.jsii.tabl.json +25 -17
- package/README.md +1 -1
- package/lib/bundling.js +12 -12
- package/lib/function.js +6 -7
- package/lib/util.js +2 -3
- package/package.json +8 -8
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.28.0",
|
|
12
12
|
"constructs": "^10.0.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -1107,6 +1107,19 @@
|
|
|
1107
1107
|
}
|
|
1108
1108
|
}
|
|
1109
1109
|
},
|
|
1110
|
+
"aws-cdk-lib.aws_emrserverless": {
|
|
1111
|
+
"targets": {
|
|
1112
|
+
"dotnet": {
|
|
1113
|
+
"namespace": "Amazon.CDK.AWS.EMRServerless"
|
|
1114
|
+
},
|
|
1115
|
+
"java": {
|
|
1116
|
+
"package": "software.amazon.awscdk.services.emrserverless"
|
|
1117
|
+
},
|
|
1118
|
+
"python": {
|
|
1119
|
+
"module": "aws_cdk.aws_emrserverless"
|
|
1120
|
+
}
|
|
1121
|
+
}
|
|
1122
|
+
},
|
|
1110
1123
|
"aws-cdk-lib.aws_events": {
|
|
1111
1124
|
"targets": {
|
|
1112
1125
|
"dotnet": {
|
|
@@ -2943,7 +2956,7 @@
|
|
|
2943
2956
|
},
|
|
2944
2957
|
"targets": {
|
|
2945
2958
|
"dotnet": {
|
|
2946
|
-
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/
|
|
2959
|
+
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
|
|
2947
2960
|
"namespace": "Amazon.CDK",
|
|
2948
2961
|
"packageId": "Amazon.CDK.Lib"
|
|
2949
2962
|
},
|
|
@@ -2998,7 +3011,7 @@
|
|
|
2998
3011
|
"stability": "experimental"
|
|
2999
3012
|
},
|
|
3000
3013
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
3001
|
-
"jsiiVersion": "1.
|
|
3014
|
+
"jsiiVersion": "1.60.1 (build 2799dc8)",
|
|
3002
3015
|
"keywords": [
|
|
3003
3016
|
"aws",
|
|
3004
3017
|
"cdk",
|
|
@@ -3019,7 +3032,7 @@
|
|
|
3019
3032
|
},
|
|
3020
3033
|
"name": "@aws-cdk/aws-lambda-go-alpha",
|
|
3021
3034
|
"readme": {
|
|
3022
|
-
"markdown": "# Amazon Lambda Golang Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis library provides constructs for Golang Lambda functions.\n\nTo use this module you will either need to have `Go` installed (`go1.11` or later) or `Docker` installed.\nSee [Local Bundling](#local-bundling)/[Docker Bundling](#docker-bundling) for more information.\n\nThis module also requires that your Golang application is\nusing a Go version >= 1.11 and is using [Go modules](https://golang.org/ref/mod).\n\n## Go Function\n\nDefine a `GoFunction`:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n});\n```\n\nBy default, if `entry` points to a directory, then the construct will assume there is a Go entry file (i.e. `main.go`).\nLet's look at an example Go project:\n\n```bash\nlamda-app\n├── cmd\n│ └── api\n│ └── main.go\n├── go.mod\n├── go.sum\n├── pkg\n│ ├── auth\n│ │ └── auth.go\n│ └── middleware\n│ └── middleware.go\n└── vendor\n ├── github.com\n │ └── aws\n │ └── aws-lambda-go\n └── modules.txt\n```\n\nWith the above layout I could either provide the `entry` as `lambda-app/cmd/api` or `lambda-app/cmd/api/main.go`, either will work.\nWhen the construct builds the golang binary this will be translated `go build ./cmd/api` & `go build ./cmd/api/main.go` respectively.\nThe construct will figure out where it needs to run the `go build` command from, in this example it would be from\nthe `lambda-app` directory. It does this by determining the [mod file path](#mod-file-path), which is explained in the\nnext section.\n\n### mod file path\n\nThe `GoFunction` tries to automatically determine your project root, that is\nthe root of your golang project. This is usually where the top level `go.mod` file or\n`vendor` folder of your project is located. When bundling in a Docker container, the\n`moduleDir` is used as the source (`/asset-input`) for the volume mounted in\nthe container.\n\nThe CDK will walk up parent folders starting from\nthe current working directory until it finds a folder containing a `go.mod` file.\n\nAlternatively, you can specify the `moduleDir` prop manually. In this case you\nneed to ensure that this path includes `entry` and any module/dependencies used\nby your function. Otherwise bundling will fail.\n\n## Runtime\n\nThe `GoFunction` can be used with either the `GO_1_X` runtime or the provided runtimes (`PROVIDED`/`PROVIDED_AL2`).\nBy default it will use the `PROVIDED_AL2` runtime. The `GO_1_X` runtime does not support things like\n[Lambda Extensions](https://docs.aws.amazon.com/lambda/latest/dg/using-extensions.html), whereas the provided runtimes do.\nThe [aws-lambda-go](https://github.com/aws/aws-lambda-go) library has built in support for the provided runtime as long as\nyou name the handler `bootstrap` (which we do by default).\n\n## Dependencies\n\nThe construct will attempt to figure out how to handle the dependencies for your function. It will\ndo this by determining whether or not you are vendoring your dependencies. It makes this determination\nby looking to see if there is a `vendor` folder at the [mod file path](#mod-file-path).\n\nWith this information the construct can determine what commands to run. You will\ngenerally fall into two scenarios:\n\n1. You are using vendoring (indicated by the presence of a `vendor` folder)\n In this case `go build` will be run with `-mod=vendor` set\n2. You are not using vendoring (indicated by the absence of a `vendor` folder)\n If you are not vendoring then `go build` will be run without `-mod=vendor`\n since the default behavior is to download dependencies\n\nAll other properties of `lambda.Function` are supported, see also the [AWS Lambda construct library](https://github.com/aws/aws-cdk/tree/
|
|
3035
|
+
"markdown": "# Amazon Lambda Golang Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis library provides constructs for Golang Lambda functions.\n\nTo use this module you will either need to have `Go` installed (`go1.11` or later) or `Docker` installed.\nSee [Local Bundling](#local-bundling)/[Docker Bundling](#docker-bundling) for more information.\n\nThis module also requires that your Golang application is\nusing a Go version >= 1.11 and is using [Go modules](https://golang.org/ref/mod).\n\n## Go Function\n\nDefine a `GoFunction`:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n});\n```\n\nBy default, if `entry` points to a directory, then the construct will assume there is a Go entry file (i.e. `main.go`).\nLet's look at an example Go project:\n\n```bash\nlamda-app\n├── cmd\n│ └── api\n│ └── main.go\n├── go.mod\n├── go.sum\n├── pkg\n│ ├── auth\n│ │ └── auth.go\n│ └── middleware\n│ └── middleware.go\n└── vendor\n ├── github.com\n │ └── aws\n │ └── aws-lambda-go\n └── modules.txt\n```\n\nWith the above layout I could either provide the `entry` as `lambda-app/cmd/api` or `lambda-app/cmd/api/main.go`, either will work.\nWhen the construct builds the golang binary this will be translated `go build ./cmd/api` & `go build ./cmd/api/main.go` respectively.\nThe construct will figure out where it needs to run the `go build` command from, in this example it would be from\nthe `lambda-app` directory. It does this by determining the [mod file path](#mod-file-path), which is explained in the\nnext section.\n\n### mod file path\n\nThe `GoFunction` tries to automatically determine your project root, that is\nthe root of your golang project. This is usually where the top level `go.mod` file or\n`vendor` folder of your project is located. When bundling in a Docker container, the\n`moduleDir` is used as the source (`/asset-input`) for the volume mounted in\nthe container.\n\nThe CDK will walk up parent folders starting from\nthe current working directory until it finds a folder containing a `go.mod` file.\n\nAlternatively, you can specify the `moduleDir` prop manually. In this case you\nneed to ensure that this path includes `entry` and any module/dependencies used\nby your function. Otherwise bundling will fail.\n\n## Runtime\n\nThe `GoFunction` can be used with either the `GO_1_X` runtime or the provided runtimes (`PROVIDED`/`PROVIDED_AL2`).\nBy default it will use the `PROVIDED_AL2` runtime. The `GO_1_X` runtime does not support things like\n[Lambda Extensions](https://docs.aws.amazon.com/lambda/latest/dg/using-extensions.html), whereas the provided runtimes do.\nThe [aws-lambda-go](https://github.com/aws/aws-lambda-go) library has built in support for the provided runtime as long as\nyou name the handler `bootstrap` (which we do by default).\n\n## Dependencies\n\nThe construct will attempt to figure out how to handle the dependencies for your function. It will\ndo this by determining whether or not you are vendoring your dependencies. It makes this determination\nby looking to see if there is a `vendor` folder at the [mod file path](#mod-file-path).\n\nWith this information the construct can determine what commands to run. You will\ngenerally fall into two scenarios:\n\n1. You are using vendoring (indicated by the presence of a `vendor` folder)\n In this case `go build` will be run with `-mod=vendor` set\n2. You are not using vendoring (indicated by the absence of a `vendor` folder)\n If you are not vendoring then `go build` will be run without `-mod=vendor`\n since the default behavior is to download dependencies\n\nAll other properties of `lambda.Function` are supported, see also the [AWS Lambda construct library](https://github.com/aws/aws-cdk/tree/main/packages/%40aws-cdk/aws-lambda).\n\n## Environment\n\nBy default the following environment variables are set for you:\n\n* `GOOS=linux`\n* `GOARCH`: based on the target architecture of the Lambda function\n* `GO111MODULE=on`\n\nUse the `environment` prop to define additional environment variables when go runs:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n environment: {\n HELLO: 'WORLD',\n },\n },\n});\n```\n\n## Local Bundling\n\nIf `Go` is installed locally and the version is >= `go1.11` then it will be used to bundle your code in your environment. Otherwise, bundling will happen in a [Lambda compatible Docker container](https://gallery.ecr.aws/sam/build-go1.x) with the Docker platform based on the target architecture of the Lambda function.\n\nFor macOS the recommended approach is to install `Go` as Docker volume performance is really poor.\n\n`Go` can be installed by following the [installation docs](https://golang.org/doc/install).\n\n\n## Docker\n\nTo force bundling in a docker container even if `Go` is available in your environment, set the `forceDockerBundling` prop to `true`. This is useful if you want to make sure that your function is built in a consistent Lambda compatible environment.\n\nUse the `buildArgs` prop to pass build arguments when building the bundling image:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n buildArgs: {\n HTTPS_PROXY: 'https://127.0.0.1:3001',\n },\n },\n});\n```\n\nUse the `bundling.dockerImage` prop to use a custom bundling image:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n dockerImage: DockerImage.fromBuild('/path/to/Dockerfile'),\n },\n});\n```\n\nUse the `bundling.goBuildFlags` prop to pass additional build flags to `go build`:\n\n```ts\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n goBuildFlags: ['-ldflags \"-s -w\"'],\n },\n});\n```\n\n## Command hooks\n\nIt is possible to run additional commands by specifying the `commandHooks` prop:\n\n```text\n// This example only available in TypeScript\n// Run additional commands on a GoFunction via `commandHooks` property\nnew lambda.GoFunction(this, 'handler', {\n bundling: {\n commandHooks: {\n // run tests\n beforeBundling(inputDir: string): string[] {\n return ['go test ./cmd/api -v'];\n },\n // ...\n },\n },\n});\n```\n\nThe following hooks are available:\n\n* `beforeBundling`: runs before all bundling commands\n* `afterBundling`: runs after all bundling commands\n\nThey all receive the directory containing the `go.mod` file (`inputDir`) and the\ndirectory where the bundled asset will be output (`outputDir`). They must return\nan array of commands to run. Commands are chained with `&&`.\n\nThe commands will run in the environment in which bundling occurs: inside the\ncontainer for Docker bundling or on the host OS for local bundling.\n\n## Additional considerations\n\nDepending on how you structure your Golang application, you may want to change the `assetHashType` parameter.\nBy default this parameter is set to `AssetHashType.OUTPUT` which means that the CDK will calculate the asset hash\n(and determine whether or not your code has changed) based on the Golang executable that is created.\n\nIf you specify `AssetHashType.SOURCE`, the CDK will calculate the asset hash by looking at the folder\nthat contains your `go.mod` file. If you are deploying a single Lambda function, or you want to redeploy\nall of your functions if anything changes, then `AssetHashType.SOURCE` will probaby work.\n\n\nFor example, if my app looked like this:\n\n```bash\nlamda-app\n├── cmd\n│ └── api\n│ └── main.go\n├── go.mod\n├── go.sum\n└── pkg\n └── auth\n └── auth.go\n```\n\nWith this structure I would provide the `entry` as `cmd/api` which means that the CDK\nwill determine that the protect root is `lambda-app` (it contains the `go.mod` file).\nSince I only have a single Lambda function, and any update to files within the `lambda-app` directory\nshould trigger a new deploy, I could specify `AssetHashType.SOURCE`.\n\nOn the other hand, if I had a project that deployed mmultiple Lambda functions, for example:\n\n```bash\nlamda-app\n├── cmd\n│ ├── api\n│ │ └── main.go\n│ └── anotherApi\n│ └── main.go\n├── go.mod\n├── go.sum\n└── pkg\n ├── auth\n │ └── auth.go\n └── middleware\n └── middleware.go\n```\n\nThen I would most likely want `AssetHashType.OUTPUT`. With `OUTPUT`\nthe CDK will only recognize changes if the Golang executable has changed,\nand Go only includes dependencies that are used in the executable. So in this case\nif `cmd/api` used the `auth` & `middleware` packages, but `cmd/anotherApi` did not, then\nan update to `auth` or `middleware` would only trigger an update to the `cmd/api` Lambda\nFunction.\n"
|
|
3023
3036
|
},
|
|
3024
3037
|
"repository": {
|
|
3025
3038
|
"directory": "packages/individual-packages/aws-lambda-go",
|
|
@@ -3030,7 +3043,7 @@
|
|
|
3030
3043
|
"targets": {
|
|
3031
3044
|
"dotnet": {
|
|
3032
3045
|
"assemblyOriginatorKeyFile": "../../key.snk",
|
|
3033
|
-
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/
|
|
3046
|
+
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
|
|
3034
3047
|
"namespace": "Amazon.CDK.AWS.Lambda.Go.Alpha",
|
|
3035
3048
|
"packageId": "Amazon.CDK.AWS.Lambda.Go.Alpha",
|
|
3036
3049
|
"signAssembly": true
|
|
@@ -3505,6 +3518,6 @@
|
|
|
3505
3518
|
"symbolId": "lib/types:ICommandHooks"
|
|
3506
3519
|
}
|
|
3507
3520
|
},
|
|
3508
|
-
"version": "2.
|
|
3521
|
+
"version": "2.28.0-alpha.0",
|
|
3509
3522
|
"fingerprint": "**********"
|
|
3510
3523
|
}
|
package/.jsii.tabl.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2",
|
|
3
|
-
"toolVersion": "1.
|
|
3
|
+
"toolVersion": "1.60.1",
|
|
4
4
|
"snippets": {
|
|
5
5
|
"0ddaec7539c22b7485ab478a9886f2a382fd5174139080649aa818fece8c4e92": {
|
|
6
6
|
"translations": {
|
|
@@ -38,7 +38,8 @@
|
|
|
38
38
|
"didCompile": true,
|
|
39
39
|
"fqnsReferenced": [
|
|
40
40
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
41
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
41
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
42
|
+
"constructs.Construct"
|
|
42
43
|
],
|
|
43
44
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
44
45
|
"syntaxKindCounter": {
|
|
@@ -51,7 +52,7 @@
|
|
|
51
52
|
"226": 1,
|
|
52
53
|
"281": 1
|
|
53
54
|
},
|
|
54
|
-
"fqnsFingerprint": "
|
|
55
|
+
"fqnsFingerprint": "c7a0555d86ad2174efaf07c173ce626381e157230c75d9284055b0dca82ca416"
|
|
55
56
|
},
|
|
56
57
|
"e70c2439ea96dd819afe0cc5b516581c4f9ddbc891b3763d8ce3479f77c9c6b3": {
|
|
57
58
|
"translations": {
|
|
@@ -90,7 +91,8 @@
|
|
|
90
91
|
"fqnsReferenced": [
|
|
91
92
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
92
93
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
93
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
94
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
95
|
+
"constructs.Construct"
|
|
94
96
|
],
|
|
95
97
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n environment: {\n HELLO: 'WORLD',\n },\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
96
98
|
"syntaxKindCounter": {
|
|
@@ -103,7 +105,7 @@
|
|
|
103
105
|
"226": 1,
|
|
104
106
|
"281": 4
|
|
105
107
|
},
|
|
106
|
-
"fqnsFingerprint": "
|
|
108
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
107
109
|
},
|
|
108
110
|
"48b66a21ffc53208985227b09545759dda324e90fa803d6d69397d67eb1eae37": {
|
|
109
111
|
"translations": {
|
|
@@ -142,7 +144,8 @@
|
|
|
142
144
|
"fqnsReferenced": [
|
|
143
145
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
144
146
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
145
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
147
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
148
|
+
"constructs.Construct"
|
|
146
149
|
],
|
|
147
150
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n buildArgs: {\n HTTPS_PROXY: 'https://127.0.0.1:3001',\n },\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
148
151
|
"syntaxKindCounter": {
|
|
@@ -155,7 +158,7 @@
|
|
|
155
158
|
"226": 1,
|
|
156
159
|
"281": 4
|
|
157
160
|
},
|
|
158
|
-
"fqnsFingerprint": "
|
|
161
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
159
162
|
},
|
|
160
163
|
"aad0bb971e874ac487894fadf4ada34afa6368a0fe470a3c5eff8d28c49046e3": {
|
|
161
164
|
"translations": {
|
|
@@ -196,7 +199,8 @@
|
|
|
196
199
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
197
200
|
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
198
201
|
"aws-cdk-lib.DockerImage",
|
|
199
|
-
"aws-cdk-lib.DockerImage#fromBuild"
|
|
202
|
+
"aws-cdk-lib.DockerImage#fromBuild",
|
|
203
|
+
"constructs.Construct"
|
|
200
204
|
],
|
|
201
205
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n dockerImage: DockerImage.fromBuild('/path/to/Dockerfile'),\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
202
206
|
"syntaxKindCounter": {
|
|
@@ -210,7 +214,7 @@
|
|
|
210
214
|
"226": 1,
|
|
211
215
|
"281": 3
|
|
212
216
|
},
|
|
213
|
-
"fqnsFingerprint": "
|
|
217
|
+
"fqnsFingerprint": "2ddc515af2fbf3a651b43a71e567e713c939f07254b085d3f2facac6fa05131b"
|
|
214
218
|
},
|
|
215
219
|
"4813fa1d4ff1554906c147e38be7de9d3a15fb9734ab53a8f64796488501611b": {
|
|
216
220
|
"translations": {
|
|
@@ -249,7 +253,8 @@
|
|
|
249
253
|
"fqnsReferenced": [
|
|
250
254
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
251
255
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
252
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
256
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
257
|
+
"constructs.Construct"
|
|
253
258
|
],
|
|
254
259
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n goBuildFlags: ['-ldflags \"-s -w\"'],\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
255
260
|
"syntaxKindCounter": {
|
|
@@ -263,7 +268,7 @@
|
|
|
263
268
|
"226": 1,
|
|
264
269
|
"281": 3
|
|
265
270
|
},
|
|
266
|
-
"fqnsFingerprint": "
|
|
271
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
267
272
|
},
|
|
268
273
|
"b9b468ace2862d2583a80f264d8f99f76fbe474065a42112d85344ed00555af7": {
|
|
269
274
|
"translations": {
|
|
@@ -301,7 +306,8 @@
|
|
|
301
306
|
"fqnsReferenced": [
|
|
302
307
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
303
308
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
304
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
309
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
310
|
+
"constructs.Construct"
|
|
305
311
|
],
|
|
306
312
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n environment: {\n HELLO: 'WORLD',\n },\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
307
313
|
"syntaxKindCounter": {
|
|
@@ -314,7 +320,7 @@
|
|
|
314
320
|
"226": 1,
|
|
315
321
|
"281": 4
|
|
316
322
|
},
|
|
317
|
-
"fqnsFingerprint": "
|
|
323
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
318
324
|
},
|
|
319
325
|
"da5b66c1f2894d6b595fb1ff5d7d5ae6088902bb6692b5de102ef7ed3c791748": {
|
|
320
326
|
"translations": {
|
|
@@ -352,7 +358,8 @@
|
|
|
352
358
|
"fqnsReferenced": [
|
|
353
359
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
354
360
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
355
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
361
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
362
|
+
"constructs.Construct"
|
|
356
363
|
],
|
|
357
364
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n goBuildFlags: ['-ldflags \"-s -w\"'],\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
358
365
|
"syntaxKindCounter": {
|
|
@@ -366,7 +373,7 @@
|
|
|
366
373
|
"226": 1,
|
|
367
374
|
"281": 3
|
|
368
375
|
},
|
|
369
|
-
"fqnsFingerprint": "
|
|
376
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
370
377
|
},
|
|
371
378
|
"e08f92e358389a1d1634ee1353821349d445e7db841259c4c020eae416c870ef": {
|
|
372
379
|
"translations": {
|
|
@@ -404,7 +411,8 @@
|
|
|
404
411
|
"fqnsReferenced": [
|
|
405
412
|
"@aws-cdk/aws-lambda-go-alpha.BundlingOptions",
|
|
406
413
|
"@aws-cdk/aws-lambda-go-alpha.GoFunction",
|
|
407
|
-
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps"
|
|
414
|
+
"@aws-cdk/aws-lambda-go-alpha.GoFunctionProps",
|
|
415
|
+
"constructs.Construct"
|
|
408
416
|
],
|
|
409
417
|
"fullSource": "// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport { DockerImage, Stack } from 'aws-cdk-lib';\nimport * as lambda from '@aws-cdk/aws-lambda-go-alpha';\n\nclass Fixture extends Stack {\n constructor(scope: Construct, id: string) {\n super(scope, id);\n\n // Code snippet begins after !show marker below\n/// !show\nnew lambda.GoFunction(this, 'handler', {\n entry: 'app/cmd/api',\n bundling: {\n goBuildFlags: ['-ldflags \"-s -w\"'],\n },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}\n",
|
|
410
418
|
"syntaxKindCounter": {
|
|
@@ -418,7 +426,7 @@
|
|
|
418
426
|
"226": 1,
|
|
419
427
|
"281": 3
|
|
420
428
|
},
|
|
421
|
-
"fqnsFingerprint": "
|
|
429
|
+
"fqnsFingerprint": "c009890e225545c7dd427610d054b524af3d2b55c657a0b7f9be12214b12329e"
|
|
422
430
|
}
|
|
423
431
|
}
|
|
424
432
|
}
|
package/README.md
CHANGED
|
@@ -99,7 +99,7 @@ generally fall into two scenarios:
|
|
|
99
99
|
If you are not vendoring then `go build` will be run without `-mod=vendor`
|
|
100
100
|
since the default behavior is to download dependencies
|
|
101
101
|
|
|
102
|
-
All other properties of `lambda.Function` are supported, see also the [AWS Lambda construct library](https://github.com/aws/aws-cdk/tree/
|
|
102
|
+
All other properties of `lambda.Function` are supported, see also the [AWS Lambda construct library](https://github.com/aws/aws-cdk/tree/main/packages/%40aws-cdk/aws-lambda).
|
|
103
103
|
|
|
104
104
|
## Environment
|
|
105
105
|
|
package/lib/bundling.js
CHANGED
|
@@ -11,9 +11,10 @@ const util_1 = require("./util");
|
|
|
11
11
|
*/
|
|
12
12
|
class Bundling {
|
|
13
13
|
constructor(props) {
|
|
14
|
-
var _a, _b, _c, _d;
|
|
15
14
|
this.props = props;
|
|
16
|
-
Bundling.runsLocally =
|
|
15
|
+
Bundling.runsLocally = Bundling.runsLocally
|
|
16
|
+
?? util_1.getGoBuildVersion()
|
|
17
|
+
?? false;
|
|
17
18
|
const projectRoot = path.dirname(props.moduleDir);
|
|
18
19
|
this.relativeEntryPath = `./${path.relative(projectRoot, path.resolve(props.entry))}`;
|
|
19
20
|
const cgoEnabled = props.cgoEnabled ? '1' : '0';
|
|
@@ -27,13 +28,14 @@ class Bundling {
|
|
|
27
28
|
// Docker bundling
|
|
28
29
|
const shouldBuildImage = props.forcedDockerBundling || !Bundling.runsLocally;
|
|
29
30
|
this.image = shouldBuildImage
|
|
30
|
-
?
|
|
31
|
+
? props.dockerImage ?? cdk.DockerImage.fromBuild(path.join(__dirname, '../lib'), {
|
|
31
32
|
buildArgs: {
|
|
32
|
-
...
|
|
33
|
+
...props.buildArgs ?? {},
|
|
33
34
|
IMAGE: aws_lambda_1.Runtime.GO_1_X.bundlingImage.image,
|
|
34
35
|
},
|
|
35
36
|
platform: props.architecture.dockerPlatform,
|
|
36
|
-
})
|
|
37
|
+
})
|
|
38
|
+
: cdk.DockerImage.fromRegistry('dummy'); // Do not build if we don't need to
|
|
37
39
|
const bundlingCommand = this.createBundlingCommand(cdk.AssetStaging.BUNDLING_INPUT_DIR, cdk.AssetStaging.BUNDLING_OUTPUT_DIR);
|
|
38
40
|
this.command = ['bash', '-c', bundlingCommand];
|
|
39
41
|
this.environment = environment;
|
|
@@ -52,7 +54,7 @@ class Bundling {
|
|
|
52
54
|
osPlatform === 'win32' ? '/c' : '-c',
|
|
53
55
|
localCommand,
|
|
54
56
|
], {
|
|
55
|
-
env: { ...process.env, ...environment
|
|
57
|
+
env: { ...process.env, ...environment ?? {} },
|
|
56
58
|
stdio: [
|
|
57
59
|
'ignore',
|
|
58
60
|
process.stderr,
|
|
@@ -67,10 +69,9 @@ class Bundling {
|
|
|
67
69
|
}
|
|
68
70
|
}
|
|
69
71
|
static bundle(options) {
|
|
70
|
-
var _a;
|
|
71
72
|
const bundling = new Bundling(options);
|
|
72
73
|
return aws_lambda_1.Code.fromAsset(path.dirname(options.moduleDir), {
|
|
73
|
-
assetHashType:
|
|
74
|
+
assetHashType: options.assetHashType ?? cdk.AssetHashType.OUTPUT,
|
|
74
75
|
assetHash: options.assetHash,
|
|
75
76
|
bundling: {
|
|
76
77
|
image: bundling.image,
|
|
@@ -84,7 +85,6 @@ class Bundling {
|
|
|
84
85
|
this.runsLocally = undefined;
|
|
85
86
|
}
|
|
86
87
|
createBundlingCommand(inputDir, outputDir, osPlatform = 'linux') {
|
|
87
|
-
var _a, _b, _c, _d;
|
|
88
88
|
const pathJoin = osPathJoin(osPlatform);
|
|
89
89
|
const hasVendor = util_1.findUp('vendor', path.dirname(this.props.entry));
|
|
90
90
|
const goBuildCommand = [
|
|
@@ -95,9 +95,9 @@ class Bundling {
|
|
|
95
95
|
`${this.relativeEntryPath.replace(/\\/g, '/')}`,
|
|
96
96
|
].filter(c => !!c).join(' ');
|
|
97
97
|
return chain([
|
|
98
|
-
...
|
|
98
|
+
...this.props.commandHooks?.beforeBundling(inputDir, outputDir) ?? [],
|
|
99
99
|
goBuildCommand,
|
|
100
|
-
...
|
|
100
|
+
...this.props.commandHooks?.afterBundling(inputDir, outputDir) ?? [],
|
|
101
101
|
]);
|
|
102
102
|
}
|
|
103
103
|
}
|
|
@@ -118,4 +118,4 @@ function osPathJoin(platform) {
|
|
|
118
118
|
function chain(commands) {
|
|
119
119
|
return commands.filter(c => !!c).join(' && ');
|
|
120
120
|
}
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidW5kbGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLHVEQUFnRjtBQUNoRixtQ0FBbUM7QUFFbkMsaUNBQXlEO0FBMkR6RDs7R0FFRztBQUNILE1BQWEsUUFBUTtJQStCbkIsWUFBNkIsS0FBb0I7O1FBQXBCLFVBQUssR0FBTCxLQUFLLENBQWU7UUFDL0MsUUFBUSxDQUFDLFdBQVcsZUFBRyxRQUFRLENBQUMsV0FBVyxtQ0FDdEMsd0JBQWlCLEVBQUUsbUNBQ25CLEtBQUssQ0FBQztRQUVYLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV0RixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUVoRCxNQUFNLFdBQVcsR0FBRztZQUNsQixXQUFXLEVBQUUsVUFBVTtZQUN2QixXQUFXLEVBQUUsSUFBSTtZQUNqQixNQUFNLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2RCxJQUFJLEVBQUUsT0FBTztZQUNiLEdBQUcsS0FBSyxDQUFDLFdBQVc7U0FDckIsQ0FBQztRQUVGLGtCQUFrQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDN0UsSUFBSSxDQUFDLEtBQUssR0FBRyxnQkFBZ0I7WUFD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YztZQUNkLGVBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLDBDQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsU0FBUyxvQ0FBSyxFQUFFO1NBQ3JFLENBQUMsQ0FBQztLQUNKO0NBQ0Y7QUF6SEQsNEJBeUhDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLFVBQVUsQ0FBQyxRQUF5QjtJQUMzQyxPQUFPLFVBQVMsR0FBRyxLQUFlO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUNuQyxnREFBZ0Q7UUFDaEQsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssT0FBTyxJQUFJLFFBQVEsS0FBSyxPQUFPLEVBQUU7WUFDckQsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNuQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLEtBQUssQ0FBQyxRQUFrQjtJQUMvQixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBBc3NldENvZGUsIENvZGUsIFJ1bnRpbWUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBCdW5kbGluZ09wdGlvbnMgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGV4ZWMsIGZpbmRVcCwgZ2V0R29CdWlsZFZlcnNpb24gfSBmcm9tICcuL3V0aWwnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGJ1bmRsaW5nXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVuZGxpbmdQcm9wcyBleHRlbmRzIEJ1bmRsaW5nT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBEaXJlY3RvcnkgY29udGFpbmluZyB5b3VyIGdvLm1vZCBmaWxlXG4gICAqXG4gICAqIFRoaXMgd2lsbCBhY2NlcHQgZWl0aGVyIGEgZGlyZWN0b3J5IHBhdGggY29udGFpbmluZyBhIGBnby5tb2RgIGZpbGVcbiAgICogb3IgYSBmaWxlcGF0aCB0byB5b3VyIGBnby5tb2RgIGZpbGUgKGkuZS4gYHBhdGgvdG8vZ28ubW9kYCkuXG4gICAqXG4gICAqIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBzb3VyY2Ugb2YgdGhlIHZvbHVtZSBtb3VudGVkIGluIHRoZSBEb2NrZXJcbiAgICogY29udGFpbmVyIGFuZCB3aWxsIGJlIHRoZSBkaXJlY3Rvcnkgd2hlcmUgaXQgd2lsbCBydW4gYGdvIGJ1aWxkYCBmcm9tLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBwYXRoIGlzIGZvdW5kIGJ5IHdhbGtpbmcgdXAgcGFyZW50IGRpcmVjdG9yaWVzIHNlYXJjaGluZyBmb3JcbiAgICogIGEgYGdvLm1vZGAgZmlsZSBmcm9tIHRoZSBsb2NhdGlvbiBvZiBgZW50cnlgXG4gICAqL1xuICByZWFkb25seSBtb2R1bGVEaXI6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBhdGggdG8gdGhlIGZvbGRlciBvciBmaWxlIHRoYXQgY29udGFpbnMgdGhlIG1haW4gYXBwbGljYXRpb24gZW50cnkgcG9pbnQgZmlsZXMgZm9yIHRoZSBwcm9qZWN0LlxuICAgKlxuICAgKiBUaGlzIGFjY2VwdHMgZWl0aGVyIGEgcGF0aCB0byBhIGRpcmVjdG9yeSBvciBmaWxlLlxuICAgKlxuICAgKiBJZiBhIGRpcmVjdG9yeSBwYXRoIGlzIHByb3ZpZGVkIHRoZW4gaXQgd2lsbCBhc3N1bWUgdGhlcmUgaXMgYSBHbyBlbnRyeSBmaWxlIChpLmUuIGBtYWluLmdvYCkgYW5kXG4gICAqIHdpbGwgY29uc3RydWN0IHRoZSBidWlsZCBjb21tYW5kIHVzaW5nIHRoZSBkaXJlY3RvcnkgcGF0aC5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHlvdSBwcm92aWRlIHRoZSBlbnRyeSBhczpcbiAgICpcbiAgICogICAgIGVudHJ5OiAnbXktbGFtYmRhLWFwcC9jbWQvYXBpJ1xuICAgKlxuICAgKiBUaGVuIHRoZSBgZ28gYnVpbGRgIGNvbW1hbmQgd291bGQgYmU6XG4gICAqXG4gICAqICAgICBgZ28gYnVpbGQgLi9jbWQvYXBpYFxuICAgKlxuICAgKiBJZiBhIHBhdGggdG8gYSBmaWxlIGlzIHByb3ZpZGVkIHRoZW4gaXQgd2lsbCB1c2UgdGhlIGZpbGVwYXRoIGluIHRoZSBidWlsZCBjb21tYW5kLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IHByb3ZpZGUgdGhlIGVudHJ5IGFzOlxuICAgKlxuICAgKiAgICAgZW50cnk6ICdteS1sYW1iZGEtYXBwL2NtZC9hcGkvbWFpbi5nbydcbiAgICpcbiAgICogVGhlbiB0aGUgYGdvIGJ1aWxkYCBjb21tYW5kIHdvdWxkIGJlOlxuICAgKlxuICAgKiAgICAgYGdvIGJ1aWxkIC4vY21kL2FwaS9tYWluLmdvYFxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnk6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJ1bnRpbWUgb2YgdGhlIGxhbWJkYSBmdW5jdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgcnVudGltZTogUnVudGltZTtcblxuICAvKipcbiAgICogVGhlIHN5c3RlbSBhcmNoaXRlY3R1cmUgb2YgdGhlIGxhbWJkYSBmdW5jdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmU7XG59XG5cbi8qKlxuICogQnVuZGxpbmdcbiAqL1xuZXhwb3J0IGNsYXNzIEJ1bmRsaW5nIGltcGxlbWVudHMgY2RrLkJ1bmRsaW5nT3B0aW9ucyB7XG5cbiAgcHVibGljIHN0YXRpYyBidW5kbGUob3B0aW9uczogQnVuZGxpbmdQcm9wcyk6IEFzc2V0Q29kZSB7XG4gICAgY29uc3QgYnVuZGxpbmcgPSBuZXcgQnVuZGxpbmcob3B0aW9ucyk7XG5cbiAgICByZXR1cm4gQ29kZS5mcm9tQXNzZXQocGF0aC5kaXJuYW1lKG9wdGlvbnMubW9kdWxlRGlyKSwge1xuICAgICAgYXNzZXRIYXNoVHlwZTogb3B0aW9ucy5hc3NldEhhc2hUeXBlID8/IGNkay5Bc3NldEhhc2hUeXBlLk9VVFBVVCxcbiAgICAgIGFzc2V0SGFzaDogb3B0aW9ucy5hc3NldEhhc2gsXG4gICAgICBidW5kbGluZzoge1xuICAgICAgICBpbWFnZTogYnVuZGxpbmcuaW1hZ2UsXG4gICAgICAgIGNvbW1hbmQ6IGJ1bmRsaW5nLmNvbW1hbmQsXG4gICAgICAgIGVudmlyb25tZW50OiBidW5kbGluZy5lbnZpcm9ubWVudCxcbiAgICAgICAgbG9jYWw6IGJ1bmRsaW5nLmxvY2FsLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY2xlYXJSdW5zTG9jYWxseUNhY2hlKCk6IHZvaWQgeyAvLyBmb3IgdGVzdHNcbiAgICB0aGlzLnJ1bnNMb2NhbGx5ID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcnVuc0xvY2FsbHk/OiBib29sZWFuO1xuXG4gIC8vIENvcmUgYnVuZGxpbmcgb3B0aW9uc1xuICBwdWJsaWMgcmVhZG9ubHkgaW1hZ2U6IGNkay5Eb2NrZXJJbWFnZTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbW1hbmQ6IHN0cmluZ1tdO1xuICBwdWJsaWMgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBwdWJsaWMgcmVhZG9ubHkgbG9jYWw/OiBjZGsuSUxvY2FsQnVuZGxpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSByZWxhdGl2ZUVudHJ5UGF0aDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEJ1bmRsaW5nUHJvcHMpIHtcbiAgICBCdW5kbGluZy5ydW5zTG9jYWxseSA9IEJ1bmRsaW5nLnJ1bnNMb2NhbGx5XG4gICAgICA/PyBnZXRHb0J1aWxkVmVyc2lvbigpXG4gICAgICA/PyBmYWxzZTtcblxuICAgIGNvbnN0IHByb2plY3RSb290ID0gcGF0aC5kaXJuYW1lKHByb3BzLm1vZHVsZURpcik7XG4gICAgdGhpcy5yZWxhdGl2ZUVudHJ5UGF0aCA9IGAuLyR7cGF0aC5yZWxhdGl2ZShwcm9qZWN0Um9vdCwgcGF0aC5yZXNvbHZlKHByb3BzLmVudHJ5KSl9YDtcblxuICAgIGNvbnN0IGNnb0VuYWJsZWQgPSBwcm9wcy5jZ29FbmFibGVkID8gJzEnIDogJzAnO1xuXG4gICAgY29uc3QgZW52aXJvbm1lbnQgPSB7XG4gICAgICBDR09fRU5BQkxFRDogY2dvRW5hYmxlZCxcbiAgICAgIEdPMTExTU9EVUxFOiAnb24nLFxuICAgICAgR09BUkNIOiBwcm9wcy5hcmNoaXRlY3R1cmUuZG9ja2VyUGxhdGZvcm0uc3BsaXQoJy8nKVsxXSxcbiAgICAgIEdPT1M6ICdsaW51eCcsXG4gICAgICAuLi5wcm9wcy5lbnZpcm9ubWVudCxcbiAgICB9O1xuXG4gICAgLy8gRG9ja2VyIGJ1bmRsaW5nXG4gICAgY29uc3Qgc2hvdWxkQnVpbGRJbWFnZSA9IHByb3BzLmZvcmNlZERvY2tlckJ1bmRsaW5nIHx8ICFCdW5kbGluZy5ydW5zTG9jYWxseTtcbiAgICB0aGlzLmltYWdlID0gc2hvdWxkQnVpbGRJbWFnZVxuICAgICAgPyBwcm9wcy5kb2NrZXJJbWFnZSA/PyBjZGsuRG9ja2VySW1hZ2UuZnJvbUJ1aWxkKHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi9saWInKSwge1xuICAgICAgICBidWlsZEFyZ3M6IHtcbiAgICAgICAgICAuLi5wcm9wcy5idWlsZEFyZ3MgPz8ge30sXG4gICAgICAgICAgSU1BR0U6IFJ1bnRpbWUuR09fMV9YLmJ1bmRsaW5nSW1hZ2UuaW1hZ2UsIC8vIGFsd2F5cyB1c2UgdGhlIEdPXzFfWCBidWlsZCBpbWFnZVxuICAgICAgICB9LFxuICAgICAgICBwbGF0Zm9ybTogcHJvcHMuYXJjaGl0ZWN0dXJlLmRvY2tlclBsYXRmb3JtLFxuICAgICAgfSlcbiAgICAgIDogY2RrLkRvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnZHVtbXknKTsgLy8gRG8gbm90IGJ1aWxkIGlmIHdlIGRvbid0IG5lZWQgdG9cblxuICAgIGNvbnN0IGJ1bmRsaW5nQ29tbWFuZCA9IHRoaXMuY3JlYXRlQnVuZGxpbmdDb21tYW5kKGNkay5Bc3NldFN0YWdpbmcuQlVORExJTkdfSU5QVVRfRElSLCBjZGsuQXNzZXRTdGFnaW5nLkJVTkRMSU5HX09VVFBVVF9ESVIpO1xuICAgIHRoaXMuY29tbWFuZCA9IFsnYmFzaCcsICctYycsIGJ1bmRsaW5nQ29tbWFuZF07XG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50O1xuXG4gICAgLy8gTG9jYWwgYnVuZGxpbmdcbiAgICBpZiAoIXByb3BzLmZvcmNlZERvY2tlckJ1bmRsaW5nKSB7IC8vIG9ubHkgaWYgRG9ja2VyIGlzIG5vdCBmb3JjZWRcblxuICAgICAgY29uc3Qgb3NQbGF0Zm9ybSA9IG9zLnBsYXRmb3JtKCk7XG4gICAgICBjb25zdCBjcmVhdGVMb2NhbENvbW1hbmQgPSAob3V0cHV0RGlyOiBzdHJpbmcpID0+IHRoaXMuY3JlYXRlQnVuZGxpbmdDb21tYW5kKHByb2plY3RSb290LCBvdXRwdXREaXIsIG9zUGxhdGZvcm0pO1xuXG4gICAgICB0aGlzLmxvY2FsID0ge1xuICAgICAgICB0cnlCdW5kbGUob3V0cHV0RGlyOiBzdHJpbmcpIHtcbiAgICAgICAgICBpZiAoQnVuZGxpbmcucnVuc0xvY2FsbHkgPT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHByb2Nlc3Muc3RkZXJyLndyaXRlKCdnbyBidWlsZCBjYW5ub3QgcnVuIGxvY2FsbHkuIFN3aXRjaGluZyB0byBEb2NrZXIgYnVuZGxpbmcuXFxuJyk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgbG9jYWxDb21tYW5kID0gY3JlYXRlTG9jYWxDb21tYW5kKG91dHB1dERpcik7XG4gICAgICAgICAgZXhlYyhcbiAgICAgICAgICAgIG9zUGxhdGZvcm0gPT09ICd3aW4zMicgPyAnY21kJyA6ICdiYXNoJyxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgb3NQbGF0Zm9ybSA9PT0gJ3dpbjMyJyA/ICcvYycgOiAnLWMnLFxuICAgICAgICAgICAgICBsb2NhbENvbW1hbmQsXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbnY6IHsgLi4ucHJvY2Vzcy5lbnYsIC4uLmVudmlyb25tZW50ID8/IHt9IH0sXG4gICAgICAgICAgICAgIHN0ZGlvOiBbIC8vIHNob3cgb3V0cHV0XG4gICAgICAgICAgICAgICAgJ2lnbm9yZScsIC8vIGlnbm9yZSBzdGRpb1xuICAgICAgICAgICAgICAgIHByb2Nlc3Muc3RkZXJyLCAvLyByZWRpcmVjdCBzdGRvdXQgdG8gc3RkZXJyXG4gICAgICAgICAgICAgICAgJ2luaGVyaXQnLCAvLyBpbmhlcml0IHN0ZGVyclxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBjd2Q6IHBhdGguZGlybmFtZShwcm9wcy5tb2R1bGVEaXIpLFxuICAgICAgICAgICAgICB3aW5kb3dzVmVyYmF0aW1Bcmd1bWVudHM6IG9zUGxhdGZvcm0gPT09ICd3aW4zMicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVCdW5kbGluZ0NvbW1hbmQoaW5wdXREaXI6IHN0cmluZywgb3V0cHV0RGlyOiBzdHJpbmcsIG9zUGxhdGZvcm06IE5vZGVKUy5QbGF0Zm9ybSA9ICdsaW51eCcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhdGhKb2luID0gb3NQYXRoSm9pbihvc1BsYXRmb3JtKTtcblxuICAgIGNvbnN0IGhhc1ZlbmRvciA9IGZpbmRVcCgndmVuZG9yJywgcGF0aC5kaXJuYW1lKHRoaXMucHJvcHMuZW50cnkpKTtcblxuICAgIGNvbnN0IGdvQnVpbGRDb21tYW5kOiBzdHJpbmcgPSBbXG4gICAgICAnZ28nLCAnYnVpbGQnLFxuICAgICAgaGFzVmVuZG9yID8gJy1tb2Q9dmVuZG9yJzogJycsXG4gICAgICAnLW8nLCBgJHtwYXRoSm9pbihvdXRwdXREaXIsICdib290c3RyYXAnKX1gLFxuICAgICAgYCR7dGhpcy5wcm9wcy5nb0J1aWxkRmxhZ3MgPyB0aGlzLnByb3BzLmdvQnVpbGRGbGFncy5qb2luKCcgJykgOiAnJ31gLFxuICAgICAgYCR7dGhpcy5yZWxhdGl2ZUVudHJ5UGF0aC5yZXBsYWNlKC9cXFxcL2csICcvJyl9YCxcbiAgICBdLmZpbHRlcihjID0+ICEhYykuam9pbignICcpO1xuXG4gICAgcmV0dXJuIGNoYWluKFtcbiAgICAgIC4uLnRoaXMucHJvcHMuY29tbWFuZEhvb2tzPy5iZWZvcmVCdW5kbGluZyhpbnB1dERpciwgb3V0cHV0RGlyKSA/PyBbXSxcbiAgICAgIGdvQnVpbGRDb21tYW5kLFxuICAgICAgLi4udGhpcy5wcm9wcy5jb21tYW5kSG9va3M/LmFmdGVyQnVuZGxpbmcoaW5wdXREaXIsIG91dHB1dERpcikgPz8gW10sXG4gICAgXSk7XG4gIH1cbn1cblxuLyoqXG4gKiBQbGF0Zm9ybSBzcGVjaWZpYyBwYXRoIGpvaW5cbiAqL1xuZnVuY3Rpb24gb3NQYXRoSm9pbihwbGF0Zm9ybTogTm9kZUpTLlBsYXRmb3JtKSB7XG4gIHJldHVybiBmdW5jdGlvbiguLi5wYXRoczogc3RyaW5nW10pOiBzdHJpbmcge1xuICAgIGNvbnN0IGpvaW5lZCA9IHBhdGguam9pbiguLi5wYXRocyk7XG4gICAgLy8gSWYgd2UgYXJlIG9uIHdpbjMyIGJ1dCBuZWVkIHBvc2l4IHN0eWxlIHBhdGhzXG4gICAgaWYgKG9zLnBsYXRmb3JtKCkgPT09ICd3aW4zMicgJiYgcGxhdGZvcm0gIT09ICd3aW4zMicpIHtcbiAgICAgIHJldHVybiBqb2luZWQucmVwbGFjZSgvXFxcXC9nLCAnLycpO1xuICAgIH1cbiAgICByZXR1cm4gam9pbmVkO1xuICB9O1xufVxuXG5mdW5jdGlvbiBjaGFpbihjb21tYW5kczogc3RyaW5nW10pOiBzdHJpbmcge1xuICByZXR1cm4gY29tbWFuZHMuZmlsdGVyKGMgPT4gISFjKS5qb2luKCcgJiYgJyk7XG59XG4iXX0=
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidW5kbGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLHVEQUFnRjtBQUNoRixtQ0FBbUM7QUFFbkMsaUNBQXlEO0FBMkR6RDs7R0FFRztBQUNILE1BQWEsUUFBUTtJQStCbkIsWUFBNkIsS0FBb0I7UUFBcEIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUMvQyxRQUFRLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxXQUFXO2VBQ3RDLHdCQUFpQixFQUFFO2VBQ25CLEtBQUssQ0FBQztRQUVYLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV0RixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUVoRCxNQUFNLFdBQVcsR0FBRztZQUNsQixXQUFXLEVBQUUsVUFBVTtZQUN2QixXQUFXLEVBQUUsSUFBSTtZQUNqQixNQUFNLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2RCxJQUFJLEVBQUUsT0FBTztZQUNiLEdBQUcsS0FBSyxDQUFDLFdBQVc7U0FDckIsQ0FBQztRQUVGLGtCQUFrQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDN0UsSUFBSSxDQUFDLEtBQUssR0FBRyxnQkFBZ0I7WUFDM0Is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SyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUU7U0FDckUsQ0FBQyxDQUFDO0tBQ0o7Q0FDRjtBQXpIRCw0QkF5SEM7QUFFRDs7R0FFRztBQUNILFNBQVMsVUFBVSxDQUFDLFFBQXlCO0lBQzNDLE9BQU8sVUFBUyxHQUFHLEtBQWU7UUFDaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ25DLGdEQUFnRDtRQUNoRCxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxPQUFPLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRTtZQUNyRCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ25DO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsS0FBSyxDQUFDLFFBQWtCO0lBQy9CLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDaEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9zIGZyb20gJ29zJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBBcmNoaXRlY3R1cmUsIEFzc2V0Q29kZSwgQ29kZSwgUnVudGltZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IEJ1bmRsaW5nT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgZXhlYywgZmluZFVwLCBnZXRHb0J1aWxkVmVyc2lvbiB9IGZyb20gJy4vdXRpbCc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYnVuZGxpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdW5kbGluZ1Byb3BzIGV4dGVuZHMgQnVuZGxpbmdPcHRpb25zIHtcbiAgLyoqXG4gICAqIERpcmVjdG9yeSBjb250YWluaW5nIHlvdXIgZ28ubW9kIGZpbGVcbiAgICpcbiAgICogVGhpcyB3aWxsIGFjY2VwdCBlaXRoZXIgYSBkaXJlY3RvcnkgcGF0aCBjb250YWluaW5nIGEgYGdvLm1vZGAgZmlsZVxuICAgKiBvciBhIGZpbGVwYXRoIHRvIHlvdXIgYGdvLm1vZGAgZmlsZSAoaS5lLiBgcGF0aC90by9nby5tb2RgKS5cbiAgICpcbiAgICogVGhpcyB3aWxsIGJlIHVzZWQgYXMgdGhlIHNvdXJjZSBvZiB0aGUgdm9sdW1lIG1vdW50ZWQgaW4gdGhlIERvY2tlclxuICAgKiBjb250YWluZXIgYW5kIHdpbGwgYmUgdGhlIGRpcmVjdG9yeSB3aGVyZSBpdCB3aWxsIHJ1biBgZ28gYnVpbGRgIGZyb20uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIHBhdGggaXMgZm91bmQgYnkgd2Fsa2luZyB1cCBwYXJlbnQgZGlyZWN0b3JpZXMgc2VhcmNoaW5nIGZvclxuICAgKiAgYSBgZ28ubW9kYCBmaWxlIGZyb20gdGhlIGxvY2F0aW9uIG9mIGBlbnRyeWBcbiAgICovXG4gIHJlYWRvbmx5IG1vZHVsZURpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCB0byB0aGUgZm9sZGVyIG9yIGZpbGUgdGhhdCBjb250YWlucyB0aGUgbWFpbiBhcHBsaWNhdGlvbiBlbnRyeSBwb2ludCBmaWxlcyBmb3IgdGhlIHByb2plY3QuXG4gICAqXG4gICAqIFRoaXMgYWNjZXB0cyBlaXRoZXIgYSBwYXRoIHRvIGEgZGlyZWN0b3J5IG9yIGZpbGUuXG4gICAqXG4gICAqIElmIGEgZGlyZWN0b3J5IHBhdGggaXMgcHJvdmlkZWQgdGhlbiBpdCB3aWxsIGFzc3VtZSB0aGVyZSBpcyBhIEdvIGVudHJ5IGZpbGUgKGkuZS4gYG1haW4uZ29gKSBhbmRcbiAgICogd2lsbCBjb25zdHJ1Y3QgdGhlIGJ1aWxkIGNvbW1hbmQgdXNpbmcgdGhlIGRpcmVjdG9yeSBwYXRoLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IHByb3ZpZGUgdGhlIGVudHJ5IGFzOlxuICAgKlxuICAgKiAgICAgZW50cnk6ICdteS1sYW1iZGEtYXBwL2NtZC9hcGknXG4gICAqXG4gICAqIFRoZW4gdGhlIGBnbyBidWlsZGAgY29tbWFuZCB3b3VsZCBiZTpcbiAgICpcbiAgICogICAgIGBnbyBidWlsZCAuL2NtZC9hcGlgXG4gICAqXG4gICAqIElmIGEgcGF0aCB0byBhIGZpbGUgaXMgcHJvdmlkZWQgdGhlbiBpdCB3aWxsIHVzZSB0aGUgZmlsZXBhdGggaW4gdGhlIGJ1aWxkIGNvbW1hbmQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgcHJvdmlkZSB0aGUgZW50cnkgYXM6XG4gICAqXG4gICAqICAgICBlbnRyeTogJ215LWxhbWJkYS1hcHAvY21kL2FwaS9tYWluLmdvJ1xuICAgKlxuICAgKiBUaGVuIHRoZSBgZ28gYnVpbGRgIGNvbW1hbmQgd291bGQgYmU6XG4gICAqXG4gICAqICAgICBgZ28gYnVpbGQgLi9jbWQvYXBpL21haW4uZ29gXG4gICAqL1xuICByZWFkb25seSBlbnRyeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcnVudGltZSBvZiB0aGUgbGFtYmRhIGZ1bmN0aW9uXG4gICAqL1xuICByZWFkb25seSBydW50aW1lOiBSdW50aW1lO1xuXG4gIC8qKlxuICAgKiBUaGUgc3lzdGVtIGFyY2hpdGVjdHVyZSBvZiB0aGUgbGFtYmRhIGZ1bmN0aW9uXG4gICAqL1xuICByZWFkb25seSBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZTtcbn1cblxuLyoqXG4gKiBCdW5kbGluZ1xuICovXG5leHBvcnQgY2xhc3MgQnVuZGxpbmcgaW1wbGVtZW50cyBjZGsuQnVuZGxpbmdPcHRpb25zIHtcblxuICBwdWJsaWMgc3RhdGljIGJ1bmRsZShvcHRpb25zOiBCdW5kbGluZ1Byb3BzKTogQXNzZXRDb2RlIHtcbiAgICBjb25zdCBidW5kbGluZyA9IG5ldyBCdW5kbGluZyhvcHRpb25zKTtcblxuICAgIHJldHVybiBDb2RlLmZyb21Bc3NldChwYXRoLmRpcm5hbWUob3B0aW9ucy5tb2R1bGVEaXIpLCB7XG4gICAgICBhc3NldEhhc2hUeXBlOiBvcHRpb25zLmFzc2V0SGFzaFR5cGUgPz8gY2RrLkFzc2V0SGFzaFR5cGUuT1VUUFVULFxuICAgICAgYXNzZXRIYXNoOiBvcHRpb25zLmFzc2V0SGFzaCxcbiAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgIGltYWdlOiBidW5kbGluZy5pbWFnZSxcbiAgICAgICAgY29tbWFuZDogYnVuZGxpbmcuY29tbWFuZCxcbiAgICAgICAgZW52aXJvbm1lbnQ6IGJ1bmRsaW5nLmVudmlyb25tZW50LFxuICAgICAgICBsb2NhbDogYnVuZGxpbmcubG9jYWwsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjbGVhclJ1bnNMb2NhbGx5Q2FjaGUoKTogdm9pZCB7IC8vIGZvciB0ZXN0c1xuICAgIHRoaXMucnVuc0xvY2FsbHkgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBydW5zTG9jYWxseT86IGJvb2xlYW47XG5cbiAgLy8gQ29yZSBidW5kbGluZyBvcHRpb25zXG4gIHB1YmxpYyByZWFkb25seSBpbWFnZTogY2RrLkRvY2tlckltYWdlO1xuICBwdWJsaWMgcmVhZG9ubHkgY29tbWFuZDogc3RyaW5nW107XG4gIHB1YmxpYyByZWFkb25seSBlbnZpcm9ubWVudD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHB1YmxpYyByZWFkb25seSBsb2NhbD86IGNkay5JTG9jYWxCdW5kbGluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IHJlbGF0aXZlRW50cnlQYXRoOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogQnVuZGxpbmdQcm9wcykge1xuICAgIEJ1bmRsaW5nLnJ1bnNMb2NhbGx5ID0gQnVuZGxpbmcucnVuc0xvY2FsbHlcbiAgICAgID8/IGdldEdvQnVpbGRWZXJzaW9uKClcbiAgICAgID8/IGZhbHNlO1xuXG4gICAgY29uc3QgcHJvamVjdFJvb3QgPSBwYXRoLmRpcm5hbWUocHJvcHMubW9kdWxlRGlyKTtcbiAgICB0aGlzLnJlbGF0aXZlRW50cnlQYXRoID0gYC4vJHtwYXRoLnJlbGF0aXZlKHByb2plY3RSb290LCBwYXRoLnJlc29sdmUocHJvcHMuZW50cnkpKX1gO1xuXG4gICAgY29uc3QgY2dvRW5hYmxlZCA9IHByb3BzLmNnb0VuYWJsZWQgPyAnMScgOiAnMCc7XG5cbiAgICBjb25zdCBlbnZpcm9ubWVudCA9IHtcbiAgICAgIENHT19FTkFCTEVEOiBjZ29FbmFibGVkLFxuICAgICAgR08xMTFNT0RVTEU6ICdvbicsXG4gICAgICBHT0FSQ0g6IHByb3BzLmFyY2hpdGVjdHVyZS5kb2NrZXJQbGF0Zm9ybS5zcGxpdCgnLycpWzFdLFxuICAgICAgR09PUzogJ2xpbnV4JyxcbiAgICAgIC4uLnByb3BzLmVudmlyb25tZW50LFxuICAgIH07XG5cbiAgICAvLyBEb2NrZXIgYnVuZGxpbmdcbiAgICBjb25zdCBzaG91bGRCdWlsZEltYWdlID0gcHJvcHMuZm9yY2VkRG9ja2VyQnVuZGxpbmcgfHwgIUJ1bmRsaW5nLnJ1bnNMb2NhbGx5O1xuICAgIHRoaXMuaW1hZ2UgPSBzaG91bGRCdWlsZEltYWdlXG4gICAgICA/IHByb3BzLmRvY2tlckltYWdlID8/IGNkay5Eb2NrZXJJbWFnZS5mcm9tQnVpbGQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uL2xpYicpLCB7XG4gICAgICAgIGJ1aWxkQXJnczoge1xuICAgICAgICAgIC4uLnByb3BzLmJ1aWxkQXJncyA/PyB7fSxcbiAgICAgICAgICBJTUFHRTogUnVudGltZS5HT18xX1guYnVuZGxpbmdJbWFnZS5pbWFnZSwgLy8gYWx3YXlzIHVzZSB0aGUgR09fMV9YIGJ1aWxkIGltYWdlXG4gICAgICAgIH0sXG4gICAgICAgIHBsYXRmb3JtOiBwcm9wcy5hcmNoaXRlY3R1cmUuZG9ja2VyUGxhdGZvcm0sXG4gICAgICB9KVxuICAgICAgOiBjZGsuRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdkdW1teScpOyAvLyBEbyBub3QgYnVpbGQgaWYgd2UgZG9uJ3QgbmVlZCB0b1xuXG4gICAgY29uc3QgYnVuZGxpbmdDb21tYW5kID0gdGhpcy5jcmVhdGVCdW5kbGluZ0NvbW1hbmQoY2RrLkFzc2V0U3RhZ2luZy5CVU5ETElOR19JTlBVVF9ESVIsIGNkay5Bc3NldFN0YWdpbmcuQlVORExJTkdfT1VUUFVUX0RJUik7XG4gICAgdGhpcy5jb21tYW5kID0gWydiYXNoJywgJy1jJywgYnVuZGxpbmdDb21tYW5kXTtcbiAgICB0aGlzLmVudmlyb25tZW50ID0gZW52aXJvbm1lbnQ7XG5cbiAgICAvLyBMb2NhbCBidW5kbGluZ1xuICAgIGlmICghcHJvcHMuZm9yY2VkRG9ja2VyQnVuZGxpbmcpIHsgLy8gb25seSBpZiBEb2NrZXIgaXMgbm90IGZvcmNlZFxuXG4gICAgICBjb25zdCBvc1BsYXRmb3JtID0gb3MucGxhdGZvcm0oKTtcbiAgICAgIGNvbnN0IGNyZWF0ZUxvY2FsQ29tbWFuZCA9IChvdXRwdXREaXI6IHN0cmluZykgPT4gdGhpcy5jcmVhdGVCdW5kbGluZ0NvbW1hbmQocHJvamVjdFJvb3QsIG91dHB1dERpciwgb3NQbGF0Zm9ybSk7XG5cbiAgICAgIHRoaXMubG9jYWwgPSB7XG4gICAgICAgIHRyeUJ1bmRsZShvdXRwdXREaXI6IHN0cmluZykge1xuICAgICAgICAgIGlmIChCdW5kbGluZy5ydW5zTG9jYWxseSA9PSBmYWxzZSkge1xuICAgICAgICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUoJ2dvIGJ1aWxkIGNhbm5vdCBydW4gbG9jYWxseS4gU3dpdGNoaW5nIHRvIERvY2tlciBidW5kbGluZy5cXG4nKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBsb2NhbENvbW1hbmQgPSBjcmVhdGVMb2NhbENvbW1hbmQob3V0cHV0RGlyKTtcbiAgICAgICAgICBleGVjKFxuICAgICAgICAgICAgb3NQbGF0Zm9ybSA9PT0gJ3dpbjMyJyA/ICdjbWQnIDogJ2Jhc2gnLFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICBvc1BsYXRmb3JtID09PSAnd2luMzInID8gJy9jJyA6ICctYycsXG4gICAgICAgICAgICAgIGxvY2FsQ29tbWFuZCxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGVudjogeyAuLi5wcm9jZXNzLmVudiwgLi4uZW52aXJvbm1lbnQgPz8ge30gfSxcbiAgICAgICAgICAgICAgc3RkaW86IFsgLy8gc2hvdyBvdXRwdXRcbiAgICAgICAgICAgICAgICAnaWdub3JlJywgLy8gaWdub3JlIHN0ZGlvXG4gICAgICAgICAgICAgICAgcHJvY2Vzcy5zdGRlcnIsIC8vIHJlZGlyZWN0IHN0ZG91dCB0byBzdGRlcnJcbiAgICAgICAgICAgICAgICAnaW5oZXJpdCcsIC8vIGluaGVyaXQgc3RkZXJyXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGN3ZDogcGF0aC5kaXJuYW1lKHByb3BzLm1vZHVsZURpciksXG4gICAgICAgICAgICAgIHdpbmRvd3NWZXJiYXRpbUFyZ3VtZW50czogb3NQbGF0Zm9ybSA9PT0gJ3dpbjMyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNyZWF0ZUJ1bmRsaW5nQ29tbWFuZChpbnB1dERpcjogc3RyaW5nLCBvdXRwdXREaXI6IHN0cmluZywgb3NQbGF0Zm9ybTogTm9kZUpTLlBsYXRmb3JtID0gJ2xpbnV4Jyk6IHN0cmluZyB7XG4gICAgY29uc3QgcGF0aEpvaW4gPSBvc1BhdGhKb2luKG9zUGxhdGZvcm0pO1xuXG4gICAgY29uc3QgaGFzVmVuZG9yID0gZmluZFVwKCd2ZW5kb3InLCBwYXRoLmRpcm5hbWUodGhpcy5wcm9wcy5lbnRyeSkpO1xuXG4gICAgY29uc3QgZ29CdWlsZENvbW1hbmQ6IHN0cmluZyA9IFtcbiAgICAgICdnbycsICdidWlsZCcsXG4gICAgICBoYXNWZW5kb3IgPyAnLW1vZD12ZW5kb3InOiAnJyxcbiAgICAgICctbycsIGAke3BhdGhKb2luKG91dHB1dERpciwgJ2Jvb3RzdHJhcCcpfWAsXG4gICAgICBgJHt0aGlzLnByb3BzLmdvQnVpbGRGbGFncyA/IHRoaXMucHJvcHMuZ29CdWlsZEZsYWdzLmpvaW4oJyAnKSA6ICcnfWAsXG4gICAgICBgJHt0aGlzLnJlbGF0aXZlRW50cnlQYXRoLnJlcGxhY2UoL1xcXFwvZywgJy8nKX1gLFxuICAgIF0uZmlsdGVyKGMgPT4gISFjKS5qb2luKCcgJyk7XG5cbiAgICByZXR1cm4gY2hhaW4oW1xuICAgICAgLi4udGhpcy5wcm9wcy5jb21tYW5kSG9va3M/LmJlZm9yZUJ1bmRsaW5nKGlucHV0RGlyLCBvdXRwdXREaXIpID8/IFtdLFxuICAgICAgZ29CdWlsZENvbW1hbmQsXG4gICAgICAuLi50aGlzLnByb3BzLmNvbW1hbmRIb29rcz8uYWZ0ZXJCdW5kbGluZyhpbnB1dERpciwgb3V0cHV0RGlyKSA/PyBbXSxcbiAgICBdKTtcbiAgfVxufVxuXG4vKipcbiAqIFBsYXRmb3JtIHNwZWNpZmljIHBhdGggam9pblxuICovXG5mdW5jdGlvbiBvc1BhdGhKb2luKHBsYXRmb3JtOiBOb2RlSlMuUGxhdGZvcm0pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uKC4uLnBhdGhzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgY29uc3Qgam9pbmVkID0gcGF0aC5qb2luKC4uLnBhdGhzKTtcbiAgICAvLyBJZiB3ZSBhcmUgb24gd2luMzIgYnV0IG5lZWQgcG9zaXggc3R5bGUgcGF0aHNcbiAgICBpZiAob3MucGxhdGZvcm0oKSA9PT0gJ3dpbjMyJyAmJiBwbGF0Zm9ybSAhPT0gJ3dpbjMyJykge1xuICAgICAgcmV0dXJuIGpvaW5lZC5yZXBsYWNlKC9cXFxcL2csICcvJyk7XG4gICAgfVxuICAgIHJldHVybiBqb2luZWQ7XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNoYWluKGNvbW1hbmRzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gIHJldHVybiBjb21tYW5kcy5maWx0ZXIoYyA9PiAhIWMpLmpvaW4oJyAmJiAnKTtcbn1cbiJdfQ==
|
package/lib/function.js
CHANGED
|
@@ -14,13 +14,12 @@ const util_1 = require("./util");
|
|
|
14
14
|
*/
|
|
15
15
|
class GoFunction extends lambda.Function {
|
|
16
16
|
constructor(scope, id, props) {
|
|
17
|
-
var _b, _c, _d;
|
|
18
17
|
try {
|
|
19
18
|
jsiiDeprecationWarnings._aws_cdk_aws_lambda_go_alpha_GoFunctionProps(props);
|
|
20
19
|
}
|
|
21
20
|
catch (error) {
|
|
22
21
|
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
23
|
-
Error.captureStackTrace(error,
|
|
22
|
+
Error.captureStackTrace(error, GoFunction);
|
|
24
23
|
}
|
|
25
24
|
throw error;
|
|
26
25
|
}
|
|
@@ -52,13 +51,13 @@ class GoFunction extends lambda.Function {
|
|
|
52
51
|
}
|
|
53
52
|
moduleDir = modFile;
|
|
54
53
|
}
|
|
55
|
-
const runtime =
|
|
56
|
-
const architecture =
|
|
54
|
+
const runtime = props.runtime ?? lambda.Runtime.PROVIDED_AL2;
|
|
55
|
+
const architecture = props.architecture ?? lambda.Architecture.X86_64;
|
|
57
56
|
super(scope, id, {
|
|
58
57
|
...props,
|
|
59
58
|
runtime,
|
|
60
59
|
code: bundling_1.Bundling.bundle({
|
|
61
|
-
...
|
|
60
|
+
...props.bundling ?? {},
|
|
62
61
|
entry,
|
|
63
62
|
runtime,
|
|
64
63
|
architecture,
|
|
@@ -70,5 +69,5 @@ class GoFunction extends lambda.Function {
|
|
|
70
69
|
}
|
|
71
70
|
exports.GoFunction = GoFunction;
|
|
72
71
|
_a = JSII_RTTI_SYMBOL_1;
|
|
73
|
-
GoFunction[_a] = { fqn: "@aws-cdk/aws-lambda-go-alpha.GoFunction", version: "2.
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
GoFunction[_a] = { fqn: "@aws-cdk/aws-lambda-go-alpha.GoFunction", version: "2.28.0-alpha.0" };
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLGlEQUFpRDtBQUVqRCx5Q0FBc0M7QUFFdEMsaUNBQWdDO0FBK0RoQzs7R0FFRztBQUNILE1BQWEsVUFBVyxTQUFRLE1BQU0sQ0FBQyxRQUFRO0lBQzdDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBc0I7Ozs7OzsrQ0FEckQsVUFBVTs7OztRQUVuQixJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzdILE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztTQUNyRTtRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhDLHdCQUF3QjtRQUN4QixJQUFJLFNBQWlCLENBQUM7UUFDdEIsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BELElBQUksZUFBZSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO2dCQUNwRixJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLEtBQUssQ0FBQyxTQUFTLGdCQUFnQixDQUFDLENBQUM7aUJBQ3BFO2FBQ0Y7aUJBQU0sSUFBSSxlQUFlLENBQUMsSUFBSSxJQUFJLGVBQWUsQ0FBQyxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksSUFBSSxRQUFRLEVBQUU7Z0JBQzFGLE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELENBQUMsQ0FBQzthQUN0RTtpQkFBTSxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRTtnQkFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsS0FBSyxDQUFDLFNBQVMsZ0JBQWdCLENBQUMsQ0FBQzthQUNwRTtZQUNELFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1NBQzdCO2FBQU07WUFDTCxNQUFNLE9BQU8sR0FBRyxhQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ1osTUFBTSxJQUFJLEtBQUssQ0FBRSx5REFBeUQsQ0FBQyxDQUFDO2FBQzdFO1lBQ0QsU0FBUyxHQUFHLE9BQU8sQ0FBQztTQUNyQjtRQUVELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDN0QsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQztRQUV0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLEdBQUcsS0FBSztZQUNSLE9BQU87WUFDUCxJQUFJLEVBQUUsbUJBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3BCLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxFQUFFO2dCQUN2QixLQUFLO2dCQUNMLE9BQU87Z0JBQ1AsWUFBWTtnQkFDWixTQUFTO2FBQ1YsQ0FBQztZQUNGLE9BQU8sRUFBRSxXQUFXO1NBQ3JCLENBQUMsQ0FBQztLQUNKOztBQTdDSCxnQ0E4Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBCdW5kbGluZyB9IGZyb20gJy4vYnVuZGxpbmcnO1xuaW1wb3J0IHsgQnVuZGxpbmdPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBmaW5kVXAgfSBmcm9tICcuL3V0aWwnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgR29sYW5nRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHb0Z1bmN0aW9uUHJvcHMgZXh0ZW5kcyBsYW1iZGEuRnVuY3Rpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBmb2xkZXIgb3IgZmlsZSB0aGF0IGNvbnRhaW5zIHRoZSBtYWluIGFwcGxpY2F0aW9uIGVudHJ5IHBvaW50IGZpbGVzIGZvciB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogVGhpcyBhY2NlcHRzIGVpdGhlciBhIHBhdGggdG8gYSBkaXJlY3Rvcnkgb3IgZmlsZS5cbiAgICpcbiAgICogSWYgYSBkaXJlY3RvcnkgcGF0aCBpcyBwcm92aWRlZCB0aGVuIGl0IHdpbGwgYXNzdW1lIHRoZXJlIGlzIGEgR28gZW50cnkgZmlsZSAoaS5lLiBgbWFpbi5nb2ApIGFuZFxuICAgKiB3aWxsIGNvbnN0cnVjdCB0aGUgYnVpbGQgY29tbWFuZCB1c2luZyB0aGUgZGlyZWN0b3J5IHBhdGguXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgcHJvdmlkZSB0aGUgZW50cnkgYXM6XG4gICAqXG4gICAqICAgICBlbnRyeTogJ215LWxhbWJkYS1hcHAvY21kL2FwaSdcbiAgICpcbiAgICogVGhlbiB0aGUgYGdvIGJ1aWxkYCBjb21tYW5kIHdvdWxkIGJlOlxuICAgKlxuICAgKiAgICAgYGdvIGJ1aWxkIC4vY21kL2FwaWBcbiAgICpcbiAgICogSWYgYSBwYXRoIHRvIGEgZmlsZSBpcyBwcm92aWRlZCB0aGVuIGl0IHdpbGwgdXNlIHRoZSBmaWxlcGF0aCBpbiB0aGUgYnVpbGQgY29tbWFuZC5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHlvdSBwcm92aWRlIHRoZSBlbnRyeSBhczpcbiAgICpcbiAgICogICAgIGVudHJ5OiAnbXktbGFtYmRhLWFwcC9jbWQvYXBpL21haW4uZ28nXG4gICAqXG4gICAqIFRoZW4gdGhlIGBnbyBidWlsZGAgY29tbWFuZCB3b3VsZCBiZTpcbiAgICpcbiAgICogICAgIGBnbyBidWlsZCAuL2NtZC9hcGkvbWFpbi5nb2BcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBydW50aW1lIGVudmlyb25tZW50LiBPbmx5IHJ1bnRpbWVzIG9mIHRoZSBHb2xhbmcgZmFtaWx5IGFuZCBwcm92aWRlZCBmYW1pbHkgYXJlIHN1cHBvcnRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgbGFtYmRhLlJ1bnRpbWUuUFJPVklERURfQUwyXG4gICAqL1xuICByZWFkb25seSBydW50aW1lPzogbGFtYmRhLlJ1bnRpbWU7XG5cbiAgLyoqXG4gICAqIERpcmVjdG9yeSBjb250YWluaW5nIHlvdXIgZ28ubW9kIGZpbGVcbiAgICpcbiAgICogVGhpcyB3aWxsIGFjY2VwdCBlaXRoZXIgYSBkaXJlY3RvcnkgcGF0aCBjb250YWluaW5nIGEgYGdvLm1vZGAgZmlsZVxuICAgKiBvciBhIGZpbGVwYXRoIHRvIHlvdXIgYGdvLm1vZGAgZmlsZSAoaS5lLiBgcGF0aC90by9nby5tb2RgKS5cbiAgICpcbiAgICogVGhpcyB3aWxsIGJlIHVzZWQgYXMgdGhlIHNvdXJjZSBvZiB0aGUgdm9sdW1lIG1vdW50ZWQgaW4gdGhlIERvY2tlclxuICAgKiBjb250YWluZXIgYW5kIHdpbGwgYmUgdGhlIGRpcmVjdG9yeSB3aGVyZSBpdCB3aWxsIHJ1biBgZ28gYnVpbGRgIGZyb20uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIHBhdGggaXMgZm91bmQgYnkgd2Fsa2luZyB1cCBwYXJlbnQgZGlyZWN0b3JpZXMgc2VhcmNoaW5nIGZvclxuICAgKiAgYSBgZ28ubW9kYCBmaWxlIGZyb20gdGhlIGxvY2F0aW9uIG9mIGBlbnRyeWBcbiAgICovXG4gIHJlYWRvbmx5IG1vZHVsZURpcj86IHN0cmluZztcblxuICAvKipcbiAgICogQnVuZGxpbmcgb3B0aW9uc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIHVzZSBkZWZhdWx0IGJ1bmRsaW5nIG9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsaW5nPzogQnVuZGxpbmdPcHRpb25zO1xufVxuXG4vKipcbiAqIEEgR29sYW5nIExhbWJkYSBmdW5jdGlvblxuICovXG5leHBvcnQgY2xhc3MgR29GdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBHb0Z1bmN0aW9uUHJvcHMpIHtcbiAgICBpZiAocHJvcHMucnVudGltZSAmJiAocHJvcHMucnVudGltZS5mYW1pbHkgIT09IGxhbWJkYS5SdW50aW1lRmFtaWx5LkdPICYmIHByb3BzLnJ1bnRpbWUuZmFtaWx5ICE9IGxhbWJkYS5SdW50aW1lRmFtaWx5Lk9USEVSKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdPbmx5IGBnb2AgYW5kIGBwcm92aWRlZGAgcnVudGltZXMgYXJlIHN1cHBvcnRlZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBlbnRyeSA9IHBhdGgucmVzb2x2ZShwcm9wcy5lbnRyeSk7XG5cbiAgICAvLyBGaW5kIHRoZSBwcm9qZWN0IHJvb3RcbiAgICBsZXQgbW9kdWxlRGlyOiBzdHJpbmc7XG4gICAgaWYgKHByb3BzLm1vZHVsZURpcikge1xuICAgICAgY29uc3QgcGFyc2VkTW9kdWxlRGlyID0gcGF0aC5wYXJzZShwcm9wcy5tb2R1bGVEaXIpO1xuICAgICAgaWYgKHBhcnNlZE1vZHVsZURpci5iYXNlICYmIHBhcnNlZE1vZHVsZURpci5leHQgJiYgcGFyc2VkTW9kdWxlRGlyLmJhc2UgPT09ICdnby5tb2QnKSB7XG4gICAgICAgIGlmICghZnMuZXhpc3RzU3luYyhwcm9wcy5tb2R1bGVEaXIpKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBnby5tb2QgZmlsZSBhdCAke3Byb3BzLm1vZHVsZURpcn0gZG9lc24ndCBleGlzdGApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHBhcnNlZE1vZHVsZURpci5iYXNlICYmIHBhcnNlZE1vZHVsZURpci5leHQgJiYgcGFyc2VkTW9kdWxlRGlyLmJhc2UgIT0gJ2dvLm1vZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdtb2R1bGVEaXIgaXMgc3BlY2lmeWluZyBhIGZpbGUgdGhhdCBpcyBub3QgZ28ubW9kJyk7XG4gICAgICB9IGVsc2UgaWYgKCFmcy5leGlzdHNTeW5jKHBhdGguam9pbihwcm9wcy5tb2R1bGVEaXIsICdnby5tb2QnKSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBnby5tb2QgZmlsZSBhdCAke3Byb3BzLm1vZHVsZURpcn0gZG9lc24ndCBleGlzdGApO1xuICAgICAgfVxuICAgICAgbW9kdWxlRGlyID0gcHJvcHMubW9kdWxlRGlyO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBtb2RGaWxlID0gZmluZFVwKCdnby5tb2QnLCBlbnRyeSk7XG4gICAgICBpZiAoIW1vZEZpbGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yICgnQ2Fubm90IGZpbmQgZ28ubW9kLiBQbGVhc2Ugc3BlY2lmeSBpdCB3aXRoIGBtb2R1bGVEaXJgLicpO1xuICAgICAgfVxuICAgICAgbW9kdWxlRGlyID0gbW9kRmlsZTtcbiAgICB9XG5cbiAgICBjb25zdCBydW50aW1lID0gcHJvcHMucnVudGltZSA/PyBsYW1iZGEuUnVudGltZS5QUk9WSURFRF9BTDI7XG4gICAgY29uc3QgYXJjaGl0ZWN0dXJlID0gcHJvcHMuYXJjaGl0ZWN0dXJlID8/IGxhbWJkYS5BcmNoaXRlY3R1cmUuWDg2XzY0O1xuXG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIHJ1bnRpbWUsXG4gICAgICBjb2RlOiBCdW5kbGluZy5idW5kbGUoe1xuICAgICAgICAuLi5wcm9wcy5idW5kbGluZyA/PyB7fSxcbiAgICAgICAgZW50cnksXG4gICAgICAgIHJ1bnRpbWUsXG4gICAgICAgIGFyY2hpdGVjdHVyZSxcbiAgICAgICAgbW9kdWxlRGlyLFxuICAgICAgfSksXG4gICAgICBoYW5kbGVyOiAnYm9vdHN0cmFwJywgLy8gc2V0dGluZyBuYW1lIHRvIGJvb3RzdHJhcCBzbyB0aGF0IHRoZSAncHJvdmlkZWQnIHJ1bnRpbWUgY2FuIGFsc28gYmUgdXNlZFxuICAgIH0pO1xuICB9XG59XG5cbiJdfQ==
|
package/lib/util.js
CHANGED
|
@@ -28,14 +28,13 @@ exports.getGoBuildVersion = getGoBuildVersion;
|
|
|
28
28
|
* Spawn sync with error handling
|
|
29
29
|
*/
|
|
30
30
|
function exec(cmd, args, options) {
|
|
31
|
-
var _a, _b;
|
|
32
31
|
const proc = child_process_1.spawnSync(cmd, args, options);
|
|
33
32
|
if (proc.error) {
|
|
34
33
|
throw proc.error;
|
|
35
34
|
}
|
|
36
35
|
if (proc.status !== 0) {
|
|
37
36
|
if (proc.stdout || proc.stderr) {
|
|
38
|
-
throw new Error(`[Status ${proc.status}] stdout: ${
|
|
37
|
+
throw new Error(`[Status ${proc.status}] stdout: ${proc.stdout?.toString().trim()}\n\n\nstderr: ${proc.stderr?.toString().trim()}`);
|
|
39
38
|
}
|
|
40
39
|
throw new Error(`${cmd} exited with status ${proc.status}`);
|
|
41
40
|
}
|
|
@@ -55,4 +54,4 @@ function findUp(name, directory = process.cwd()) {
|
|
|
55
54
|
return findUp(name, path.dirname(absoluteDirectory));
|
|
56
55
|
}
|
|
57
56
|
exports.findUp = findUp;
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBQTREO0FBQzVELHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFFN0IsTUFBTSxnQkFBZ0IsR0FBRyxxREFBcUQsQ0FBQztBQUUvRSxTQUFnQixpQkFBaUI7SUFDL0IsSUFBSTtRQUNGLE1BQU0sRUFBRSxHQUFHLHlCQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN4QyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUU7WUFDL0IsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDdEMsT0FBTyxTQUFTLENBQUM7U0FDbEI7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osT0FBTyxTQUFTLENBQUM7S0FDbEI7QUFDSCxDQUFDO0FBZkQsOENBZUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLElBQUksQ0FBQyxHQUFXLEVBQUUsSUFBYyxFQUFFLE9BQTBCO0lBQzFFLE1BQU0sSUFBSSxHQUFHLHlCQUFTLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUUzQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDZCxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUM7S0FDbEI7SUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3JCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxJQUFJLENBQUMsTUFBTSxhQUFhLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsSUFBSSxFQUFFLGlCQUFpQixJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNySTtRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxHQUFHLHVCQUF1QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztLQUM3RDtJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQWZELG9CQWVDO0FBRUQsU0FBZ0IsTUFBTSxDQUFDLElBQVksRUFBRSxZQUFvQixPQUFPLENBQUMsR0FBRyxFQUFFO0lBQ3BFLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUVsRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4QyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdkIsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDL0MsSUFBSSxpQkFBaUIsSUFBSSxJQUFJLEVBQUU7UUFDN0IsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQWRELHdCQWNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3Bhd25TeW5jLCBTcGF3blN5bmNPcHRpb25zIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5jb25zdCBHT19WRVJTSU9OX1JFR0VYID0gL2dvKFswLTldezEsNH0pKz8oXFwuKFswLTldezEsNH0pKSs/KFxcLihbMC05XXsxLDR9KSk/LztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdvQnVpbGRWZXJzaW9uKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICB0cnkge1xuICAgIGNvbnN0IGdvID0gc3Bhd25TeW5jKCdnbycsIFsndmVyc2lvbiddKTtcbiAgICBpZiAoZ28uc3RhdHVzICE9PSAwIHx8IGdvLmVycm9yKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCBnb1ZlcnNpb24gPSBnby5zdGRvdXQudG9TdHJpbmcoKS5zcGxpdCgnICcpWzJdLm1hdGNoKEdPX1ZFUlNJT05fUkVHRVgpO1xuICAgIGlmICghZ29WZXJzaW9uIHx8IGdvVmVyc2lvblszXSA8PSAnMTEnKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBTcGF3biBzeW5jIHdpdGggZXJyb3IgaGFuZGxpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4ZWMoY21kOiBzdHJpbmcsIGFyZ3M6IHN0cmluZ1tdLCBvcHRpb25zPzogU3Bhd25TeW5jT3B0aW9ucykge1xuICBjb25zdCBwcm9jID0gc3Bhd25TeW5jKGNtZCwgYXJncywgb3B0aW9ucyk7XG5cbiAgaWYgKHByb2MuZXJyb3IpIHtcbiAgICB0aHJvdyBwcm9jLmVycm9yO1xuICB9XG5cbiAgaWYgKHByb2Muc3RhdHVzICE9PSAwKSB7XG4gICAgaWYgKHByb2Muc3Rkb3V0IHx8IHByb2Muc3RkZXJyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFtTdGF0dXMgJHtwcm9jLnN0YXR1c31dIHN0ZG91dDogJHtwcm9jLnN0ZG91dD8udG9TdHJpbmcoKS50cmltKCl9XFxuXFxuXFxuc3RkZXJyOiAke3Byb2Muc3RkZXJyPy50b1N0cmluZygpLnRyaW0oKX1gKTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke2NtZH0gZXhpdGVkIHdpdGggc3RhdHVzICR7cHJvYy5zdGF0dXN9YCk7XG4gIH1cblxuICByZXR1cm4gcHJvYztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRVcChuYW1lOiBzdHJpbmcsIGRpcmVjdG9yeTogc3RyaW5nID0gcHJvY2Vzcy5jd2QoKSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGFic29sdXRlRGlyZWN0b3J5ID0gcGF0aC5yZXNvbHZlKGRpcmVjdG9yeSk7XG5cbiAgY29uc3QgZmlsZSA9IHBhdGguam9pbihkaXJlY3RvcnksIG5hbWUpO1xuICBpZiAoZnMuZXhpc3RzU3luYyhmaWxlKSkge1xuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgY29uc3QgeyByb290IH0gPSBwYXRoLnBhcnNlKGFic29sdXRlRGlyZWN0b3J5KTtcbiAgaWYgKGFic29sdXRlRGlyZWN0b3J5ID09IHJvb3QpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIGZpbmRVcChuYW1lLCBwYXRoLmRpcm5hbWUoYWJzb2x1dGVEaXJlY3RvcnkpKTtcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-cdk/aws-lambda-go-alpha",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.28.0-alpha.0",
|
|
4
4
|
"description": "The CDK Construct Library for AWS Lambda in Golang",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"packageId": "Amazon.CDK.AWS.Lambda.Go.Alpha",
|
|
20
20
|
"signAssembly": true,
|
|
21
21
|
"assemblyOriginatorKeyFile": "../../key.snk",
|
|
22
|
-
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/
|
|
22
|
+
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png"
|
|
23
23
|
},
|
|
24
24
|
"python": {
|
|
25
25
|
"distName": "aws-cdk.aws-lambda-go-alpha",
|
|
@@ -77,17 +77,17 @@
|
|
|
77
77
|
},
|
|
78
78
|
"license": "Apache-2.0",
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
81
|
-
"@aws-cdk/integ-runner": "2.
|
|
82
|
-
"@aws-cdk/pkglint": "2.
|
|
83
|
-
"@types/jest": "^27.5.
|
|
84
|
-
"aws-cdk-lib": "2.
|
|
80
|
+
"@aws-cdk/cdk-build-tools": "2.28.0",
|
|
81
|
+
"@aws-cdk/integ-runner": "2.28.0",
|
|
82
|
+
"@aws-cdk/pkglint": "2.28.0",
|
|
83
|
+
"@types/jest": "^27.5.2",
|
|
84
|
+
"aws-cdk-lib": "2.28.0",
|
|
85
85
|
"constructs": "^10.0.0"
|
|
86
86
|
},
|
|
87
87
|
"dependencies": {},
|
|
88
88
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
89
89
|
"peerDependencies": {
|
|
90
|
-
"aws-cdk-lib": "^2.
|
|
90
|
+
"aws-cdk-lib": "^2.28.0",
|
|
91
91
|
"constructs": "^10.0.0"
|
|
92
92
|
},
|
|
93
93
|
"engines": {
|