// Jest Snapshot v1, https://goo.gl/fbAQLP exports[`IoT Device Simulator customResourcesConstruct Test 1`] = ` { "Resources": { "TestCustomResourceConsoleConfig9233433D": { "DeletionPolicy": "Delete", "Properties": { "ConfigFileName": "aws_config.js", "DestinationBucket": { "Ref": "testConsoleBucketC1925855", }, "Resource": "CreateConfig", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, "configObj": { "Fn::Join": [ "", [ "{"aws_iot_endpoint":"", { "Fn::GetAtt": [ "TestCustomResourceEndpointAddress55F0267E", "IOT_ENDPOINT", ], }, "","API":{"endpoints":[{"name":"ids","endpoint":"https://12ab34cde5.execute-api.us-east-1.amazonaws.com/test","region":"", { "Ref": "AWS::Region", }, ""}]},"Auth":{"identityPoolId":"testIdentityPool","region":"", { "Ref": "AWS::Region", }, "","userPoolId":"testUserPool","userPoolWebClientId":"testUserPoolClient"},"aws_iot_policy_name":"testIoTPolicy","aws_project_region":"", { "Ref": "AWS::Region", }, "","geo":{"AmazonLocationService":{"region":"", { "Ref": "AWS::Region", }, "","maps":{"items":{"testMap":{"style":"VectorEsriNavigation"}},"default":"testMap"},"search_indices":{"items":["testPlaceIndex"],"default":"testPlaceIndex"}}}}", ], ], }, }, "Type": "Custom::CopyConfigFiles", "UpdateReplacePolicy": "Delete", }, "TestCustomResourceCopyConsoleFilesE61CD7FB": { "DeletionPolicy": "Delete", "Properties": { "DestinationBucket": { "Ref": "testConsoleBucketC1925855", }, "ManifestFile": "site-manifest.json", "Resource": "CopyS3Assets", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, "SourceBucket": "test-bucket-region", "SourcePrefix": "testPrefix/", }, "Type": "Custom::CopyConsoleFiles", "UpdateReplacePolicy": "Delete", }, "TestCustomResourceCopyRouteFilesB49E39F7": { "DeletionPolicy": "Delete", "Properties": { "DestinationBucket": { "Ref": "testRouteBucket64D9BEB5", }, "ManifestFile": "routes-manifest.json", "Resource": "CopyS3Assets", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, "SourceBucket": "test-bucket-region", "SourcePrefix": "testPrefix/", }, "Type": "Custom::CopyRouteFiles", "UpdateReplacePolicy": "Delete", }, "TestCustomResourceCustomResourceLambdaIoTPolicy36A1424E": { "Metadata": { "cfn_nag": { "rules_to_suppress": [ { "id": "W12", "reason": "To connect IoT and attach IoT policy to Cognito identity cannot speficy the specific resources.", }, ], }, }, "Properties": { "PolicyDocument": { "Statement": [ { "Action": "iot:DetachPolicy", "Effect": "Allow", "Resource": "*", }, ], "Version": "2012-10-17", }, "PolicyName": "CustomResourceLambdaIoTPolicy", "Roles": [ { "Ref": "TestCustomResourceHelperLambdaRoleA52DBB50", }, ], }, "Type": "AWS::IAM::Policy", }, "TestCustomResourceDetachIoTPolicyF6F108AC": { "DeletionPolicy": "Delete", "Properties": { "IotPolicyName": "testIoTPolicy", "Resource": "DetachIoTPolicy", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, }, "Type": "AWS::CloudFormation::CustomResource", "UpdateReplacePolicy": "Delete", }, "TestCustomResourceEndpointAddress55F0267E": { "DeletionPolicy": "Delete", "Properties": { "Resource": "DescribeIoTEndpoint", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, }, "Type": "AWS::CloudFormation::CustomResource", "UpdateReplacePolicy": "Delete", }, "TestCustomResourceHelperLambda4F3A7ED4": { "DependsOn": [ "TestCustomResourceHelperLambdaRoleDefaultPolicy236FD1D8", "TestCustomResourceHelperLambdaRoleA52DBB50", "TestPolicyCC05E598", ], "Properties": { "Code": { "S3Bucket": "test-bucket-region", "S3Key": "testPrefix//custom-resource.zip", }, "Description": "IoT Device Simulator custom resource function", "Environment": { "Variables": { "SOLUTION_ID": "testId", "SOLUTION_VERSION": "testVersion", }, }, "Handler": "index.handler", "Role": { "Fn::GetAtt": [ "TestCustomResourceHelperLambdaRoleA52DBB50", "Arn", ], }, "Runtime": "nodejs18.x", "Timeout": 240, }, "Type": "AWS::Lambda::Function", }, "TestCustomResourceHelperLambdaRoleA52DBB50": { "Metadata": { "cfn_nag": { "rules_to_suppress": [ { "id": "W11", "reason": "iot:DescribeEndpoint cannot specify the resource.", }, ], }, }, "Properties": { "AssumeRolePolicyDocument": { "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com", }, }, ], "Version": "2012-10-17", }, "Path": "/", "Policies": [ { "PolicyDocument": { "Statement": [ { "Action": "iot:DescribeEndpoint", "Effect": "Allow", "Resource": "*", }, ], "Version": "2012-10-17", }, "PolicyName": "customResourcePolicy", }, ], }, "Type": "AWS::IAM::Role", }, "TestCustomResourceHelperLambdaRoleDefaultPolicy236FD1D8": { "Properties": { "PolicyDocument": { "Statement": [ { "Action": [ "s3:GetObject*", "s3:GetBucket*", "s3:List*", ], "Effect": "Allow", "Resource": [ { "Fn::Join": [ "", [ "arn:", { "Ref": "AWS::Partition", }, ":s3:::test-bucket-region", ], ], }, { "Fn::Join": [ "", [ "arn:", { "Ref": "AWS::Partition", }, ":s3:::test-bucket-region/testPrefix//*", ], ], }, ], }, { "Action": [ "s3:PutObject", "s3:PutObjectLegalHold", "s3:PutObjectRetention", "s3:PutObjectTagging", "s3:PutObjectVersionTagging", "s3:Abort*", ], "Effect": "Allow", "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testConsoleBucketC1925855", "Arn", ], }, "/*", ], ], }, }, { "Action": [ "s3:PutObject", "s3:PutObjectLegalHold", "s3:PutObjectRetention", "s3:PutObjectTagging", "s3:PutObjectVersionTagging", "s3:Abort*", ], "Effect": "Allow", "Resource": { "Fn::Join": [ "", [ { "Fn::GetAtt": [ "testRouteBucket64D9BEB5", "Arn", ], }, "/*", ], ], }, }, { "Action": "iot:ListTargetsForPolicy", "Effect": "Allow", "Resource": { "Fn::Join": [ "", [ "arn:", { "Ref": "AWS::Partition", }, ":iot:", { "Ref": "AWS::Region", }, ":", { "Ref": "AWS::AccountId", }, ":policy/*", ], ], }, }, ], "Version": "2012-10-17", }, "PolicyName": "TestCustomResourceHelperLambdaRoleDefaultPolicy236FD1D8", "Roles": [ { "Ref": "TestCustomResourceHelperLambdaRoleA52DBB50", }, ], }, "Type": "AWS::IAM::Policy", }, "TestCustomResourceUUID90DFF55D": { "DeletionPolicy": "Delete", "Properties": { "Resource": "CreateUUID", "ServiceToken": { "Fn::GetAtt": [ "TestCustomResourceHelperLambda4F3A7ED4", "Arn", ], }, "StackName": { "Ref": "AWS::StackName", }, }, "Type": "AWS::CloudFormation::CustomResource", "UpdateReplacePolicy": "Delete", }, "TestPolicyCC05E598": { "Properties": { "PolicyDocument": { "Statement": [ { "Action": "cloudwatch:Get*", "Effect": "Allow", "Resource": "*", }, ], "Version": "2012-10-17", }, "PolicyName": "TestPolicyCC05E598", "Roles": [ { "Ref": "TestCustomResourceHelperLambdaRoleA52DBB50", }, ], }, "Type": "AWS::IAM::Policy", }, "testConsoleBucketC1925855": { "DeletionPolicy": "Retain", "Type": "AWS::S3::Bucket", "UpdateReplacePolicy": "Retain", }, "testRouteBucket64D9BEB5": { "DeletionPolicy": "Retain", "Type": "AWS::S3::Bucket", "UpdateReplacePolicy": "Retain", }, }, } `;