# yaml-language-server: $schema=../cdk.schema.json Resources: VPC: Type: aws-cdk-lib.aws_ec2.Vpc ASG: Type: aws-cdk-lib.aws_autoscaling.AutoScalingGroup Properties: vpc: Ref: VPC instanceType: aws-cdk-lib.aws_ec2.InstanceType.of: - T2 - MICRO machineImage: aws-cdk-lib.aws_ec2.AmazonLinuxImage: # parameters may be omitted when there are no mandatory arguments AModestLoad: Type: aws-cdk-lib.aws_autoscaling.TargetTrackingScalingPolicy Call: - ASG - scaleOnRequestCount: - AModestLoad - targetRequestsPerMinute: 60 DependsOn: - 'Target' LB: Type: aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer Properties: vpc: Ref: VPC internetFacing: true Listener: Type: aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListener Call: - LB - addListener: - 'Listener' - port: 80 Target: Type: aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationTargetGroup Call: - Listener - addTargets: - 'Target' - port: 80 targets: - Ref: ASG AllowFromEverywhere: Call: - Listener.connections - allowDefaultPortFromAnyIpv4: - Open to the world