// Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Snapshot 1`] = ` Object { "Description": "(SO8021) - Deploy keycloak rds mysql with existing vpc. template version: undefined", "Mappings": Object { "KeyCloakKeyCloakContainerSerivceKeycloakImageMapF79EAEA3": Object { "aws": Object { "uri": "jboss/keycloak:16.1.1", }, "aws-cn": Object { "uri": "048912060910.dkr.ecr.cn-northwest-1.amazonaws.com.cn/dockerhub/jboss/keycloak:16.1.1", }, }, }, "Metadata": Object { "AWS::CloudFormation::Interface": Object { "ParameterGroups": Array [ Object { "Label": Object { "default": "Application Load Balancer Settings", }, "Parameters": Array [ "CertificateArn", ], }, Object { "Label": Object { "default": "Database Instance Settings", }, "Parameters": Array [ "DatabaseInstanceType", ], }, Object { "Label": Object { "default": "VPC Settings", }, "Parameters": Array [ "VpcId", "PubSubnets", "PrivSubnets", "DBSubnets", ], }, Object { "Label": Object { "default": "AutoScaling Settings", }, "Parameters": Array [ "MinContainers", "MaxContainers", "AutoScalingTargetCpuUtilization", ], }, Object { "Label": Object { "default": "Environment variable", }, "Parameters": Array [ "JavaOpts", ], }, ], }, }, "Outputs": Object { "KeyCloakDatabaseDBSecretArn28BEB641": Object { "Value": Object { "Ref": "KeyCloakDatabaseDBClusterSecretAttachment50401C92", }, }, "KeyCloakDatabaseclusterEndpointHostname38FB0D1E": Object { "Value": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBCluster06E9C0E1", "Endpoint.Address", ], }, }, "KeyCloakDatabaseclusterIdentifierF00C290B": Object { "Value": Object { "Ref": "KeyCloakDatabaseDBCluster06E9C0E1", }, }, "KeyCloakKeyCloakContainerSerivceEndpointURL9C81E19A": Object { "Value": Object { "Fn::Join": Array [ "", Array [ "https://", Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceALBE100B67D", "DNSName", ], }, ], ], }, }, }, "Parameters": Object { "AutoScalingTargetCpuUtilization": Object { "Default": 75, "Description": "Auto scaling target cpu utilization", "MinValue": 0, "Type": "Number", }, "CertificateArn": Object { "Description": "Certificate Arn for Application Load Balancer", "MinLength": 5, "Type": "String", }, "DBSubnets": Object { "Description": "Database subnets (Choose two)", "Type": "List", }, "DatabaseInstanceType": Object { "AllowedValues": Array [ "r5.large", "r5.xlarge", "r5.2xlarge", "r5.4xlarge", "r5.8xlarge", "r5.12xlarge", "r5.16xlarge", "r5.24xlarge", "t3.small", "t3.medium", ], "Default": "r5.large", "Description": "Instance type to be used for the core instances", "Type": "String", }, "JavaOpts": Object { "Default": "-server -Xms1024m -Xmx1638m", "Description": "JAVA_OPTS environment variable", "Type": "String", }, "MaxContainers": Object { "Default": 10, "Description": "maximum containers count", "MinValue": 2, "Type": "Number", }, "MinContainers": Object { "Default": 2, "Description": "minimum containers count", "MinValue": 2, "Type": "Number", }, "PrivSubnets": Object { "Description": "Private subnets (Choose two)", "Type": "List", }, "PubSubnets": Object { "Description": "Public subnets (Choose two)", "Type": "List", }, "VpcId": Object { "Description": "Your VPC Id", "Type": "AWS::EC2::VPC::Id", }, }, "Resources": Object { "KeyCloakDatabaseDBCluster06E9C0E1": Object { "DeletionPolicy": "Retain", "Properties": Object { "BackupRetentionPeriod": 7, "CopyTagsToSnapshot": true, "DBClusterParameterGroupName": "default.aurora-mysql5.7", "DBSubnetGroupName": Object { "Ref": "KeyCloakDatabaseDBClusterSubnetsE36F1B1B", }, "DatabaseName": "keycloak", "DeletionProtection": true, "Engine": "aurora-mysql", "EngineVersion": "5.7.mysql_aurora.2.09.1", "MasterUserPassword": Object { "Fn::Join": Array [ "", Array [ "{{resolve:secretsmanager:", Object { "Ref": "testKeyCloakDatabaseDBClusterSecret5FF132C13fdaad7efa858a3daf9490cf0a702aeb", }, ":SecretString:password::}}", ], ], }, "MasterUsername": "admin", "StorageEncrypted": true, "VpcSecurityGroupIds": Array [ Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBClusterSecurityGroup843B4392", "GroupId", ], }, ], }, "Type": "AWS::RDS::DBCluster", "UpdateReplacePolicy": "Retain", }, "KeyCloakDatabaseDBClusterInstance12532FD3D": Object { "DeletionPolicy": "Retain", "Properties": Object { "DBClusterIdentifier": Object { "Ref": "KeyCloakDatabaseDBCluster06E9C0E1", }, "DBInstanceClass": Object { "Fn::Join": Array [ "", Array [ "db.", Object { "Ref": "DatabaseInstanceType", }, ], ], }, "DBSubnetGroupName": Object { "Ref": "KeyCloakDatabaseDBClusterSubnetsE36F1B1B", }, "Engine": "aurora-mysql", "EngineVersion": "5.7.mysql_aurora.2.09.1", "PubliclyAccessible": false, }, "Type": "AWS::RDS::DBInstance", "UpdateReplacePolicy": "Retain", }, "KeyCloakDatabaseDBClusterInstance2EE80EFE4": Object { "DeletionPolicy": "Retain", "Properties": Object { "DBClusterIdentifier": Object { "Ref": "KeyCloakDatabaseDBCluster06E9C0E1", }, "DBInstanceClass": Object { "Fn::Join": Array [ "", Array [ "db.", Object { "Ref": "DatabaseInstanceType", }, ], ], }, "DBSubnetGroupName": Object { "Ref": "KeyCloakDatabaseDBClusterSubnetsE36F1B1B", }, "Engine": "aurora-mysql", "EngineVersion": "5.7.mysql_aurora.2.09.1", "PubliclyAccessible": false, }, "Type": "AWS::RDS::DBInstance", "UpdateReplacePolicy": "Retain", }, "KeyCloakDatabaseDBClusterSecretAttachment50401C92": Object { "Properties": Object { "SecretId": Object { "Ref": "testKeyCloakDatabaseDBClusterSecret5FF132C13fdaad7efa858a3daf9490cf0a702aeb", }, "TargetId": Object { "Ref": "KeyCloakDatabaseDBCluster06E9C0E1", }, "TargetType": "AWS::RDS::DBCluster", }, "Type": "AWS::SecretsManager::SecretTargetAttachment", }, "KeyCloakDatabaseDBClusterSecurityGroup843B4392": Object { "Properties": Object { "GroupDescription": "RDS security group", "SecurityGroupEgress": Array [ Object { "CidrIp": "0.0.0.0/0", "Description": "Allow all outbound traffic by default", "IpProtocol": "-1", }, ], "SecurityGroupIngress": Array [ Object { "CidrIp": Object { "Ref": "AWS::NoValue", }, "Description": Object { "Fn::Join": Array [ "", Array [ "from ", Object { "Ref": "AWS::NoValue", }, ":3306", ], ], }, "FromPort": 3306, "IpProtocol": "tcp", "ToPort": 3306, }, ], "VpcId": Object { "Ref": "VpcId", }, }, "Type": "AWS::EC2::SecurityGroup", }, "KeyCloakDatabaseDBClusterSecurityGroupfromtestKeyCloakDatabaseDBClusterSecurityGroup418685FC330650894F27": Object { "Properties": Object { "Description": "from testKeyCloakDatabaseDBClusterSecurityGroup418685FC:3306", "FromPort": 3306, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBClusterSecurityGroup843B4392", "GroupId", ], }, "IpProtocol": "tcp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBClusterSecurityGroup843B4392", "GroupId", ], }, "ToPort": 3306, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakDatabaseDBClusterSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F6IndirectPort9E450451": Object { "Properties": Object { "Description": "from testKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F6:{IndirectPort}", "FromPort": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBCluster06E9C0E1", "Endpoint.Port", ], }, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBClusterSecurityGroup843B4392", "GroupId", ], }, "IpProtocol": "tcp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "ToPort": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBCluster06E9C0E1", "Endpoint.Port", ], }, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakDatabaseDBClusterSubnetsE36F1B1B": Object { "DeletionPolicy": "Retain", "Properties": Object { "DBSubnetGroupDescription": "Subnets for DBCluster database", "SubnetIds": Array [ Object { "Fn::Select": Array [ 0, Object { "Ref": "DBSubnets", }, ], }, Object { "Fn::Select": Array [ 1, Object { "Ref": "DBSubnets", }, ], }, ], }, "Type": "AWS::RDS::DBSubnetGroup", "UpdateReplacePolicy": "Retain", }, "KeyCloakKCSecretF8498E5C": Object { "DeletionPolicy": "Delete", "Properties": Object { "GenerateSecretString": Object { "ExcludePunctuation": true, "GenerateStringKey": "password", "PasswordLength": 12, "SecretStringTemplate": "{\\"username\\":\\"keycloak\\"}", }, }, "Type": "AWS::SecretsManager::Secret", "UpdateReplacePolicy": "Delete", }, "KeyCloakKeyCloakContainerSerivceALBE100B67D": Object { "Properties": Object { "LoadBalancerAttributes": Array [ Object { "Key": "deletion_protection.enabled", "Value": "false", }, ], "Scheme": "internet-facing", "SecurityGroups": Array [ Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceALBSecurityGroup8F5103C6", "GroupId", ], }, ], "Subnets": Array [ Object { "Fn::Select": Array [ 0, Object { "Ref": "PubSubnets", }, ], }, Object { "Fn::Select": Array [ 1, Object { "Ref": "PubSubnets", }, ], }, ], "Type": "application", }, "Type": "AWS::ElasticLoadBalancingV2::LoadBalancer", }, "KeyCloakKeyCloakContainerSerivceALBHttpsListener140F85B9": Object { "Properties": Object { "Certificates": Array [ Object { "CertificateArn": Object { "Ref": "CertificateArn", }, }, ], "DefaultActions": Array [ Object { "TargetGroupArn": Object { "Ref": "KeyCloakKeyCloakContainerSerivceALBHttpsListenerECSTargetGroupCE3EF52C", }, "Type": "forward", }, ], "LoadBalancerArn": Object { "Ref": "KeyCloakKeyCloakContainerSerivceALBE100B67D", }, "Port": 443, "Protocol": "HTTPS", }, "Type": "AWS::ElasticLoadBalancingV2::Listener", }, "KeyCloakKeyCloakContainerSerivceALBHttpsListenerECSTargetGroupCE3EF52C": Object { "Properties": Object { "HealthyThresholdCount": 3, "Port": 8443, "Protocol": "HTTPS", "TargetGroupAttributes": Array [ Object { "Key": "slow_start.duration_seconds", "Value": "60", }, Object { "Key": "stickiness.enabled", "Value": "true", }, Object { "Key": "stickiness.type", "Value": "lb_cookie", }, Object { "Key": "stickiness.lb_cookie.duration_seconds", "Value": "604800", }, ], "TargetType": "ip", "VpcId": Object { "Ref": "VpcId", }, }, "Type": "AWS::ElasticLoadBalancingV2::TargetGroup", }, "KeyCloakKeyCloakContainerSerivceALBSecurityGroup8F5103C6": Object { "Properties": Object { "GroupDescription": "Automatically created Security Group for ELB testKeyCloakKeyCloakContainerSerivceALB6DC084A4", "SecurityGroupIngress": Array [ Object { "CidrIp": "0.0.0.0/0", "Description": "Allow from anyone on port 443", "FromPort": 443, "IpProtocol": "tcp", "ToPort": 443, }, ], "VpcId": Object { "Ref": "VpcId", }, }, "Type": "AWS::EC2::SecurityGroup", }, "KeyCloakKeyCloakContainerSerivceALBSecurityGrouptotestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F68443B88A1154": Object { "Properties": Object { "Description": "Load balancer to target", "DestinationSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "FromPort": 8443, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceALBSecurityGroup8F5103C6", "GroupId", ], }, "IpProtocol": "tcp", "ToPort": 8443, }, "Type": "AWS::EC2::SecurityGroupEgress", }, "KeyCloakKeyCloakContainerSerivceClusterA18E44FF": Object { "DependsOn": Array [ "KeyCloakDatabaseDBClusterInstance12532FD3D", "KeyCloakDatabaseDBClusterInstance2EE80EFE4", "KeyCloakDatabaseDBCluster06E9C0E1", "KeyCloakDatabaseDBClusterSecretAttachment50401C92", "testKeyCloakDatabaseDBClusterSecret5FF132C13fdaad7efa858a3daf9490cf0a702aeb", "KeyCloakDatabaseDBClusterSecurityGroupfromtestKeyCloakDatabaseDBClusterSecurityGroup418685FC330650894F27", "KeyCloakDatabaseDBClusterSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F6IndirectPort9E450451", "KeyCloakDatabaseDBClusterSecurityGroup843B4392", "KeyCloakDatabaseDBClusterSubnetsE36F1B1B", ], "Type": "AWS::ECS::Cluster", }, "KeyCloakKeyCloakContainerSerivceLogGroup010F2AAE": Object { "DeletionPolicy": "Retain", "Properties": Object { "RetentionInDays": 30, }, "Type": "AWS::Logs::LogGroup", "UpdateReplacePolicy": "Retain", }, "KeyCloakKeyCloakContainerSerivceService79D3F427": Object { "DependsOn": Array [ "KeyCloakKeyCloakContainerSerivceALBHttpsListenerECSTargetGroupCE3EF52C", "KeyCloakKeyCloakContainerSerivceALBHttpsListener140F85B9", ], "Properties": Object { "Cluster": Object { "Ref": "KeyCloakKeyCloakContainerSerivceClusterA18E44FF", }, "DeploymentConfiguration": Object { "MaximumPercent": 200, "MinimumHealthyPercent": 50, }, "DesiredCount": Object { "Ref": "MinContainers", }, "EnableECSManagedTags": false, "HealthCheckGracePeriodSeconds": 120, "LaunchType": "FARGATE", "LoadBalancers": Array [ Object { "ContainerName": "keycloak", "ContainerPort": 8443, "TargetGroupArn": Object { "Ref": "KeyCloakKeyCloakContainerSerivceALBHttpsListenerECSTargetGroupCE3EF52C", }, }, ], "NetworkConfiguration": Object { "AwsvpcConfiguration": Object { "AssignPublicIp": "DISABLED", "SecurityGroups": Array [ Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, ], "Subnets": Array [ Object { "Fn::Select": Array [ 0, Object { "Ref": "PrivSubnets", }, ], }, Object { "Fn::Select": Array [ 1, Object { "Ref": "PrivSubnets", }, ], }, ], }, }, "TaskDefinition": Object { "Ref": "KeyCloakKeyCloakContainerSerivceTaskDef30C9533A", }, }, "Type": "AWS::ECS::Service", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D": Object { "Properties": Object { "GroupDescription": "test/KeyCloak/KeyCloakContainerSerivce/Service/SecurityGroup", "SecurityGroupEgress": Array [ Object { "CidrIp": "0.0.0.0/0", "Description": "Allow all outbound traffic by default", "IpProtocol": "-1", }, ], "VpcId": Object { "Ref": "VpcId", }, }, "Type": "AWS::EC2::SecurityGroup", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceALBSecurityGroupE89376298443D707A771": Object { "Properties": Object { "Description": "Load balancer to target", "FromPort": 8443, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "IpProtocol": "tcp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceALBSecurityGroup8F5103C6", "GroupId", ], }, "ToPort": 8443, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F65760048BE0899": Object { "Properties": Object { "Description": "kc jgroups-tcp-fd", "FromPort": 57600, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "IpProtocol": "tcp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "ToPort": 57600, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F676008254A471": Object { "Properties": Object { "Description": "kc jgroups-tcp", "FromPort": 7600, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "IpProtocol": "tcp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "ToPort": 7600, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F6UDP542001C1FC729": Object { "Properties": Object { "Description": "kc jgroups-udp-fd", "FromPort": 54200, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "IpProtocol": "udp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "ToPort": 54200, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakKeyCloakContainerSerivceServiceSecurityGroupfromtestKeyCloakKeyCloakContainerSerivceServiceSecurityGroup346BD4F6UDP5520071778905": Object { "Properties": Object { "Description": "kc jgroups-udp", "FromPort": 55200, "GroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "IpProtocol": "udp", "SourceSecurityGroupId": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceServiceSecurityGroup4C80023D", "GroupId", ], }, "ToPort": 55200, }, "Type": "AWS::EC2::SecurityGroupIngress", }, "KeyCloakKeyCloakContainerSerivceServiceTaskCountTarget0EDF86B3": Object { "Properties": Object { "MaxCapacity": Object { "Ref": "MaxContainers", }, "MinCapacity": Object { "Ref": "MinContainers", }, "ResourceId": Object { "Fn::Join": Array [ "", Array [ "service/", Object { "Ref": "KeyCloakKeyCloakContainerSerivceClusterA18E44FF", }, "/", Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceService79D3F427", "Name", ], }, ], ], }, "RoleARN": Object { "Fn::Join": Array [ "", Array [ "arn:", Object { "Ref": "AWS::Partition", }, ":iam::", Object { "Ref": "AWS::AccountId", }, ":role/aws-service-role/ecs.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ECSService", ], ], }, "ScalableDimension": "ecs:service:DesiredCount", "ServiceNamespace": "ecs", }, "Type": "AWS::ApplicationAutoScaling::ScalableTarget", }, "KeyCloakKeyCloakContainerSerivceServiceTaskCountTargetCpuScaling1480DC0B": Object { "Properties": Object { "PolicyName": "testKeyCloakKeyCloakContainerSerivceServiceTaskCountTargetCpuScaling19CBECB4", "PolicyType": "TargetTrackingScaling", "ScalingTargetId": Object { "Ref": "KeyCloakKeyCloakContainerSerivceServiceTaskCountTarget0EDF86B3", }, "TargetTrackingScalingPolicyConfiguration": Object { "PredefinedMetricSpecification": Object { "PredefinedMetricType": "ECSServiceAverageCPUUtilization", }, "TargetValue": Object { "Ref": "AutoScalingTargetCpuUtilization", }, }, }, "Type": "AWS::ApplicationAutoScaling::ScalingPolicy", }, "KeyCloakKeyCloakContainerSerivceTaskDef30C9533A": Object { "Properties": Object { "ContainerDefinitions": Array [ Object { "Environment": Array [ Object { "Name": "DB_ADDR", "Value": Object { "Fn::GetAtt": Array [ "KeyCloakDatabaseDBCluster06E9C0E1", "Endpoint.Address", ], }, }, Object { "Name": "DB_DATABASE", "Value": "keycloak", }, Object { "Name": "DB_PORT", "Value": "3306", }, Object { "Name": "DB_USER", "Value": "admin", }, Object { "Name": "DB_VENDOR", "Value": "mysql", }, Object { "Name": "PROXY_ADDRESS_FORWARDING", "Value": "true", }, Object { "Name": "JDBC_PARAMS", "Value": "useSSL=false", }, Object { "Name": "JGROUPS_DISCOVERY_PROTOCOL", "Value": "JDBC_PING", }, Object { "Name": "JAVA_OPTS", "Value": Object { "Ref": "JavaOpts", }, }, ], "Essential": true, "Image": Object { "Fn::FindInMap": Array [ "KeyCloakKeyCloakContainerSerivceKeycloakImageMapF79EAEA3", Object { "Ref": "AWS::Partition", }, "uri", ], }, "LogConfiguration": Object { "LogDriver": "awslogs", "Options": Object { "awslogs-group": Object { "Ref": "KeyCloakKeyCloakContainerSerivceLogGroup010F2AAE", }, "awslogs-region": Object { "Ref": "AWS::Region", }, "awslogs-stream-prefix": "keycloak", }, }, "Name": "keycloak", "PortMappings": Array [ Object { "ContainerPort": 8443, "Protocol": "tcp", }, Object { "ContainerPort": 7600, "Protocol": "tcp", }, Object { "ContainerPort": 57600, "Protocol": "tcp", }, Object { "ContainerPort": 55200, "Protocol": "udp", }, Object { "ContainerPort": 54200, "Protocol": "udp", }, ], "Secrets": Array [ Object { "Name": "DB_PASSWORD", "ValueFrom": Object { "Fn::Join": Array [ "", Array [ Object { "Ref": "KeyCloakDatabaseDBClusterSecretAttachment50401C92", }, ":password::", ], ], }, }, Object { "Name": "KEYCLOAK_USER", "ValueFrom": Object { "Fn::Join": Array [ "", Array [ Object { "Ref": "KeyCloakKCSecretF8498E5C", }, ":username::", ], ], }, }, Object { "Name": "KEYCLOAK_PASSWORD", "ValueFrom": Object { "Fn::Join": Array [ "", Array [ Object { "Ref": "KeyCloakKCSecretF8498E5C", }, ":password::", ], ], }, }, ], }, ], "Cpu": "4096", "ExecutionRoleArn": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceTaskRole0658CED2", "Arn", ], }, "Family": "testKeyCloakKeyCloakContainerSerivceTaskDef6BF01E85", "Memory": "8192", "NetworkMode": "awsvpc", "RequiresCompatibilities": Array [ "FARGATE", ], "TaskRoleArn": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceTaskDefTaskRole0DC4D418", "Arn", ], }, }, "Type": "AWS::ECS::TaskDefinition", }, "KeyCloakKeyCloakContainerSerivceTaskDefTaskRole0DC4D418": Object { "Properties": Object { "AssumeRolePolicyDocument": Object { "Statement": Array [ Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "ecs-tasks.amazonaws.com", }, }, ], "Version": "2012-10-17", }, }, "Type": "AWS::IAM::Role", }, "KeyCloakKeyCloakContainerSerivceTaskRole0658CED2": Object { "Properties": Object { "AssumeRolePolicyDocument": Object { "Statement": Array [ Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "ecs.amazonaws.com", }, }, Object { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": Object { "Service": "ecs-tasks.amazonaws.com", }, }, ], "Version": "2012-10-17", }, "ManagedPolicyArns": Array [ Object { "Fn::Join": Array [ "", Array [ "arn:", Object { "Ref": "AWS::Partition", }, ":iam::aws:policy/AmazonEC2ContainerRegistryReadOnly", ], ], }, ], }, "Type": "AWS::IAM::Role", }, "KeyCloakKeyCloakContainerSerivceTaskRoleDefaultPolicyA2321E87": Object { "Properties": Object { "PolicyDocument": Object { "Statement": Array [ Object { "Action": Array [ "logs:CreateLogStream", "logs:PutLogEvents", ], "Effect": "Allow", "Resource": Object { "Fn::GetAtt": Array [ "KeyCloakKeyCloakContainerSerivceLogGroup010F2AAE", "Arn", ], }, }, Object { "Action": Array [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", ], "Effect": "Allow", "Resource": Object { "Ref": "KeyCloakDatabaseDBClusterSecretAttachment50401C92", }, }, Object { "Action": Array [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", ], "Effect": "Allow", "Resource": Object { "Ref": "KeyCloakKCSecretF8498E5C", }, }, ], "Version": "2012-10-17", }, "PolicyName": "KeyCloakKeyCloakContainerSerivceTaskRoleDefaultPolicyA2321E87", "Roles": Array [ Object { "Ref": "KeyCloakKeyCloakContainerSerivceTaskRole0658CED2", }, ], }, "Type": "AWS::IAM::Policy", }, "testKeyCloakDatabaseDBClusterSecret5FF132C13fdaad7efa858a3daf9490cf0a702aeb": Object { "DeletionPolicy": "Delete", "Properties": Object { "Description": Object { "Fn::Join": Array [ "", Array [ "Generated by the CDK for stack: ", Object { "Ref": "AWS::StackName", }, ], ], }, "GenerateSecretString": Object { "ExcludeCharacters": " %+~\`#$&*()|[]{}:;<>?!'/@\\"\\\\", "GenerateStringKey": "password", "PasswordLength": 30, "SecretStringTemplate": "{\\"username\\":\\"admin\\"}", }, }, "Type": "AWS::SecretsManager::Secret", "UpdateReplacePolicy": "Delete", }, }, } `;