Table of contents
Resources
The Resources section defines the AWS Resources that you wish to create using this template. All of the AWS Resources that are present in CloudFormation also appear in KloudFormation.
Info on Resources from AWS can be found here
Within the curly braces of the KloudFormation.create()
function you have access to all of the resource types. To see a list in IntelliJ you can press the hotkey for code completion (Ctrl + Space on Mac).
Each resource has a function of the same name. That function has a receiver of type KloudFormation
meaning that the function is available inside the { }
braces
The following will create an S3 Bucket:
override fun KloudFormation.create() { bucket() }
This produces the following template:
Resources:
Bucket:
Type: "AWS::S3::Bucket"
Resource Parameters
Each resource takes the following parameters:
- Required Resource Properties
logicalName
builder
dependsOn
resourceProperties
Required Resource Properties
class Stack: StackBuilder { override fun KloudFormation.create() { topic() // No required properties vPC(cidrBlock = +"0.0.0.0/0") // cidrBlock is required } }
Logical Name
The Logical Name parameter determines what the resource will be named inside your stack. This will appear in the CloudFormation console.
Logical names are allocated for you if you do not set one and will appear as the capitalised name of the Resource followed by a number that increments.
Here is an example with three S3 Buckets:
bucket() bucket() bucket(logicalName = "MyBucket")
Produces
Bucket:
Type: "AWS::S3::Bucket"
Bucket2:
Type: "AWS::S3::Bucket"
MyBucket:
Type: "AWS::S3::Bucket"
Optional Resource Properties
The builder is always the last parameter and is a function so can be passed as curly braces.
Any Properties that are optional appear as functions within the resource Builder which is passed to that function.
For example bucketName
is optional so appears within the { }
braces
bucket { bucketName("MyBucket") }
Resource Dependencies
You can pass a list of logical names to the dependsOn
parameter so that CloudFormation creates the resources in the correct order.
val topic = topic() val q = queue(dependsOn = listOf(topic.logicalName))
This Produces
Resources:
Topic:
Type: "AWS::SNS::Topic"
Queue:
Type: "AWS::SQS::Queue"
DependsOn:
- "Topic"
This can also be achieved by chaining with the then()
function.
topic().then{ queue() }
Or, for multiple dependencies:
(topic() and topic()).then{ queue() }
Resource Properties
Other metadata can be passed to the resourceProperties
parameter.
ResourceProperties takes the following optional parameters:
- condition
- metadata
- updatePolicy
- creationPolicy
- deletionPolicy
- otherProperties
Condition
Condition has its own docs here
Metadata
The metadata section allows you to pass JSON. It takes the Value<JsonNode>
type described here
For information on other Metadata elements like
AWS::CloudFormation::Init
, see Metadata
topic(resourceProperties = ResourceProperties( metadata = json(mapOf( "Key1" to "Value1", "Key2" to listOf("Value2", "Value3") )) ))
Update Policy
The update policy attribute tells CloudFormation what to do when this resource updates.
ResourceProperties( updatePolicy = UpdatePolicy( autoScalingReplacingUpdate = AutoScalingReplacingUpdate(willReplace = +true) ) )
Creation Policy
The creation policy attribute tells CloudFormation what to do when this resource is created.
ResourceProperties( creationPolicy = CreationPolicy( resourceSignal = CreationPolicy.ResourceSignal( count = Value.Of(3), timeout = +"PT15M" ) ) )
Deletion Policy
The deletion policy attribute tells CloudFormation what to do when this resource is deleted.
ResourceProperties( deletionPolicy = DeletionPolicy.RETAIN.policy )
Other Properties
If KloudFormation does not have the property you need to set, you can add any extra properties by passing them to the otherProperties attribute.
topic(resourceProperties = ResourceProperties( otherProperties = mapOf("MyProperty" to "Value") ))
Resources:
Topic:
Type: "AWS::SNS::Topic"
Properties:
MyProperty: "Value"
Custom Resources
There are two types of custom resources:
AWS::CloudFormation::CustomResource
Custom::<some string>
Both types can be made with the customResource()
function provided. In order to change the type to Custom::<some string>
invoke the asCustomResource
function after building. Shown Below:
val standardCustomResource = customResource( logicalName = "DatabaseInitializer", serviceToken = +"arn:aws::xxxx:xxx" ).asCustomResource(properties = mapOf( "A" to "B", "C" to "D" )) val customNameCustomResource = customResource( logicalName = "DatabaseInitializer2", serviceToken = +"arn:aws::xxxx:xxx" ).asCustomResource("Custom::DBInit")
Resources:
DatabaseInitializer:
Type: "AWS::CloudFormation::CustomResource"
Properties:
ServiceToken: "arn:aws::xxxx:xxx"
A: "B"
C: "D"
DatabaseInitializer2:
Type: "Custom::DBInit"
Properties:
ServiceToken: "arn:aws::xxxx:xxx"
Full Resource List
Note: All resources are generated and are up to date with Amazon’s specifications. If a resource is not listed below it is because this textual list is generated manually.
CloudFormation | KloudFormation |
---|---|
AWS AmazonMQ | |
AWS::AmazonMQ::Broker | io.kloudformation.resource.aws.amazonmq.Broker |
AWS::AmazonMQ::Configuration | io.kloudformation.resource.aws.amazonmq.Configuration |
AWS::AmazonMQ::ConfigurationAssociation | io.kloudformation.resource.aws.amazonmq.ConfigurationAssociation |
AWS ApiGateway | |
AWS::ApiGateway::Account | io.kloudformation.resource.aws.apigateway.Account |
AWS::ApiGateway::ApiKey | io.kloudformation.resource.aws.apigateway.ApiKey |
AWS::ApiGateway::Authorizer | io.kloudformation.resource.aws.apigateway.Authorizer |
AWS::ApiGateway::BasePathMapping | io.kloudformation.resource.aws.apigateway.BasePathMapping |
AWS::ApiGateway::ClientCertificate | io.kloudformation.resource.aws.apigateway.ClientCertificate |
AWS::ApiGateway::Deployment | io.kloudformation.resource.aws.apigateway.Deployment |
AWS::ApiGateway::DocumentationPart | io.kloudformation.resource.aws.apigateway.DocumentationPart |
AWS::ApiGateway::DocumentationVersion | io.kloudformation.resource.aws.apigateway.DocumentationVersion |
AWS::ApiGateway::DomainName | io.kloudformation.resource.aws.apigateway.DomainName |
AWS::ApiGateway::GatewayResponse | io.kloudformation.resource.aws.apigateway.GatewayResponse |
AWS::ApiGateway::Method | io.kloudformation.resource.aws.apigateway.Method |
AWS::ApiGateway::Model | io.kloudformation.resource.aws.apigateway.Model |
AWS::ApiGateway::RequestValidator | io.kloudformation.resource.aws.apigateway.RequestValidator |
AWS::ApiGateway::Resource | io.kloudformation.resource.aws.apigateway.Resource |
AWS::ApiGateway::RestApi | io.kloudformation.resource.aws.apigateway.RestApi |
AWS::ApiGateway::Stage | io.kloudformation.resource.aws.apigateway.Stage |
AWS::ApiGateway::UsagePlan | io.kloudformation.resource.aws.apigateway.UsagePlan |
AWS::ApiGateway::UsagePlanKey | io.kloudformation.resource.aws.apigateway.UsagePlanKey |
AWS::ApiGateway::VpcLink | io.kloudformation.resource.aws.apigateway.VpcLink |
AWS ApiGatewayV2 | |
AWS::ApiGatewayV2::Api | io.kloudformation.resource.aws.apigatewayv2.Api |
AWS::ApiGatewayV2::Authorizer | io.kloudformation.resource.aws.apigatewayv2.Authorizer |
AWS::ApiGatewayV2::Deployment | io.kloudformation.resource.aws.apigatewayv2.Deployment |
AWS::ApiGatewayV2::Integration | io.kloudformation.resource.aws.apigatewayv2.Integration |
AWS::ApiGatewayV2::IntegrationResponse | io.kloudformation.resource.aws.apigatewayv2.IntegrationResponse |
AWS::ApiGatewayV2::Model | io.kloudformation.resource.aws.apigatewayv2.Model |
AWS::ApiGatewayV2::Route | io.kloudformation.resource.aws.apigatewayv2.Route |
AWS::ApiGatewayV2::RouteResponse | io.kloudformation.resource.aws.apigatewayv2.RouteResponse |
AWS::ApiGatewayV2::Stage | io.kloudformation.resource.aws.apigatewayv2.Stage |
AWS AppStream | |
AWS::AppStream::DirectoryConfig | io.kloudformation.resource.aws.appstream.DirectoryConfig |
AWS::AppStream::Fleet | io.kloudformation.resource.aws.appstream.Fleet |
AWS::AppStream::ImageBuilder | io.kloudformation.resource.aws.appstream.ImageBuilder |
AWS::AppStream::Stack | io.kloudformation.resource.aws.appstream.Stack |
AWS::AppStream::StackFleetAssociation | io.kloudformation.resource.aws.appstream.StackFleetAssociation |
AWS::AppStream::StackUserAssociation | io.kloudformation.resource.aws.appstream.StackUserAssociation |
AWS::AppStream::User | io.kloudformation.resource.aws.appstream.User |
AWS AppSync | |
AWS::AppSync::ApiKey | io.kloudformation.resource.aws.appsync.ApiKey |
AWS::AppSync::DataSource | io.kloudformation.resource.aws.appsync.DataSource |
AWS::AppSync::FunctionConfiguration | io.kloudformation.resource.aws.appsync.FunctionConfiguration |
AWS::AppSync::GraphQLApi | io.kloudformation.resource.aws.appsync.GraphQLApi |
AWS::AppSync::GraphQLSchema | io.kloudformation.resource.aws.appsync.GraphQLSchema |
AWS::AppSync::Resolver | io.kloudformation.resource.aws.appsync.Resolver |
AWS ApplicationAutoScaling | |
AWS::ApplicationAutoScaling::ScalableTarget | io.kloudformation.resource.aws.applicationautoscaling.ScalableTarget |
AWS::ApplicationAutoScaling::ScalingPolicy | io.kloudformation.resource.aws.applicationautoscaling.ScalingPolicy |
AWS Athena | |
AWS::Athena::NamedQuery | io.kloudformation.resource.aws.athena.NamedQuery |
AWS AutoScaling | |
AWS::AutoScaling::AutoScalingGroup | io.kloudformation.resource.aws.autoscaling.AutoScalingGroup |
AWS::AutoScaling::LaunchConfiguration | io.kloudformation.resource.aws.autoscaling.LaunchConfiguration |
AWS::AutoScaling::LifecycleHook | io.kloudformation.resource.aws.autoscaling.LifecycleHook |
AWS::AutoScaling::ScalingPolicy | io.kloudformation.resource.aws.autoscaling.ScalingPolicy |
AWS::AutoScaling::ScheduledAction | io.kloudformation.resource.aws.autoscaling.ScheduledAction |
AWS AutoScalingPlans | |
AWS::AutoScalingPlans::ScalingPlan | io.kloudformation.resource.aws.autoscalingplans.ScalingPlan |
AWS Batch | |
AWS::Batch::ComputeEnvironment | io.kloudformation.resource.aws.batch.ComputeEnvironment |
AWS::Batch::JobDefinition | io.kloudformation.resource.aws.batch.JobDefinition |
AWS::Batch::JobQueue | io.kloudformation.resource.aws.batch.JobQueue |
AWS Budgets | |
AWS::Budgets::Budget | io.kloudformation.resource.aws.budgets.Budget |
AWS CertificateManager | |
AWS::CertificateManager::Certificate | io.kloudformation.resource.aws.certificatemanager.Certificate |
AWS Cloud9 | |
AWS::Cloud9::EnvironmentEC2 | io.kloudformation.resource.aws.cloud9.EnvironmentEC2 |
AWS CloudFormation | |
AWS::CloudFormation::CustomResource | io.kloudformation.resource.aws.cloudformation.CustomResource |
AWS::CloudFormation::Macro | io.kloudformation.resource.aws.cloudformation.Macro |
AWS::CloudFormation::Stack | io.kloudformation.resource.aws.cloudformation.Stack |
AWS::CloudFormation::WaitCondition | io.kloudformation.resource.aws.cloudformation.WaitCondition |
AWS::CloudFormation::WaitConditionHandle | io.kloudformation.resource.aws.cloudformation.WaitConditionHandle |
AWS CloudFront | |
AWS::CloudFront::CloudFrontOriginAccessIdentity | io.kloudformation.resource.aws.cloudfront.CloudFrontOriginAccessIdentity |
AWS::CloudFront::Distribution | io.kloudformation.resource.aws.cloudfront.Distribution |
AWS::CloudFront::StreamingDistribution | io.kloudformation.resource.aws.cloudfront.StreamingDistribution |
AWS CloudTrail | |
AWS::CloudTrail::Trail | io.kloudformation.resource.aws.cloudtrail.Trail |
AWS CloudWatch | |
AWS::CloudWatch::Alarm | io.kloudformation.resource.aws.cloudwatch.Alarm |
AWS::CloudWatch::Dashboard | io.kloudformation.resource.aws.cloudwatch.Dashboard |
AWS CodeBuild | |
AWS::CodeBuild::Project | io.kloudformation.resource.aws.codebuild.Project |
AWS CodeCommit | |
AWS::CodeCommit::Repository | io.kloudformation.resource.aws.codecommit.Repository |
AWS CodeDeploy | |
AWS::CodeDeploy::Application | io.kloudformation.resource.aws.codedeploy.Application |
AWS::CodeDeploy::DeploymentConfig | io.kloudformation.resource.aws.codedeploy.DeploymentConfig |
AWS::CodeDeploy::DeploymentGroup | io.kloudformation.resource.aws.codedeploy.DeploymentGroup |
AWS CodePipeline | |
AWS::CodePipeline::CustomActionType | io.kloudformation.resource.aws.codepipeline.CustomActionType |
AWS::CodePipeline::Pipeline | io.kloudformation.resource.aws.codepipeline.Pipeline |
AWS::CodePipeline::Webhook | io.kloudformation.resource.aws.codepipeline.Webhook |
AWS Cognito | |
AWS::Cognito::IdentityPool | io.kloudformation.resource.aws.cognito.IdentityPool |
AWS::Cognito::IdentityPoolRoleAttachment | io.kloudformation.resource.aws.cognito.IdentityPoolRoleAttachment |
AWS::Cognito::UserPool | io.kloudformation.resource.aws.cognito.UserPool |
AWS::Cognito::UserPoolClient | io.kloudformation.resource.aws.cognito.UserPoolClient |
AWS::Cognito::UserPoolGroup | io.kloudformation.resource.aws.cognito.UserPoolGroup |
AWS::Cognito::UserPoolUser | io.kloudformation.resource.aws.cognito.UserPoolUser |
AWS::Cognito::UserPoolUserToGroupAttachment | io.kloudformation.resource.aws.cognito.UserPoolUserToGroupAttachment |
AWS Config | |
AWS::Config::AggregationAuthorization | io.kloudformation.resource.aws.config.AggregationAuthorization |
AWS::Config::ConfigRule | io.kloudformation.resource.aws.config.ConfigRule |
AWS::Config::ConfigurationAggregator | io.kloudformation.resource.aws.config.ConfigurationAggregator |
AWS::Config::ConfigurationRecorder | io.kloudformation.resource.aws.config.ConfigurationRecorder |
AWS::Config::DeliveryChannel | io.kloudformation.resource.aws.config.DeliveryChannel |
AWS DAX | |
AWS::DAX::Cluster | io.kloudformation.resource.aws.dax.Cluster |
AWS::DAX::ParameterGroup | io.kloudformation.resource.aws.dax.ParameterGroup |
AWS::DAX::SubnetGroup | io.kloudformation.resource.aws.dax.SubnetGroup |
AWS DLM | |
AWS::DLM::LifecyclePolicy | io.kloudformation.resource.aws.dlm.LifecyclePolicy |
AWS DMS | |
AWS::DMS::Certificate | io.kloudformation.resource.aws.dms.Certificate |
AWS::DMS::Endpoint | io.kloudformation.resource.aws.dms.Endpoint |
AWS::DMS::EventSubscription | io.kloudformation.resource.aws.dms.EventSubscription |
AWS::DMS::ReplicationInstance | io.kloudformation.resource.aws.dms.ReplicationInstance |
AWS::DMS::ReplicationSubnetGroup | io.kloudformation.resource.aws.dms.ReplicationSubnetGroup |
AWS::DMS::ReplicationTask | io.kloudformation.resource.aws.dms.ReplicationTask |
AWS DataPipeline | |
AWS::DataPipeline::Pipeline | io.kloudformation.resource.aws.datapipeline.Pipeline |
AWS DirectoryService | |
AWS::DirectoryService::MicrosoftAD | io.kloudformation.resource.aws.directoryservice.MicrosoftAD |
AWS::DirectoryService::SimpleAD | io.kloudformation.resource.aws.directoryservice.SimpleAD |
AWS DocDB | |
AWS::DocDB::DBCluster | io.kloudformation.resource.aws.docdb.DBCluster |
AWS::DocDB::DBClusterParameterGroup | io.kloudformation.resource.aws.docdb.DBClusterParameterGroup |
AWS::DocDB::DBInstance | io.kloudformation.resource.aws.docdb.DBInstance |
AWS::DocDB::DBSubnetGroup | io.kloudformation.resource.aws.docdb.DBSubnetGroup |
AWS DynamoDB | |
AWS::DynamoDB::Table | io.kloudformation.resource.aws.dynamodb.Table |
AWS EC2 | |
AWS::EC2::CustomerGateway | io.kloudformation.resource.aws.ec2.CustomerGateway |
AWS::EC2::DHCPOptions | io.kloudformation.resource.aws.ec2.DHCPOptions |
AWS::EC2::EC2Fleet | io.kloudformation.resource.aws.ec2.EC2Fleet |
AWS::EC2::EIP | io.kloudformation.resource.aws.ec2.EIP |
AWS::EC2::EIPAssociation | io.kloudformation.resource.aws.ec2.EIPAssociation |
AWS::EC2::EgressOnlyInternetGateway | io.kloudformation.resource.aws.ec2.EgressOnlyInternetGateway |
AWS::EC2::FlowLog | io.kloudformation.resource.aws.ec2.FlowLog |
AWS::EC2::Host | io.kloudformation.resource.aws.ec2.Host |
AWS::EC2::Instance | io.kloudformation.resource.aws.ec2.Instance |
AWS::EC2::InternetGateway | io.kloudformation.resource.aws.ec2.InternetGateway |
AWS::EC2::LaunchTemplate | io.kloudformation.resource.aws.ec2.LaunchTemplate |
AWS::EC2::NatGateway | io.kloudformation.resource.aws.ec2.NatGateway |
AWS::EC2::NetworkAcl | io.kloudformation.resource.aws.ec2.NetworkAcl |
AWS::EC2::NetworkAclEntry | io.kloudformation.resource.aws.ec2.NetworkAclEntry |
AWS::EC2::NetworkInterface | io.kloudformation.resource.aws.ec2.NetworkInterface |
AWS::EC2::NetworkInterfaceAttachment | io.kloudformation.resource.aws.ec2.NetworkInterfaceAttachment |
AWS::EC2::NetworkInterfacePermission | io.kloudformation.resource.aws.ec2.NetworkInterfacePermission |
AWS::EC2::PlacementGroup | io.kloudformation.resource.aws.ec2.PlacementGroup |
AWS::EC2::Route | io.kloudformation.resource.aws.ec2.Route |
AWS::EC2::RouteTable | io.kloudformation.resource.aws.ec2.RouteTable |
AWS::EC2::SecurityGroup | io.kloudformation.resource.aws.ec2.SecurityGroup |
AWS::EC2::SecurityGroupEgress | io.kloudformation.resource.aws.ec2.SecurityGroupEgress |
AWS::EC2::SecurityGroupIngress | io.kloudformation.resource.aws.ec2.SecurityGroupIngress |
AWS::EC2::SpotFleet | io.kloudformation.resource.aws.ec2.SpotFleet |
AWS::EC2::Subnet | io.kloudformation.resource.aws.ec2.Subnet |
AWS::EC2::SubnetCidrBlock | io.kloudformation.resource.aws.ec2.SubnetCidrBlock |
AWS::EC2::SubnetNetworkAclAssociation | io.kloudformation.resource.aws.ec2.SubnetNetworkAclAssociation |
AWS::EC2::SubnetRouteTableAssociation | io.kloudformation.resource.aws.ec2.SubnetRouteTableAssociation |
AWS::EC2::TransitGateway | io.kloudformation.resource.aws.ec2.TransitGateway |
AWS::EC2::TransitGatewayAttachment | io.kloudformation.resource.aws.ec2.TransitGatewayAttachment |
AWS::EC2::TransitGatewayRoute | io.kloudformation.resource.aws.ec2.TransitGatewayRoute |
AWS::EC2::TransitGatewayRouteTable | io.kloudformation.resource.aws.ec2.TransitGatewayRouteTable |
AWS::EC2::TransitGatewayRouteTableAssociation | io.kloudformation.resource.aws.ec2.TransitGatewayRouteTableAssociation |
AWS::EC2::TransitGatewayRouteTablePropagation | io.kloudformation.resource.aws.ec2.TransitGatewayRouteTablePropagation |
AWS::EC2::TrunkInterfaceAssociation | io.kloudformation.resource.aws.ec2.TrunkInterfaceAssociation |
AWS::EC2::VPC | io.kloudformation.resource.aws.ec2.VPC |
AWS::EC2::VPCCidrBlock | io.kloudformation.resource.aws.ec2.VPCCidrBlock |
AWS::EC2::VPCDHCPOptionsAssociation | io.kloudformation.resource.aws.ec2.VPCDHCPOptionsAssociation |
AWS::EC2::VPCEndpoint | io.kloudformation.resource.aws.ec2.VPCEndpoint |
AWS::EC2::VPCEndpointConnectionNotification | io.kloudformation.resource.aws.ec2.VPCEndpointConnectionNotification |
AWS::EC2::VPCEndpointService | io.kloudformation.resource.aws.ec2.VPCEndpointService |
AWS::EC2::VPCEndpointServicePermissions | io.kloudformation.resource.aws.ec2.VPCEndpointServicePermissions |
AWS::EC2::VPCGatewayAttachment | io.kloudformation.resource.aws.ec2.VPCGatewayAttachment |
AWS::EC2::VPCPeeringConnection | io.kloudformation.resource.aws.ec2.VPCPeeringConnection |
AWS::EC2::VPNConnection | io.kloudformation.resource.aws.ec2.VPNConnection |
AWS::EC2::VPNConnectionRoute | io.kloudformation.resource.aws.ec2.VPNConnectionRoute |
AWS::EC2::VPNGateway | io.kloudformation.resource.aws.ec2.VPNGateway |
AWS::EC2::VPNGatewayRoutePropagation | io.kloudformation.resource.aws.ec2.VPNGatewayRoutePropagation |
AWS::EC2::Volume | io.kloudformation.resource.aws.ec2.Volume |
AWS::EC2::VolumeAttachment | io.kloudformation.resource.aws.ec2.VolumeAttachment |
AWS ECR | |
AWS::ECR::Repository | io.kloudformation.resource.aws.ecr.Repository |
AWS ECS | |
AWS::ECS::Cluster | io.kloudformation.resource.aws.ecs.Cluster |
AWS::ECS::Service | io.kloudformation.resource.aws.ecs.Service |
AWS::ECS::TaskDefinition | io.kloudformation.resource.aws.ecs.TaskDefinition |
AWS EFS | |
AWS::EFS::FileSystem | io.kloudformation.resource.aws.efs.FileSystem |
AWS::EFS::MountTarget | io.kloudformation.resource.aws.efs.MountTarget |
AWS EKS | |
AWS::EKS::Cluster | io.kloudformation.resource.aws.eks.Cluster |
AWS EMR | |
AWS::EMR::Cluster | io.kloudformation.resource.aws.emr.Cluster |
AWS::EMR::InstanceFleetConfig | io.kloudformation.resource.aws.emr.InstanceFleetConfig |
AWS::EMR::InstanceGroupConfig | io.kloudformation.resource.aws.emr.InstanceGroupConfig |
AWS::EMR::SecurityConfiguration | io.kloudformation.resource.aws.emr.SecurityConfiguration |
AWS::EMR::Step | io.kloudformation.resource.aws.emr.Step |
AWS ElastiCache | |
AWS::ElastiCache::CacheCluster | io.kloudformation.resource.aws.elasticache.CacheCluster |
AWS::ElastiCache::ParameterGroup | io.kloudformation.resource.aws.elasticache.ParameterGroup |
AWS::ElastiCache::ReplicationGroup | io.kloudformation.resource.aws.elasticache.ReplicationGroup |
AWS::ElastiCache::SecurityGroup | io.kloudformation.resource.aws.elasticache.SecurityGroup |
AWS::ElastiCache::SecurityGroupIngress | io.kloudformation.resource.aws.elasticache.SecurityGroupIngress |
AWS::ElastiCache::SubnetGroup | io.kloudformation.resource.aws.elasticache.SubnetGroup |
AWS ElasticBeanstalk | |
AWS::ElasticBeanstalk::Application | io.kloudformation.resource.aws.elasticbeanstalk.Application |
AWS::ElasticBeanstalk::ApplicationVersion | io.kloudformation.resource.aws.elasticbeanstalk.ApplicationVersion |
AWS::ElasticBeanstalk::ConfigurationTemplate | io.kloudformation.resource.aws.elasticbeanstalk.ConfigurationTemplate |
AWS::ElasticBeanstalk::Environment | io.kloudformation.resource.aws.elasticbeanstalk.Environment |
AWS ElasticLoadBalancing | |
AWS::ElasticLoadBalancing::LoadBalancer | io.kloudformation.resource.aws.elasticloadbalancing.LoadBalancer |
AWS ElasticLoadBalancingV2 | |
AWS::ElasticLoadBalancingV2::Listener | io.kloudformation.resource.aws.elasticloadbalancingv2.Listener |
AWS::ElasticLoadBalancingV2::ListenerCertificate | io.kloudformation.resource.aws.elasticloadbalancingv2.ListenerCertificate |
AWS::ElasticLoadBalancingV2::ListenerRule | io.kloudformation.resource.aws.elasticloadbalancingv2.ListenerRule |
AWS::ElasticLoadBalancingV2::LoadBalancer | io.kloudformation.resource.aws.elasticloadbalancingv2.LoadBalancer |
AWS::ElasticLoadBalancingV2::TargetGroup | io.kloudformation.resource.aws.elasticloadbalancingv2.TargetGroup |
AWS Elasticsearch | |
AWS::Elasticsearch::Domain | io.kloudformation.resource.aws.elasticsearch.Domain |
AWS Events | |
AWS::Events::EventBusPolicy | io.kloudformation.resource.aws.events.EventBusPolicy |
AWS::Events::Rule | io.kloudformation.resource.aws.events.Rule |
AWS FSx | |
AWS::FSx::FileSystem | io.kloudformation.resource.aws.fsx.FileSystem |
AWS GameLift | |
AWS::GameLift::Alias | io.kloudformation.resource.aws.gamelift.Alias |
AWS::GameLift::Build | io.kloudformation.resource.aws.gamelift.Build |
AWS::GameLift::Fleet | io.kloudformation.resource.aws.gamelift.Fleet |
AWS Glue | |
AWS::Glue::Classifier | io.kloudformation.resource.aws.glue.Classifier |
AWS::Glue::Connection | io.kloudformation.resource.aws.glue.Connection |
AWS::Glue::Crawler | io.kloudformation.resource.aws.glue.Crawler |
AWS::Glue::Database | io.kloudformation.resource.aws.glue.Database |
AWS::Glue::DevEndpoint | io.kloudformation.resource.aws.glue.DevEndpoint |
AWS::Glue::Job | io.kloudformation.resource.aws.glue.Job |
AWS::Glue::Partition | io.kloudformation.resource.aws.glue.Partition |
AWS::Glue::Table | io.kloudformation.resource.aws.glue.Table |
AWS::Glue::Trigger | io.kloudformation.resource.aws.glue.Trigger |
AWS GuardDuty | |
AWS::GuardDuty::Detector | io.kloudformation.resource.aws.guardduty.Detector |
AWS::GuardDuty::Filter | io.kloudformation.resource.aws.guardduty.Filter |
AWS::GuardDuty::IPSet | io.kloudformation.resource.aws.guardduty.IPSet |
AWS::GuardDuty::Master | io.kloudformation.resource.aws.guardduty.Master |
AWS::GuardDuty::Member | io.kloudformation.resource.aws.guardduty.Member |
AWS::GuardDuty::ThreatIntelSet | io.kloudformation.resource.aws.guardduty.ThreatIntelSet |
AWS IAM | |
AWS::IAM::AccessKey | io.kloudformation.resource.aws.iam.AccessKey |
AWS::IAM::Group | io.kloudformation.resource.aws.iam.Group |
AWS::IAM::InstanceProfile | io.kloudformation.resource.aws.iam.InstanceProfile |
AWS::IAM::ManagedPolicy | io.kloudformation.resource.aws.iam.ManagedPolicy |
AWS::IAM::Policy | io.kloudformation.resource.aws.iam.Policy |
AWS::IAM::Role | io.kloudformation.resource.aws.iam.Role |
AWS::IAM::ServiceLinkedRole | io.kloudformation.resource.aws.iam.ServiceLinkedRole |
AWS::IAM::User | io.kloudformation.resource.aws.iam.User |
AWS::IAM::UserToGroupAddition | io.kloudformation.resource.aws.iam.UserToGroupAddition |
AWS Inspector | |
AWS::Inspector::AssessmentTarget | io.kloudformation.resource.aws.inspector.AssessmentTarget |
AWS::Inspector::AssessmentTemplate | io.kloudformation.resource.aws.inspector.AssessmentTemplate |
AWS::Inspector::ResourceGroup | io.kloudformation.resource.aws.inspector.ResourceGroup |
AWS IoT | |
AWS::IoT::Certificate | io.kloudformation.resource.aws.iot.Certificate |
AWS::IoT::Policy | io.kloudformation.resource.aws.iot.Policy |
AWS::IoT::PolicyPrincipalAttachment | io.kloudformation.resource.aws.iot.PolicyPrincipalAttachment |
AWS::IoT::Thing | io.kloudformation.resource.aws.iot.Thing |
AWS::IoT::ThingPrincipalAttachment | io.kloudformation.resource.aws.iot.ThingPrincipalAttachment |
AWS::IoT::TopicRule | io.kloudformation.resource.aws.iot.TopicRule |
AWS IoT1Click | |
AWS::IoT1Click::Device | io.kloudformation.resource.aws.iot1click.Device |
AWS::IoT1Click::Placement | io.kloudformation.resource.aws.iot1click.Placement |
AWS::IoT1Click::Project | io.kloudformation.resource.aws.iot1click.Project |
AWS IoTAnalytics | |
AWS::IoTAnalytics::Channel | io.kloudformation.resource.aws.iotanalytics.Channel |
AWS::IoTAnalytics::Dataset | io.kloudformation.resource.aws.iotanalytics.Dataset |
AWS::IoTAnalytics::Datastore | io.kloudformation.resource.aws.iotanalytics.Datastore |
AWS::IoTAnalytics::Pipeline | io.kloudformation.resource.aws.iotanalytics.Pipeline |
AWS KMS | |
AWS::KMS::Alias | io.kloudformation.resource.aws.kms.Alias |
AWS::KMS::Key | io.kloudformation.resource.aws.kms.Key |
AWS Kinesis | |
AWS::Kinesis::Stream | io.kloudformation.resource.aws.kinesis.Stream |
AWS::Kinesis::StreamConsumer | io.kloudformation.resource.aws.kinesis.StreamConsumer |
AWS KinesisAnalytics | |
AWS::KinesisAnalytics::Application | io.kloudformation.resource.aws.kinesisanalytics.Application |
AWS::KinesisAnalytics::ApplicationOutput | io.kloudformation.resource.aws.kinesisanalytics.ApplicationOutput |
AWS::KinesisAnalytics::ApplicationReferenceDataSource | io.kloudformation.resource.aws.kinesisanalytics.ApplicationReferenceDataSource |
AWS KinesisAnalyticsV2 | |
AWS::KinesisAnalyticsV2::Application | io.kloudformation.resource.aws.kinesisanalyticsv2.Application |
AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption | io.kloudformation.resource.aws.kinesisanalyticsv2.ApplicationCloudWatchLoggingOption |
AWS::KinesisAnalyticsV2::ApplicationOutput | io.kloudformation.resource.aws.kinesisanalyticsv2.ApplicationOutput |
AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource | io.kloudformation.resource.aws.kinesisanalyticsv2.ApplicationReferenceDataSource |
AWS KinesisFirehose | |
AWS::KinesisFirehose::DeliveryStream | io.kloudformation.resource.aws.kinesisfirehose.DeliveryStream |
AWS Lambda | |
AWS::Lambda::Alias | io.kloudformation.resource.aws.lambda.Alias |
AWS::Lambda::EventSourceMapping | io.kloudformation.resource.aws.lambda.EventSourceMapping |
AWS::Lambda::Function | io.kloudformation.resource.aws.lambda.Function |
AWS::Lambda::LayerVersion | io.kloudformation.resource.aws.lambda.LayerVersion |
AWS::Lambda::LayerVersionPermission | io.kloudformation.resource.aws.lambda.LayerVersionPermission |
AWS::Lambda::Permission | io.kloudformation.resource.aws.lambda.Permission |
AWS::Lambda::Version | io.kloudformation.resource.aws.lambda.Version |
AWS Logs | |
AWS::Logs::Destination | io.kloudformation.resource.aws.logs.Destination |
AWS::Logs::LogGroup | io.kloudformation.resource.aws.logs.LogGroup |
AWS::Logs::LogStream | io.kloudformation.resource.aws.logs.LogStream |
AWS::Logs::MetricFilter | io.kloudformation.resource.aws.logs.MetricFilter |
AWS::Logs::SubscriptionFilter | io.kloudformation.resource.aws.logs.SubscriptionFilter |
AWS Neptune | |
AWS::Neptune::DBCluster | io.kloudformation.resource.aws.neptune.DBCluster |
AWS::Neptune::DBClusterParameterGroup | io.kloudformation.resource.aws.neptune.DBClusterParameterGroup |
AWS::Neptune::DBInstance | io.kloudformation.resource.aws.neptune.DBInstance |
AWS::Neptune::DBParameterGroup | io.kloudformation.resource.aws.neptune.DBParameterGroup |
AWS::Neptune::DBSubnetGroup | io.kloudformation.resource.aws.neptune.DBSubnetGroup |
AWS OpsWorks | |
AWS::OpsWorks::App | io.kloudformation.resource.aws.opsworks.App |
AWS::OpsWorks::ElasticLoadBalancerAttachment | io.kloudformation.resource.aws.opsworks.ElasticLoadBalancerAttachment |
AWS::OpsWorks::Instance | io.kloudformation.resource.aws.opsworks.Instance |
AWS::OpsWorks::Layer | io.kloudformation.resource.aws.opsworks.Layer |
AWS::OpsWorks::Stack | io.kloudformation.resource.aws.opsworks.Stack |
AWS::OpsWorks::UserProfile | io.kloudformation.resource.aws.opsworks.UserProfile |
AWS::OpsWorks::Volume | io.kloudformation.resource.aws.opsworks.Volume |
AWS OpsWorksCM | |
AWS::OpsWorksCM::Server | io.kloudformation.resource.aws.opsworkscm.Server |
AWS RAM | |
AWS::RAM::ResourceShare | io.kloudformation.resource.aws.ram.ResourceShare |
AWS RDS | |
AWS::RDS::DBCluster | io.kloudformation.resource.aws.rds.DBCluster |
AWS::RDS::DBClusterParameterGroup | io.kloudformation.resource.aws.rds.DBClusterParameterGroup |
AWS::RDS::DBInstance | io.kloudformation.resource.aws.rds.DBInstance |
AWS::RDS::DBParameterGroup | io.kloudformation.resource.aws.rds.DBParameterGroup |
AWS::RDS::DBSecurityGroup | io.kloudformation.resource.aws.rds.DBSecurityGroup |
AWS::RDS::DBSecurityGroupIngress | io.kloudformation.resource.aws.rds.DBSecurityGroupIngress |
AWS::RDS::DBSubnetGroup | io.kloudformation.resource.aws.rds.DBSubnetGroup |
AWS::RDS::EventSubscription | io.kloudformation.resource.aws.rds.EventSubscription |
AWS::RDS::OptionGroup | io.kloudformation.resource.aws.rds.OptionGroup |
AWS Redshift | |
AWS::Redshift::Cluster | io.kloudformation.resource.aws.redshift.Cluster |
AWS::Redshift::ClusterParameterGroup | io.kloudformation.resource.aws.redshift.ClusterParameterGroup |
AWS::Redshift::ClusterSecurityGroup | io.kloudformation.resource.aws.redshift.ClusterSecurityGroup |
AWS::Redshift::ClusterSecurityGroupIngress | io.kloudformation.resource.aws.redshift.ClusterSecurityGroupIngress |
AWS::Redshift::ClusterSubnetGroup | io.kloudformation.resource.aws.redshift.ClusterSubnetGroup |
AWS RoboMaker | |
AWS::RoboMaker::Fleet | io.kloudformation.resource.aws.robomaker.Fleet |
AWS::RoboMaker::Robot | io.kloudformation.resource.aws.robomaker.Robot |
AWS::RoboMaker::RobotApplication | io.kloudformation.resource.aws.robomaker.RobotApplication |
AWS::RoboMaker::RobotApplicationVersion | io.kloudformation.resource.aws.robomaker.RobotApplicationVersion |
AWS::RoboMaker::SimulationApplication | io.kloudformation.resource.aws.robomaker.SimulationApplication |
AWS::RoboMaker::SimulationApplicationVersion | io.kloudformation.resource.aws.robomaker.SimulationApplicationVersion |
AWS Route53 | |
AWS::Route53::HealthCheck | io.kloudformation.resource.aws.route53.HealthCheck |
AWS::Route53::HostedZone | io.kloudformation.resource.aws.route53.HostedZone |
AWS::Route53::RecordSet | io.kloudformation.resource.aws.route53.RecordSet |
AWS::Route53::RecordSetGroup | io.kloudformation.resource.aws.route53.RecordSetGroup |
AWS Route53Resolver | |
AWS::Route53Resolver::ResolverEndpoint | io.kloudformation.resource.aws.route53resolver.ResolverEndpoint |
AWS::Route53Resolver::ResolverRule | io.kloudformation.resource.aws.route53resolver.ResolverRule |
AWS::Route53Resolver::ResolverRuleAssociation | io.kloudformation.resource.aws.route53resolver.ResolverRuleAssociation |
AWS S3 | |
AWS::S3::Bucket | io.kloudformation.resource.aws.s3.Bucket |
AWS::S3::BucketPolicy | io.kloudformation.resource.aws.s3.BucketPolicy |
AWS SDB | |
AWS::SDB::Domain | io.kloudformation.resource.aws.sdb.Domain |
AWS SES | |
AWS::SES::ConfigurationSet | io.kloudformation.resource.aws.ses.ConfigurationSet |
AWS::SES::ConfigurationSetEventDestination | io.kloudformation.resource.aws.ses.ConfigurationSetEventDestination |
AWS::SES::ReceiptFilter | io.kloudformation.resource.aws.ses.ReceiptFilter |
AWS::SES::ReceiptRule | io.kloudformation.resource.aws.ses.ReceiptRule |
AWS::SES::ReceiptRuleSet | io.kloudformation.resource.aws.ses.ReceiptRuleSet |
AWS::SES::Template | io.kloudformation.resource.aws.ses.Template |
AWS SNS | |
AWS::SNS::Subscription | io.kloudformation.resource.aws.sns.Subscription |
AWS::SNS::Topic | io.kloudformation.resource.aws.sns.Topic |
AWS::SNS::TopicPolicy | io.kloudformation.resource.aws.sns.TopicPolicy |
AWS SQS | |
AWS::SQS::Queue | io.kloudformation.resource.aws.sqs.Queue |
AWS::SQS::QueuePolicy | io.kloudformation.resource.aws.sqs.QueuePolicy |
AWS SSM | |
AWS::SSM::Association | io.kloudformation.resource.aws.ssm.Association |
AWS::SSM::Document | io.kloudformation.resource.aws.ssm.Document |
AWS::SSM::MaintenanceWindow | io.kloudformation.resource.aws.ssm.MaintenanceWindow |
AWS::SSM::MaintenanceWindowTarget | io.kloudformation.resource.aws.ssm.MaintenanceWindowTarget |
AWS::SSM::MaintenanceWindowTask | io.kloudformation.resource.aws.ssm.MaintenanceWindowTask |
AWS::SSM::Parameter | io.kloudformation.resource.aws.ssm.Parameter |
AWS::SSM::PatchBaseline | io.kloudformation.resource.aws.ssm.PatchBaseline |
AWS::SSM::ResourceDataSync | io.kloudformation.resource.aws.ssm.ResourceDataSync |
AWS SageMaker | |
AWS::SageMaker::Endpoint | io.kloudformation.resource.aws.sagemaker.Endpoint |
AWS::SageMaker::EndpointConfig | io.kloudformation.resource.aws.sagemaker.EndpointConfig |
AWS::SageMaker::Model | io.kloudformation.resource.aws.sagemaker.Model |
AWS::SageMaker::NotebookInstance | io.kloudformation.resource.aws.sagemaker.NotebookInstance |
AWS::SageMaker::NotebookInstanceLifecycleConfig | io.kloudformation.resource.aws.sagemaker.NotebookInstanceLifecycleConfig |
AWS SecretsManager | |
AWS::SecretsManager::ResourcePolicy | io.kloudformation.resource.aws.secretsmanager.ResourcePolicy |
AWS::SecretsManager::RotationSchedule | io.kloudformation.resource.aws.secretsmanager.RotationSchedule |
AWS::SecretsManager::Secret | io.kloudformation.resource.aws.secretsmanager.Secret |
AWS::SecretsManager::SecretTargetAttachment | io.kloudformation.resource.aws.secretsmanager.SecretTargetAttachment |
AWS ServiceCatalog | |
AWS::ServiceCatalog::AcceptedPortfolioShare | io.kloudformation.resource.aws.servicecatalog.AcceptedPortfolioShare |
AWS::ServiceCatalog::CloudFormationProduct | io.kloudformation.resource.aws.servicecatalog.CloudFormationProduct |
AWS::ServiceCatalog::CloudFormationProvisionedProduct | io.kloudformation.resource.aws.servicecatalog.CloudFormationProvisionedProduct |
AWS::ServiceCatalog::LaunchNotificationConstraint | io.kloudformation.resource.aws.servicecatalog.LaunchNotificationConstraint |
AWS::ServiceCatalog::LaunchRoleConstraint | io.kloudformation.resource.aws.servicecatalog.LaunchRoleConstraint |
AWS::ServiceCatalog::LaunchTemplateConstraint | io.kloudformation.resource.aws.servicecatalog.LaunchTemplateConstraint |
AWS::ServiceCatalog::Portfolio | io.kloudformation.resource.aws.servicecatalog.Portfolio |
AWS::ServiceCatalog::PortfolioPrincipalAssociation | io.kloudformation.resource.aws.servicecatalog.PortfolioPrincipalAssociation |
AWS::ServiceCatalog::PortfolioProductAssociation | io.kloudformation.resource.aws.servicecatalog.PortfolioProductAssociation |
AWS::ServiceCatalog::PortfolioShare | io.kloudformation.resource.aws.servicecatalog.PortfolioShare |
AWS::ServiceCatalog::TagOption | io.kloudformation.resource.aws.servicecatalog.TagOption |
AWS::ServiceCatalog::TagOptionAssociation | io.kloudformation.resource.aws.servicecatalog.TagOptionAssociation |
AWS ServiceDiscovery | |
AWS::ServiceDiscovery::HttpNamespace | io.kloudformation.resource.aws.servicediscovery.HttpNamespace |
AWS::ServiceDiscovery::Instance | io.kloudformation.resource.aws.servicediscovery.Instance |
AWS::ServiceDiscovery::PrivateDnsNamespace | io.kloudformation.resource.aws.servicediscovery.PrivateDnsNamespace |
AWS::ServiceDiscovery::PublicDnsNamespace | io.kloudformation.resource.aws.servicediscovery.PublicDnsNamespace |
AWS::ServiceDiscovery::Service | io.kloudformation.resource.aws.servicediscovery.Service |
AWS StepFunctions | |
AWS::StepFunctions::Activity | io.kloudformation.resource.aws.stepfunctions.Activity |
AWS::StepFunctions::StateMachine | io.kloudformation.resource.aws.stepfunctions.StateMachine |
AWS WAF | |
AWS::WAF::ByteMatchSet | io.kloudformation.resource.aws.waf.ByteMatchSet |
AWS::WAF::IPSet | io.kloudformation.resource.aws.waf.IPSet |
AWS::WAF::Rule | io.kloudformation.resource.aws.waf.Rule |
AWS::WAF::SizeConstraintSet | io.kloudformation.resource.aws.waf.SizeConstraintSet |
AWS::WAF::SqlInjectionMatchSet | io.kloudformation.resource.aws.waf.SqlInjectionMatchSet |
AWS::WAF::WebACL | io.kloudformation.resource.aws.waf.WebACL |
AWS::WAF::XssMatchSet | io.kloudformation.resource.aws.waf.XssMatchSet |
AWS WAFRegional | |
AWS::WAFRegional::ByteMatchSet | io.kloudformation.resource.aws.wafregional.ByteMatchSet |
AWS::WAFRegional::IPSet | io.kloudformation.resource.aws.wafregional.IPSet |
AWS::WAFRegional::Rule | io.kloudformation.resource.aws.wafregional.Rule |
AWS::WAFRegional::SizeConstraintSet | io.kloudformation.resource.aws.wafregional.SizeConstraintSet |
AWS::WAFRegional::SqlInjectionMatchSet | io.kloudformation.resource.aws.wafregional.SqlInjectionMatchSet |
AWS::WAFRegional::WebACL | io.kloudformation.resource.aws.wafregional.WebACL |
AWS::WAFRegional::WebACLAssociation | io.kloudformation.resource.aws.wafregional.WebACLAssociation |
AWS::WAFRegional::XssMatchSet | io.kloudformation.resource.aws.wafregional.XssMatchSet |
AWS WorkSpaces | |
AWS::WorkSpaces::Workspace | io.kloudformation.resource.aws.workspaces.Workspace |
Alexa ASK | |
Alexa::ASK::Skill | io.kloudformation.resource.alexa.ask.Skill |