cdk-ecr-deployment 3.0.66 → 3.0.68
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 +56 -20
- package/.jsii.tabl.json +1 -1
- package/API.md +4 -0
- package/lambda/go.mod +6 -14
- package/lambda/go.sum +2295 -138
- package/lib/index.d.ts +16 -4
- package/lib/index.js +6 -6
- package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/dns/promises.d.ts +25 -23
- package/node_modules/@types/cacheable-request/node_modules/@types/node/dns.d.ts +23 -23
- package/node_modules/@types/cacheable-request/node_modules/@types/node/events.d.ts +39 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/globals.d.ts +1 -0
- package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/cacheable-request/node_modules/@types/node/worker_threads.d.ts +3 -0
- package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/keyv/node_modules/@types/node/dns/promises.d.ts +25 -23
- package/node_modules/@types/keyv/node_modules/@types/node/dns.d.ts +23 -23
- package/node_modules/@types/keyv/node_modules/@types/node/events.d.ts +39 -1
- package/node_modules/@types/keyv/node_modules/@types/node/globals.d.ts +1 -0
- package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/keyv/node_modules/@types/node/worker_threads.d.ts +3 -0
- package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/responselike/node_modules/@types/node/dns/promises.d.ts +25 -23
- package/node_modules/@types/responselike/node_modules/@types/node/dns.d.ts +23 -23
- package/node_modules/@types/responselike/node_modules/@types/node/events.d.ts +39 -1
- package/node_modules/@types/responselike/node_modules/@types/node/globals.d.ts +1 -0
- package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/responselike/node_modules/@types/node/worker_threads.d.ts +3 -0
- package/package.json +6 -6
package/.jsii
CHANGED
|
@@ -3840,7 +3840,7 @@
|
|
|
3840
3840
|
},
|
|
3841
3841
|
"locationInModule": {
|
|
3842
3842
|
"filename": "src/index.ts",
|
|
3843
|
-
"line":
|
|
3843
|
+
"line": 133
|
|
3844
3844
|
},
|
|
3845
3845
|
"parameters": [
|
|
3846
3846
|
{
|
|
@@ -3868,7 +3868,7 @@
|
|
|
3868
3868
|
"kind": "class",
|
|
3869
3869
|
"locationInModule": {
|
|
3870
3870
|
"filename": "src/index.ts",
|
|
3871
|
-
"line":
|
|
3871
|
+
"line": 132
|
|
3872
3872
|
},
|
|
3873
3873
|
"name": "DockerImageName",
|
|
3874
3874
|
"properties": [
|
|
@@ -3881,7 +3881,7 @@
|
|
|
3881
3881
|
"immutable": true,
|
|
3882
3882
|
"locationInModule": {
|
|
3883
3883
|
"filename": "src/index.ts",
|
|
3884
|
-
"line":
|
|
3884
|
+
"line": 134
|
|
3885
3885
|
},
|
|
3886
3886
|
"name": "uri",
|
|
3887
3887
|
"overrides": "cdk-ecr-deployment.IImageName",
|
|
@@ -3897,7 +3897,7 @@
|
|
|
3897
3897
|
},
|
|
3898
3898
|
"locationInModule": {
|
|
3899
3899
|
"filename": "src/index.ts",
|
|
3900
|
-
"line":
|
|
3900
|
+
"line": 133
|
|
3901
3901
|
},
|
|
3902
3902
|
"name": "creds",
|
|
3903
3903
|
"optional": true,
|
|
@@ -3922,7 +3922,7 @@
|
|
|
3922
3922
|
},
|
|
3923
3923
|
"locationInModule": {
|
|
3924
3924
|
"filename": "src/index.ts",
|
|
3925
|
-
"line":
|
|
3925
|
+
"line": 151
|
|
3926
3926
|
},
|
|
3927
3927
|
"parameters": [
|
|
3928
3928
|
{
|
|
@@ -3948,7 +3948,7 @@
|
|
|
3948
3948
|
"kind": "class",
|
|
3949
3949
|
"locationInModule": {
|
|
3950
3950
|
"filename": "src/index.ts",
|
|
3951
|
-
"line":
|
|
3951
|
+
"line": 148
|
|
3952
3952
|
},
|
|
3953
3953
|
"methods": [
|
|
3954
3954
|
{
|
|
@@ -3957,7 +3957,7 @@
|
|
|
3957
3957
|
},
|
|
3958
3958
|
"locationInModule": {
|
|
3959
3959
|
"filename": "src/index.ts",
|
|
3960
|
-
"line":
|
|
3960
|
+
"line": 213
|
|
3961
3961
|
},
|
|
3962
3962
|
"name": "addToPrincipalPolicy",
|
|
3963
3963
|
"parameters": [
|
|
@@ -4027,7 +4027,7 @@
|
|
|
4027
4027
|
{
|
|
4028
4028
|
"abstract": true,
|
|
4029
4029
|
"docs": {
|
|
4030
|
-
"default": "public.ecr.aws/sam/build-go1.x:latest",
|
|
4030
|
+
"default": "- public.ecr.aws/sam/build-go1.x:latest",
|
|
4031
4031
|
"remarks": "Might be needed for local build if all images need to come from own registry.\n\nNote that image should use yum as a package manager and have golang available.",
|
|
4032
4032
|
"stability": "stable",
|
|
4033
4033
|
"summary": "Image to use to build Golang lambda for custom resource, if download fails or is not wanted."
|
|
@@ -4052,7 +4052,7 @@
|
|
|
4052
4052
|
"immutable": true,
|
|
4053
4053
|
"locationInModule": {
|
|
4054
4054
|
"filename": "src/index.ts",
|
|
4055
|
-
"line":
|
|
4055
|
+
"line": 95
|
|
4056
4056
|
},
|
|
4057
4057
|
"name": "environment",
|
|
4058
4058
|
"optional": true,
|
|
@@ -4068,7 +4068,43 @@
|
|
|
4068
4068
|
{
|
|
4069
4069
|
"abstract": true,
|
|
4070
4070
|
"docs": {
|
|
4071
|
-
"default": "
|
|
4071
|
+
"default": "- bootstrap",
|
|
4072
|
+
"stability": "stable",
|
|
4073
|
+
"summary": "The name of the lambda handler."
|
|
4074
|
+
},
|
|
4075
|
+
"immutable": true,
|
|
4076
|
+
"locationInModule": {
|
|
4077
|
+
"filename": "src/index.ts",
|
|
4078
|
+
"line": 90
|
|
4079
|
+
},
|
|
4080
|
+
"name": "lambdaHandler",
|
|
4081
|
+
"optional": true,
|
|
4082
|
+
"type": {
|
|
4083
|
+
"primitive": "string"
|
|
4084
|
+
}
|
|
4085
|
+
},
|
|
4086
|
+
{
|
|
4087
|
+
"abstract": true,
|
|
4088
|
+
"docs": {
|
|
4089
|
+
"default": "- lambda.Runtime.PROVIDED_AL2023",
|
|
4090
|
+
"stability": "stable",
|
|
4091
|
+
"summary": "The lambda function runtime environment."
|
|
4092
|
+
},
|
|
4093
|
+
"immutable": true,
|
|
4094
|
+
"locationInModule": {
|
|
4095
|
+
"filename": "src/index.ts",
|
|
4096
|
+
"line": 83
|
|
4097
|
+
},
|
|
4098
|
+
"name": "lambdaRuntime",
|
|
4099
|
+
"optional": true,
|
|
4100
|
+
"type": {
|
|
4101
|
+
"fqn": "aws-cdk-lib.aws_lambda.Runtime"
|
|
4102
|
+
}
|
|
4103
|
+
},
|
|
4104
|
+
{
|
|
4105
|
+
"abstract": true,
|
|
4106
|
+
"docs": {
|
|
4107
|
+
"default": "- 512",
|
|
4072
4108
|
"remarks": "If you are deploying large files, you will need to increase this number\naccordingly.",
|
|
4073
4109
|
"stability": "stable",
|
|
4074
4110
|
"summary": "The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket."
|
|
@@ -4129,7 +4165,7 @@
|
|
|
4129
4165
|
{
|
|
4130
4166
|
"abstract": true,
|
|
4131
4167
|
"docs": {
|
|
4132
|
-
"default": "None",
|
|
4168
|
+
"default": "- None",
|
|
4133
4169
|
"stability": "stable",
|
|
4134
4170
|
"summary": "The VPC network to place the deployment lambda handler in."
|
|
4135
4171
|
},
|
|
@@ -4175,7 +4211,7 @@
|
|
|
4175
4211
|
"kind": "interface",
|
|
4176
4212
|
"locationInModule": {
|
|
4177
4213
|
"filename": "src/index.ts",
|
|
4178
|
-
"line":
|
|
4214
|
+
"line": 98
|
|
4179
4215
|
},
|
|
4180
4216
|
"name": "IImageName",
|
|
4181
4217
|
"properties": [
|
|
@@ -4189,7 +4225,7 @@
|
|
|
4189
4225
|
"immutable": true,
|
|
4190
4226
|
"locationInModule": {
|
|
4191
4227
|
"filename": "src/index.ts",
|
|
4192
|
-
"line":
|
|
4228
|
+
"line": 104
|
|
4193
4229
|
},
|
|
4194
4230
|
"name": "uri",
|
|
4195
4231
|
"type": {
|
|
@@ -4205,7 +4241,7 @@
|
|
|
4205
4241
|
},
|
|
4206
4242
|
"locationInModule": {
|
|
4207
4243
|
"filename": "src/index.ts",
|
|
4208
|
-
"line":
|
|
4244
|
+
"line": 109
|
|
4209
4245
|
},
|
|
4210
4246
|
"name": "creds",
|
|
4211
4247
|
"optional": true,
|
|
@@ -4228,7 +4264,7 @@
|
|
|
4228
4264
|
},
|
|
4229
4265
|
"locationInModule": {
|
|
4230
4266
|
"filename": "src/index.ts",
|
|
4231
|
-
"line":
|
|
4267
|
+
"line": 139
|
|
4232
4268
|
},
|
|
4233
4269
|
"parameters": [
|
|
4234
4270
|
{
|
|
@@ -4263,7 +4299,7 @@
|
|
|
4263
4299
|
"kind": "class",
|
|
4264
4300
|
"locationInModule": {
|
|
4265
4301
|
"filename": "src/index.ts",
|
|
4266
|
-
"line":
|
|
4302
|
+
"line": 137
|
|
4267
4303
|
},
|
|
4268
4304
|
"name": "S3ArchiveName",
|
|
4269
4305
|
"properties": [
|
|
@@ -4276,7 +4312,7 @@
|
|
|
4276
4312
|
"immutable": true,
|
|
4277
4313
|
"locationInModule": {
|
|
4278
4314
|
"filename": "src/index.ts",
|
|
4279
|
-
"line":
|
|
4315
|
+
"line": 145
|
|
4280
4316
|
},
|
|
4281
4317
|
"name": "uri",
|
|
4282
4318
|
"overrides": "cdk-ecr-deployment.IImageName",
|
|
@@ -4292,7 +4328,7 @@
|
|
|
4292
4328
|
},
|
|
4293
4329
|
"locationInModule": {
|
|
4294
4330
|
"filename": "src/index.ts",
|
|
4295
|
-
"line":
|
|
4331
|
+
"line": 139
|
|
4296
4332
|
},
|
|
4297
4333
|
"name": "creds",
|
|
4298
4334
|
"optional": true,
|
|
@@ -4305,6 +4341,6 @@
|
|
|
4305
4341
|
"symbolId": "src/index:S3ArchiveName"
|
|
4306
4342
|
}
|
|
4307
4343
|
},
|
|
4308
|
-
"version": "3.0.
|
|
4309
|
-
"fingerprint": "
|
|
4344
|
+
"version": "3.0.68",
|
|
4345
|
+
"fingerprint": "cIiRzouasa/VXo+X4O78eybX3M2Rjk8Y94d31KM9v60="
|
|
4310
4346
|
}
|
package/.jsii.tabl.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"2","toolVersion":"5.4.21","snippets":{"33850328020507963bc7787401a169bb06e49f6132425a6d1529815c1554c645":{"translations":{"python":{"source":"from aws_cdk.aws_ecr_assets import DockerImageAsset\n\n\nimage = DockerImageAsset(self, \"CDKDockerImage\",\n directory=path.join(__dirname, \"docker\")\n)\n\n# Copy from cdk docker image asset to another ECR.\necrdeploy.ECRDeployment(self, \"DeployDockerImage1\",\n src=ecrdeploy.DockerImageName(image.image_uri),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\")\n)\n\n# Copy from docker registry to ECR.\necrdeploy.ECRDeployment(self, \"DeployDockerImage2\",\n src=ecrdeploy.DockerImageName(\"nginx:latest\"),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\")\n)\n\n# Copy from private docker registry to ECR.\n# The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\necrdeploy.ECRDeployment(self, \"DeployDockerImage3\",\n src=ecrdeploy.DockerImageName(\"javacs3/nginx:latest\", \"username:password\"),\n # src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n # src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\")\n).add_to_principal_policy(iam.PolicyStatement(\n effect=iam.Effect.ALLOW,\n actions=[\"secretsmanager:GetSecretValue\"\n ],\n resources=[\"*\"]\n))","version":"2"},"csharp":{"source":"using Amazon.CDK.AWS.Ecr.Assets;\n\n\nvar image = new DockerImageAsset(this, \"CDKDockerImage\", new DockerImageAssetProps {\n Directory = Join(__dirname, \"docker\")\n});\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\nnew ECRDeployment(this, \"DeployDockerImage1\", new ECRDeploymentProps {\n Src = new DockerImageName(image.ImageUri),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\")\n});\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\nnew ECRDeployment(this, \"DeployDockerImage2\", new ECRDeploymentProps {\n Src = new DockerImageName(\"nginx:latest\"),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\")\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ECRDeployment(this, \"DeployDockerImage3\", new ECRDeploymentProps {\n Src = new DockerImageName(\"javacs3/nginx:latest\", \"username:password\"),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\")\n}).AddToPrincipalPolicy(new PolicyStatement(new PolicyStatementProps {\n Effect = Effect.ALLOW,\n Actions = new [] { \"secretsmanager:GetSecretValue\" },\n Resources = new [] { \"*\" }\n}));","version":"1"},"java":{"source":"import software.amazon.awscdk.services.ecr.assets.DockerImageAsset;\n\n\nDockerImageAsset image = DockerImageAsset.Builder.create(this, \"CDKDockerImage\")\n .directory(join(__dirname, \"docker\"))\n .build();\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\nECRDeployment.Builder.create(this, \"DeployDockerImage1\")\n .src(new DockerImageName(image.getImageUri()))\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\", Aws.ACCOUNT_ID)))\n .build();\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\nECRDeployment.Builder.create(this, \"DeployDockerImage2\")\n .src(new DockerImageName(\"nginx:latest\"))\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\", Aws.ACCOUNT_ID)))\n .build();\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nECRDeployment.Builder.create(this, \"DeployDockerImage3\")\n .src(new DockerImageName(\"javacs3/nginx:latest\", \"username:password\"))\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\", Aws.ACCOUNT_ID)))\n .build().addToPrincipalPolicy(PolicyStatement.Builder.create()\n .effect(Effect.ALLOW)\n .actions(List.of(\"secretsmanager:GetSecretValue\"))\n .resources(List.of(\"*\"))\n .build());","version":"1"},"go":{"source":"import \"github.com/aws/aws-cdk-go/awscdk\"\n\n\nimage := awscdk.NewDockerImageAsset(this, jsii.String(\"CDKDockerImage\"), &DockerImageAssetProps{\n\tDirectory: path.join(__dirname, jsii.String(\"docker\")),\n})\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage1\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(image.ImageUri),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\", cdk.Aws_ACCOUNT_ID())),\n})\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage2\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(jsii.String(\"nginx:latest\")),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\", cdk.Aws_ACCOUNT_ID())),\n})\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage3\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(jsii.String(\"javacs3/nginx:latest\"), jsii.String(\"username:password\")),\n\t// src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n\t// src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\", cdk.Aws_ACCOUNT_ID())),\n}).AddToPrincipalPolicy(awscdk.Aws_iam.NewPolicyStatement(&PolicyStatementProps{\n\tEffect: awscdk.*Aws_iam.Effect_ALLOW,\n\tActions: []*string{\n\t\tjsii.String(\"secretsmanager:GetSecretValue\"),\n\t},\n\tResources: []*string{\n\t\tjsii.String(\"*\"),\n\t},\n}))","version":"1"},"$":{"source":"import { DockerImageAsset } from 'aws-cdk-lib/aws-ecr-assets';\n\nconst image = new DockerImageAsset(this, 'CDKDockerImage', {\n directory: path.join(__dirname, 'docker'),\n});\n\n// Copy from cdk docker image asset to another ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage1', {\n src: new ecrdeploy.DockerImageName(image.imageUri),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest`),\n});\n\n// Copy from docker registry to ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage2', {\n src: new ecrdeploy.DockerImageName('nginx:latest'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest`),\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage3', {\n src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'username:password'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest`),\n}).addToPrincipalPolicy(new iam.PolicyStatement({\n effect: iam.Effect.ALLOW,\n actions: [\n 'secretsmanager:GetSecretValue',\n ],\n resources: ['*'],\n}));","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-ecr-deployment"},"field":{"field":"markdown","line":33}},"didCompile":true,"fqnsReferenced":["aws-cdk-lib.aws_ecr_assets.DockerImageAsset","aws-cdk-lib.aws_ecr_assets.DockerImageAsset#imageUri","aws-cdk-lib.aws_ecr_assets.DockerImageAssetProps","aws-cdk-lib.aws_iam.Effect","aws-cdk-lib.aws_iam.Effect#ALLOW","aws-cdk-lib.aws_iam.PolicyStatement","aws-cdk-lib.aws_iam.PolicyStatementProps","cdk-ecr-deployment.DockerImageName","cdk-ecr-deployment.ECRDeployment","cdk-ecr-deployment.ECRDeployment#addToPrincipalPolicy","cdk-ecr-deployment.ECRDeploymentProps","cdk-ecr-deployment.IImageName","constructs.Construct"],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\nimport { DockerImageAsset } from 'aws-cdk-lib/aws-ecr-assets';\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport * as path from 'node:path';\nimport { Construct } from 'constructs';\n import * as ecrdeploy from 'cdk-ecr-deployment';\nimport {\n Stack,\n aws_iam as iam,\n} from 'aws-cdk-lib';\nimport * as cdk from 'aws-cdk-lib';\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\n\n\nconst image = new DockerImageAsset(this, 'CDKDockerImage', {\n directory: path.join(__dirname, 'docker'),\n});\n\n// Copy from cdk docker image asset to another ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage1', {\n src: new ecrdeploy.DockerImageName(image.imageUri),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest`),\n});\n\n// Copy from docker registry to ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage2', {\n src: new ecrdeploy.DockerImageName('nginx:latest'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest`),\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage3', {\n src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'username:password'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest`),\n}).addToPrincipalPolicy(new iam.PolicyStatement({\n effect: iam.Effect.ALLOW,\n actions: [\n 'secretsmanager:GetSecretValue',\n ],\n resources: ['*'],\n}));\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}","syntaxKindCounter":{"11":11,"16":3,"18":3,"80":51,"110":4,"209":2,"210":5,"211":21,"213":2,"214":11,"228":3,"239":3,"243":1,"244":3,"260":1,"261":1,"272":1,"273":1,"275":1,"276":1,"303":10,"312":1},"fqnsFingerprint":"9d435b1b2c76010f8a75490e073b59c4d776eb93ca570ed78a292aecd169403d"}}}
|
|
1
|
+
{"version":"2","toolVersion":"5.4.22","snippets":{"33850328020507963bc7787401a169bb06e49f6132425a6d1529815c1554c645":{"translations":{"python":{"source":"from aws_cdk.aws_ecr_assets import DockerImageAsset\n\n\nimage = DockerImageAsset(self, \"CDKDockerImage\",\n directory=path.join(__dirname, \"docker\")\n)\n\n# Copy from cdk docker image asset to another ECR.\necrdeploy.ECRDeployment(self, \"DeployDockerImage1\",\n src=ecrdeploy.DockerImageName(image.image_uri),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\")\n)\n\n# Copy from docker registry to ECR.\necrdeploy.ECRDeployment(self, \"DeployDockerImage2\",\n src=ecrdeploy.DockerImageName(\"nginx:latest\"),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\")\n)\n\n# Copy from private docker registry to ECR.\n# The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\necrdeploy.ECRDeployment(self, \"DeployDockerImage3\",\n src=ecrdeploy.DockerImageName(\"javacs3/nginx:latest\", \"username:password\"),\n # src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n # src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest=ecrdeploy.DockerImageName(f\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\")\n).add_to_principal_policy(iam.PolicyStatement(\n effect=iam.Effect.ALLOW,\n actions=[\"secretsmanager:GetSecretValue\"\n ],\n resources=[\"*\"]\n))","version":"2"},"csharp":{"source":"using Amazon.CDK.AWS.Ecr.Assets;\n\n\nvar image = new DockerImageAsset(this, \"CDKDockerImage\", new DockerImageAssetProps {\n Directory = Join(__dirname, \"docker\")\n});\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\nnew ECRDeployment(this, \"DeployDockerImage1\", new ECRDeploymentProps {\n Src = new DockerImageName(image.ImageUri),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\")\n});\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\nnew ECRDeployment(this, \"DeployDockerImage2\", new ECRDeploymentProps {\n Src = new DockerImageName(\"nginx:latest\"),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\")\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ECRDeployment(this, \"DeployDockerImage3\", new ECRDeploymentProps {\n Src = new DockerImageName(\"javacs3/nginx:latest\", \"username:password\"),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n Dest = new DockerImageName($\"{cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\")\n}).AddToPrincipalPolicy(new PolicyStatement(new PolicyStatementProps {\n Effect = Effect.ALLOW,\n Actions = new [] { \"secretsmanager:GetSecretValue\" },\n Resources = new [] { \"*\" }\n}));","version":"1"},"java":{"source":"import software.amazon.awscdk.services.ecr.assets.DockerImageAsset;\n\n\nDockerImageAsset image = DockerImageAsset.Builder.create(this, \"CDKDockerImage\")\n .directory(join(__dirname, \"docker\"))\n .build();\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\nECRDeployment.Builder.create(this, \"DeployDockerImage1\")\n .src(new DockerImageName(image.getImageUri()))\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\", Aws.ACCOUNT_ID)))\n .build();\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\nECRDeployment.Builder.create(this, \"DeployDockerImage2\")\n .src(new DockerImageName(\"nginx:latest\"))\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\", Aws.ACCOUNT_ID)))\n .build();\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nECRDeployment.Builder.create(this, \"DeployDockerImage3\")\n .src(new DockerImageName(\"javacs3/nginx:latest\", \"username:password\"))\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n .dest(new DockerImageName(String.format(\"%s.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\", Aws.ACCOUNT_ID)))\n .build().addToPrincipalPolicy(PolicyStatement.Builder.create()\n .effect(Effect.ALLOW)\n .actions(List.of(\"secretsmanager:GetSecretValue\"))\n .resources(List.of(\"*\"))\n .build());","version":"1"},"go":{"source":"import \"github.com/aws/aws-cdk-go/awscdk\"\n\n\nimage := awscdk.NewDockerImageAsset(this, jsii.String(\"CDKDockerImage\"), &DockerImageAssetProps{\n\tDirectory: path.join(__dirname, jsii.String(\"docker\")),\n})\n\n// Copy from cdk docker image asset to another ECR.\n// Copy from cdk docker image asset to another ECR.\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage1\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(image.ImageUri),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest\", cdk.Aws_ACCOUNT_ID())),\n})\n\n// Copy from docker registry to ECR.\n// Copy from docker registry to ECR.\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage2\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(jsii.String(\"nginx:latest\")),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest\", cdk.Aws_ACCOUNT_ID())),\n})\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\necrdeploy.NewECRDeployment(this, jsii.String(\"DeployDockerImage3\"), &ECRDeploymentProps{\n\tSrc: ecrdeploy.NewDockerImageName(jsii.String(\"javacs3/nginx:latest\"), jsii.String(\"username:password\")),\n\t// src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n\t// src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n\tDest: ecrdeploy.NewDockerImageName(fmt.Sprintf(\"%v.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest\", cdk.Aws_ACCOUNT_ID())),\n}).AddToPrincipalPolicy(awscdk.Aws_iam.NewPolicyStatement(&PolicyStatementProps{\n\tEffect: awscdk.*Aws_iam.Effect_ALLOW,\n\tActions: []*string{\n\t\tjsii.String(\"secretsmanager:GetSecretValue\"),\n\t},\n\tResources: []*string{\n\t\tjsii.String(\"*\"),\n\t},\n}))","version":"1"},"$":{"source":"import { DockerImageAsset } from 'aws-cdk-lib/aws-ecr-assets';\n\nconst image = new DockerImageAsset(this, 'CDKDockerImage', {\n directory: path.join(__dirname, 'docker'),\n});\n\n// Copy from cdk docker image asset to another ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage1', {\n src: new ecrdeploy.DockerImageName(image.imageUri),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest`),\n});\n\n// Copy from docker registry to ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage2', {\n src: new ecrdeploy.DockerImageName('nginx:latest'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest`),\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage3', {\n src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'username:password'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest`),\n}).addToPrincipalPolicy(new iam.PolicyStatement({\n effect: iam.Effect.ALLOW,\n actions: [\n 'secretsmanager:GetSecretValue',\n ],\n resources: ['*'],\n}));","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-ecr-deployment"},"field":{"field":"markdown","line":33}},"didCompile":true,"fqnsReferenced":["aws-cdk-lib.aws_ecr_assets.DockerImageAsset","aws-cdk-lib.aws_ecr_assets.DockerImageAsset#imageUri","aws-cdk-lib.aws_ecr_assets.DockerImageAssetProps","aws-cdk-lib.aws_iam.Effect","aws-cdk-lib.aws_iam.Effect#ALLOW","aws-cdk-lib.aws_iam.PolicyStatement","aws-cdk-lib.aws_iam.PolicyStatementProps","cdk-ecr-deployment.DockerImageName","cdk-ecr-deployment.ECRDeployment","cdk-ecr-deployment.ECRDeployment#addToPrincipalPolicy","cdk-ecr-deployment.ECRDeploymentProps","cdk-ecr-deployment.IImageName","constructs.Construct"],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\nimport { DockerImageAsset } from 'aws-cdk-lib/aws-ecr-assets';\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport * as path from 'node:path';\nimport { Construct } from 'constructs';\n import * as ecrdeploy from 'cdk-ecr-deployment';\nimport {\n Stack,\n aws_iam as iam,\n} from 'aws-cdk-lib';\nimport * as cdk from 'aws-cdk-lib';\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\n\n\nconst image = new DockerImageAsset(this, 'CDKDockerImage', {\n directory: path.join(__dirname, 'docker'),\n});\n\n// Copy from cdk docker image asset to another ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage1', {\n src: new ecrdeploy.DockerImageName(image.imageUri),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx:latest`),\n});\n\n// Copy from docker registry to ECR.\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage2', {\n src: new ecrdeploy.DockerImageName('nginx:latest'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx2:latest`),\n});\n\n// Copy from private docker registry to ECR.\n// The format of secret in aws secrets manager must be plain text! e.g. <username>:<password>\nnew ecrdeploy.ECRDeployment(this, 'DeployDockerImage3', {\n src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'username:password'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'aws-secrets-manager-secret-name'),\n // src: new ecrdeploy.DockerImageName('javacs3/nginx:latest', 'arn:aws:secretsmanager:us-west-2:000000000000:secret:id'),\n dest: new ecrdeploy.DockerImageName(`${cdk.Aws.ACCOUNT_ID}.dkr.ecr.us-west-2.amazonaws.com/my-nginx3:latest`),\n}).addToPrincipalPolicy(new iam.PolicyStatement({\n effect: iam.Effect.ALLOW,\n actions: [\n 'secretsmanager:GetSecretValue',\n ],\n resources: ['*'],\n}));\n/// !hide\n// Code snippet ended before !hide marker above\n }\n}","syntaxKindCounter":{"11":11,"16":3,"18":3,"80":51,"110":4,"209":2,"210":5,"211":21,"213":2,"214":11,"228":3,"239":3,"243":1,"244":3,"260":1,"261":1,"272":1,"273":1,"275":1,"276":1,"303":10,"312":1},"fqnsFingerprint":"49c3b893d162beea6924f8cf712357c6390954e35a181bc42817e82aa4070d12"}}}
|
package/API.md
CHANGED
|
@@ -77,6 +77,8 @@ new ECRDeployment(scope: Construct, id: string, props: ECRDeploymentProps)
|
|
|
77
77
|
* **src** (<code>[IImageName](#cdk-ecr-deployment-iimagename)</code>) The source of the docker image.
|
|
78
78
|
* **buildImage** (<code>string</code>) Image to use to build Golang lambda for custom resource, if download fails or is not wanted. __*Default*__: public.ecr.aws/sam/build-go1.x:latest
|
|
79
79
|
* **environment** (<code>Map<string, string></code>) The environment variable to set. __*Optional*__
|
|
80
|
+
* **lambdaHandler** (<code>string</code>) The name of the lambda handler. __*Default*__: bootstrap
|
|
81
|
+
* **lambdaRuntime** (<code>[aws_lambda.Runtime](#aws-cdk-lib-aws-lambda-runtime)</code>) The lambda function runtime environment. __*Default*__: lambda.Runtime.PROVIDED_AL2023
|
|
80
82
|
* **memoryLimit** (<code>number</code>) The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket. __*Default*__: 512
|
|
81
83
|
* **role** (<code>[aws_iam.IRole](#aws-cdk-lib-aws-iam-irole)</code>) Execution role associated with this function. __*Default*__: A role is automatically created
|
|
82
84
|
* **securityGroups** (<code>Array<[aws_ec2.SecurityGroup](#aws-cdk-lib-aws-ec2-securitygroup)></code>) The list of security groups to associate with the Lambda's network interfaces. __*Default*__: If the function is placed within a VPC and a security group is not specified, either by this or securityGroup prop, a dedicated security group will be created for this function.
|
|
@@ -146,6 +148,8 @@ Name | Type | Description
|
|
|
146
148
|
**src** | <code>[IImageName](#cdk-ecr-deployment-iimagename)</code> | The source of the docker image.
|
|
147
149
|
**buildImage**? | <code>string</code> | Image to use to build Golang lambda for custom resource, if download fails or is not wanted.<br/>__*Default*__: public.ecr.aws/sam/build-go1.x:latest
|
|
148
150
|
**environment**? | <code>Map<string, string></code> | The environment variable to set.<br/>__*Optional*__
|
|
151
|
+
**lambdaHandler**? | <code>string</code> | The name of the lambda handler.<br/>__*Default*__: bootstrap
|
|
152
|
+
**lambdaRuntime**? | <code>[aws_lambda.Runtime](#aws-cdk-lib-aws-lambda-runtime)</code> | The lambda function runtime environment.<br/>__*Default*__: lambda.Runtime.PROVIDED_AL2023
|
|
149
153
|
**memoryLimit**? | <code>number</code> | The amount of memory (in MiB) to allocate to the AWS Lambda function which replicates the files from the CDK bucket to the destination bucket.<br/>__*Default*__: 512
|
|
150
154
|
**role**? | <code>[aws_iam.IRole](#aws-cdk-lib-aws-iam-irole)</code> | Execution role associated with this function.<br/>__*Default*__: A role is automatically created
|
|
151
155
|
**securityGroups**? | <code>Array<[aws_ec2.SecurityGroup](#aws-cdk-lib-aws-ec2-securitygroup)></code> | The list of security groups to associate with the Lambda's network interfaces.<br/>__*Default*__: If the function is placed within a VPC and a security group is not specified, either by this or securityGroup prop, a dedicated security group will be created for this function.
|
package/lambda/go.mod
CHANGED
|
@@ -3,25 +3,17 @@ module cdk-ecr-deployment-handler
|
|
|
3
3
|
go 1.15
|
|
4
4
|
|
|
5
5
|
require (
|
|
6
|
-
github.com/BurntSushi/toml v1.1.0 // indirect
|
|
7
6
|
github.com/aws/aws-lambda-go v1.29.0
|
|
8
|
-
github.com/aws/aws-sdk-go-v2 v1.
|
|
9
|
-
github.com/aws/aws-sdk-go-v2/config v1.
|
|
7
|
+
github.com/aws/aws-sdk-go-v2 v1.21.0
|
|
8
|
+
github.com/aws/aws-sdk-go-v2/config v1.18.37
|
|
10
9
|
github.com/aws/aws-sdk-go-v2/service/ecr v1.17.3
|
|
11
|
-
github.com/aws/aws-sdk-go-v2/service/s3 v1.
|
|
12
|
-
github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.
|
|
13
|
-
github.com/
|
|
14
|
-
github.com/containers/image/v5 v5.21.0
|
|
15
|
-
github.com/containers/storage v1.39.0 // indirect
|
|
10
|
+
github.com/aws/aws-sdk-go-v2/service/s3 v1.35.0
|
|
11
|
+
github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.19.10
|
|
12
|
+
github.com/containers/image/v5 v5.29.3
|
|
16
13
|
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
|
|
17
|
-
github.com/gorilla/mux v1.8.0 // indirect
|
|
18
|
-
github.com/imdario/mergo v0.3.13 // indirect
|
|
19
14
|
github.com/opencontainers/go-digest v1.0.0
|
|
20
15
|
github.com/pkg/errors v0.9.1
|
|
21
|
-
github.com/prometheus/common v0.33.0 // indirect
|
|
22
16
|
github.com/sirupsen/logrus v1.9.3
|
|
23
17
|
github.com/stretchr/testify v1.8.4
|
|
24
|
-
github.com/
|
|
25
|
-
go.mozilla.org/pkcs7 v0.0.0-20210826202110-33d05740a352 // indirect
|
|
26
|
-
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
|
|
18
|
+
github.com/tchap/go-patricia v2.3.0+incompatible // indirect
|
|
27
19
|
)
|