Skip to content

Commit

Permalink
Automated SDK generation @ aws-cloudformation-user-guide 19dc52cd3f20…
Browse files Browse the repository at this point in the history
…07d6d268b65b739ffb5ebf8c1e76 (#1781)

*Automated PR*
  • Loading branch information
pulumi-bot authored Oct 22, 2024
1 parent 288a106 commit abf8402
Show file tree
Hide file tree
Showing 213 changed files with 8,277 additions and 957 deletions.
2 changes: 1 addition & 1 deletion .docs.version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
cddd40c58fe29009edc87b434dff37ed2144bea0
e85b52d7ef350840f279cc004f4b97f62cb4c71c
6 changes: 3 additions & 3 deletions aws-cloudformation-schema/aws-apigateway-vpclink.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"properties" : {
"Name" : {
"description" : "The name used to label and identify the VPC link.",
"description" : "",
"type" : "string"
},
"Description" : {
"description" : "The description of the VPC link.",
"description" : "",
"type" : "string"
},
"Tags" : {
Expand All @@ -21,7 +21,7 @@
}
},
"TargetArns" : {
"description" : "The ARN of the network load balancer of the VPC targeted by the VPC link. The network load balancer must be owned by the same AWS-account of the API owner.",
"description" : "",
"type" : "array",
"uniqueItems" : false,
"insertionOrder" : false,
Expand Down
4 changes: 2 additions & 2 deletions aws-cloudformation-schema/aws-apigatewayv2-domainname.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"type" : "string"
},
"DomainName" : {
"description" : "The custom domain name for your API in Amazon API Gateway. Uppercase letters are not supported.",
"description" : "The custom domain name for your API in Amazon API Gateway. Uppercase letters and the underscore (``_``) character are not supported.",
"type" : "string"
},
"DomainNameConfigurations" : {
Expand Down Expand Up @@ -80,7 +80,7 @@
"description" : "An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source."
}
},
"description" : "The ``DomainNameConfiguration`` property type specifies the configuration for an API's domain name.\n ``DomainNameConfiguration`` is a property of the [AWS::ApiGatewayV2::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html) resource."
"description" : "The ``DomainNameConfiguration`` property type specifies the configuration for an API's domain name.\n ``DomainNameConfiguration`` is a property of the [AWS::ApiGatewayV2::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html) resource."
}
},
"required" : [ "DomainName" ],
Expand Down
31 changes: 27 additions & 4 deletions aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"createOnlyProperties" : [ "/properties/InstanceId", "/properties/AutoScalingGroupName" ],
"primaryIdentifier" : [ "/properties/AutoScalingGroupName" ],
"required" : [ "MinSize", "MaxSize" ],
"conditionalCreateOnlyProperties" : [ "/properties/LaunchConfigurationName", "/properties/VPCZoneIdentifier", "/properties/PlacementGroup", "/properties/LaunchTemplate", "/properties/MixedInstancesPolicy" ],
"conditionalCreateOnlyProperties" : [ "/properties/LaunchConfigurationName", "/properties/VPCZoneIdentifier", "/properties/LaunchTemplate", "/properties/MixedInstancesPolicy" ],
"propertyTransform" : {
"/properties/LaunchConfigurationName" : "InstanceId? AutoScalingGroupName : LaunchConfigurationName"
},
Expand All @@ -21,11 +21,11 @@
"permissions" : [ "autoscaling:Describe*", "managed-fleets:Get*" ]
},
"create" : {
"permissions" : [ "autoscaling:CreateAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:Describe*", "autoscaling:EnableMetricsCollection", "autoscaling:PutNotificationConfiguration", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:Get*", "ec2:RunInstances", "elasticloadbalancing:Describe*", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:Get*", "managed-fleets:CreateAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:Get*" ],
"permissions" : [ "autoscaling:CreateAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:Describe*", "autoscaling:EnableMetricsCollection", "autoscaling:PutNotificationConfiguration", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:Get*", "ec2:RunInstances", "elasticloadbalancing:Describe*", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:Get*", "managed-fleets:CreateAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:Get*", "vpc-lattice:DeregisterTargets", "vpc-lattice:GetTargetGroup", "vpc-lattice:ListTargets", "vpc-lattice:RegisterTargets" ],
"timeoutInMinutes" : 360
},
"update" : {
"permissions" : [ "autoscaling:UpdateAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:DeleteTags", "autoscaling:Describe*", "autoscaling:EnableMetricsCollection", "autoscaling:DisableMetricsCollection", "autoscaling:PutNotificationConfiguration", "autoscaling:DeleteNotificationConfiguration", "autoscaling:DetachLoadBalancerTargetGroups", "autoscaling:AttachLoadBalancerTargetGroups", "autoscaling:AttachLoadBalancers", "autoscaling:DetachLoadBalancers", "autoscaling:AttachTrafficSources", "autoscaling:DetachTrafficSources", "autoscaling:DeleteLifecycleHook", "autoscaling:PutLifecycleHook", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:Get*", "ec2:RunInstances", "elasticloadbalancing:Describe*", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:Get*", "managed-fleets:RegisterAutoScalingGroup", "managed-fleets:DeregisterAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:Get*" ],
"permissions" : [ "autoscaling:UpdateAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:DeleteTags", "autoscaling:Describe*", "autoscaling:EnableMetricsCollection", "autoscaling:DisableMetricsCollection", "autoscaling:PutNotificationConfiguration", "autoscaling:DeleteNotificationConfiguration", "autoscaling:DetachLoadBalancerTargetGroups", "autoscaling:AttachLoadBalancerTargetGroups", "autoscaling:AttachLoadBalancers", "autoscaling:DetachLoadBalancers", "autoscaling:AttachTrafficSources", "autoscaling:DetachTrafficSources", "autoscaling:DeleteLifecycleHook", "autoscaling:PutLifecycleHook", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:Get*", "ec2:RunInstances", "elasticloadbalancing:Describe*", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:Get*", "managed-fleets:RegisterAutoScalingGroup", "managed-fleets:DeregisterAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:Get*", "vpc-lattice:DeregisterTargets", "vpc-lattice:GetTargetGroup", "vpc-lattice:ListTargets", "vpc-lattice:RegisterTargets" ],
"timeoutInMinutes" : 660
},
"list" : {
Expand Down Expand Up @@ -389,6 +389,20 @@
}
}
},
"TrafficSourceIdentifier" : {
"description" : "",
"additionalProperties" : false,
"type" : "object",
"properties" : {
"Type" : {
"type" : "string"
},
"Identifier" : {
"type" : "string"
}
},
"required" : [ "Identifier", "Type" ]
},
"MixedInstancesPolicy" : {
"description" : "Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.\n A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.\n There are key differences between Spot Instances and On-Demand Instances:\n + The price for Spot Instances varies based on demand\n + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes\n \n When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group. \n ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.",
"additionalProperties" : false,
Expand Down Expand Up @@ -702,6 +716,15 @@
"description" : "The name of the Auto Scaling group. This name must be unique per Region per account.\n The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use a colon (:) in the name.",
"type" : "string"
},
"TrafficSources" : {
"uniqueItems" : true,
"description" : "",
"insertionOrder" : false,
"type" : "array",
"items" : {
"$ref" : "#/definitions/TrafficSourceIdentifier"
}
},
"DesiredCapacityType" : {
"description" : "The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports ``DesiredCapacityType`` for attribute-based instance type selection only. For more information, see [Create a mixed instances group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-attribute-based-instance-type-selection.html) in the *Amazon EC2 Auto Scaling User Guide*.\n By default, Amazon EC2 Auto Scaling specifies ``units``, which translates into number of instances.\n Valid values: ``units`` | ``vcpu`` | ``memory-mib``",
"type" : "string"
Expand All @@ -711,7 +734,7 @@
"type" : "string"
},
"HealthCheckType" : {
"description" : "A comma-separated value string of one or more health check types.\n The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.\n Only specify ``EC2`` if you must clear a value that was previously set.",
"description" : "A comma-separated value string of one or more health check types.\n The valid values are ``EC2``, ``EBS``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.\n Only specify ``EC2`` if you must clear a value that was previously set.",
"type" : "string"
},
"MaxInstanceLifetime" : {
Expand Down
3 changes: 3 additions & 0 deletions aws-cloudformation-schema/aws-autoscaling-warmpool.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@
"createOnlyProperties" : [ "/properties/AutoScalingGroupName" ],
"primaryIdentifier" : [ "/properties/AutoScalingGroupName" ],
"required" : [ "AutoScalingGroupName" ],
"tagging" : {
"taggable" : false
},
"handlers" : {
"create" : {
"permissions" : [ "autoscaling:PutWarmPool", "autoscaling:DescribeWarmPool", "autoscaling:DescribeAutoScalingGroups" ]
Expand Down
2 changes: 1 addition & 1 deletion aws-cloudformation-schema/aws-backup-backupplan.json
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@
"permissions" : [ "backup:GetBackupPlan", "backup:ListTags" ]
},
"create" : {
"permissions" : [ "backup:GetBackupPlan", "backup:TagResource", "backup:CreateBackupPlan" ]
"permissions" : [ "backup:GetBackupPlan", "backup:ListTags", "backup:TagResource", "backup:CreateBackupPlan" ]
},
"delete" : {
"permissions" : [ "backup:GetBackupPlan", "backup:DeleteBackupPlan" ]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
{
"typeName" : "AWS::Backup::LogicallyAirGappedBackupVault",
"description" : "Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault",
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"definitions" : {
"NotificationObjectType" : {
"type" : "object",
"additionalProperties" : false,
"properties" : {
"BackupVaultEvents" : {
"type" : "array",
"insertionOrder" : false,
"uniqueItems" : false,
"items" : {
"type" : "string"
}
},
"SNSTopicArn" : {
"type" : "string"
}
},
"required" : [ "SNSTopicArn", "BackupVaultEvents" ]
},
"BackupVaultNamePattern" : {
"type" : "string",
"pattern" : "^[a-zA-Z0-9\\-\\_]{2,50}$"
}
},
"properties" : {
"AccessPolicy" : {
"type" : [ "object", "string" ]
},
"BackupVaultName" : {
"$ref" : "#/definitions/BackupVaultNamePattern"
},
"MinRetentionDays" : {
"type" : "integer"
},
"MaxRetentionDays" : {
"type" : "integer"
},
"BackupVaultTags" : {
"type" : "object",
"additionalProperties" : false,
"patternProperties" : {
"^.{1,128}$" : {
"type" : "string"
}
}
},
"Notifications" : {
"$ref" : "#/definitions/NotificationObjectType"
},
"EncryptionKeyArn" : {
"type" : "string"
},
"BackupVaultArn" : {
"type" : "string"
},
"VaultState" : {
"type" : "string"
},
"VaultType" : {
"type" : "string"
}
},
"additionalProperties" : false,
"tagging" : {
"taggable" : true,
"tagOnCreate" : true,
"tagUpdatable" : true,
"cloudFormationSystemTags" : true,
"tagProperty" : "/properties/BackupVaultTags",
"permissions" : [ "backup:TagResource", "backup:UntagResource", "backup:ListTags" ]
},
"required" : [ "BackupVaultName", "MinRetentionDays", "MaxRetentionDays" ],
"createOnlyProperties" : [ "/properties/BackupVaultName", "/properties/MinRetentionDays", "/properties/MaxRetentionDays" ],
"readOnlyProperties" : [ "/properties/BackupVaultArn", "/properties/EncryptionKeyArn" ],
"primaryIdentifier" : [ "/properties/BackupVaultName" ],
"handlers" : {
"create" : {
"permissions" : [ "backup:TagResource", "backup:CreateLogicallyAirGappedBackupVault", "backup:PutBackupVaultAccessPolicy", "backup:PutBackupVaultNotifications", "backup-storage:Mount", "backup-storage:MountCapsule", "backup:DescribeBackupVault" ]
},
"read" : {
"permissions" : [ "backup:DescribeBackupVault", "backup:GetBackupVaultNotifications", "backup:GetBackupVaultAccessPolicy", "backup:ListTags" ]
},
"update" : {
"permissions" : [ "backup:DescribeBackupVault", "backup:DeleteBackupVaultAccessPolicy", "backup:DeleteBackupVaultNotifications", "backup:DeleteBackupVaultLockConfiguration", "backup:GetBackupVaultAccessPolicy", "backup:ListTags", "backup:TagResource", "backup:UntagResource", "backup:PutBackupVaultAccessPolicy", "backup:PutBackupVaultNotifications", "backup:PutBackupVaultLockConfiguration" ]
},
"delete" : {
"permissions" : [ "backup:DeleteBackupVault" ]
},
"list" : {
"permissions" : [ "backup:ListBackupVaults" ]
}
}
}
3 changes: 2 additions & 1 deletion aws-cloudformation-schema/aws-batch-computeenvironment.json
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,8 @@
"tagOnCreate" : true,
"tagUpdatable" : false,
"cloudFormationSystemTags" : false,
"tagProperty" : "/properties/Tags"
"tagProperty" : "/properties/Tags",
"permissions" : [ "Batch:TagResource", "Batch:UntagResource" ]
},
"required" : [ "Type" ],
"createOnlyProperties" : [ "/properties/ComputeResources/SpotIamFleetRole", "/properties/ComputeEnvironmentName", "/properties/Tags", "/properties/Type", "/properties/EksConfiguration" ],
Expand Down
3 changes: 2 additions & 1 deletion aws-cloudformation-schema/aws-batch-jobqueue.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,8 @@
"tagOnCreate" : true,
"tagUpdatable" : false,
"cloudFormationSystemTags" : false,
"tagProperty" : "/properties/Tags"
"tagProperty" : "/properties/Tags",
"permissions" : [ "Batch:TagResource", "Batch:UntagResource" ]
},
"required" : [ "ComputeEnvironmentOrder", "Priority" ],
"primaryIdentifier" : [ "/properties/JobQueueArn" ],
Expand Down
72 changes: 57 additions & 15 deletions aws-cloudformation-schema/aws-cognito-userpoolidentityprovider.json
Original file line number Diff line number Diff line change
@@ -1,36 +1,78 @@
{
"typeName" : "AWS::Cognito::UserPoolIdentityProvider",
"description" : "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider",
"additionalProperties" : false,
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
"tagging" : {
"taggable" : false,
"tagOnCreate" : false,
"tagUpdatable" : false,
"cloudFormationSystemTags" : false
},
"properties" : {
"ProviderName" : {
"type" : "string"
},
"UserPoolId" : {
"type" : "string"
},
"AttributeMapping" : {
"type" : "object"
},
"ProviderDetails" : {
"type" : "object"
"ProviderName" : {
"type" : "string"
},
"ProviderType" : {
"type" : "string"
},
"Id" : {
"type" : "string"
"ProviderDetails" : {
"type" : "object",
"patternProperties" : {
"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" : {
"type" : "string"
}
},
"additionalProperties" : false
},
"IdpIdentifiers" : {
"type" : "array",
"uniqueItems" : false,
"items" : {
"type" : "string"
}
},
"AttributeMapping" : {
"type" : "object",
"patternProperties" : {
"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" : {
"type" : "string"
}
},
"additionalProperties" : false
}
},
"required" : [ "ProviderName", "UserPoolId", "ProviderType" ],
"additionalProperties" : false,
"required" : [ "UserPoolId", "ProviderName", "ProviderType", "ProviderDetails" ],
"createOnlyProperties" : [ "/properties/UserPoolId", "/properties/ProviderName", "/properties/ProviderType" ],
"primaryIdentifier" : [ "/properties/Id" ],
"readOnlyProperties" : [ "/properties/Id" ]
"primaryIdentifier" : [ "/properties/UserPoolId", "/properties/ProviderName" ],
"handlers" : {
"create" : {
"permissions" : [ "cognito-idp:CreateIdentityProvider", "cognito-idp:DescribeIdentityProvider" ],
"timeoutInMinutes" : 2
},
"read" : {
"permissions" : [ "cognito-idp:DescribeIdentityProvider" ]
},
"update" : {
"permissions" : [ "cognito-idp:UpdateIdentityProvider", "cognito-idp:DescribeIdentityProvider" ],
"timeoutInMinutes" : 2
},
"delete" : {
"permissions" : [ "cognito-idp:DeleteIdentityProvider", "cognito-idp:DescribeIdentityProvider" ],
"timeoutInMinutes" : 2
},
"list" : {
"handlerSchema" : {
"properties" : {
"UserPoolId" : {
"$ref" : "resource-schema.json#/properties/UserPoolId"
}
},
"required" : [ "UserPoolId" ]
},
"permissions" : [ "cognito-idp:ListIdentityProviders" ]
}
}
}
1 change: 1 addition & 0 deletions aws-cloudformation-schema/aws-dynamodb-table.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"tagging" : {
"permissions" : [ "dynamodb:TagResource", "dynamodb:UntagResource", "dynamodb:ListTagsOfResource" ],
"taggable" : true,
"tagOnCreate" : true,
"tagUpdatable" : true,
Expand Down
6 changes: 5 additions & 1 deletion aws-cloudformation-schema/aws-ec2-capacityreservation.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,9 @@
},
"InstanceMatchCriteria" : {
"type" : "string"
},
"UnusedReservationBillingOwnerId" : {
"type" : "string"
}
},
"definitions" : {
Expand Down Expand Up @@ -93,6 +96,7 @@
"createOnlyProperties" : [ "/properties/Tenancy", "/properties/InstancePlatform", "/properties/InstanceType", "/properties/AvailabilityZone", "/properties/TagSpecifications", "/properties/OutPostArn", "/properties/EphemeralStorage", "/properties/EbsOptimized", "/properties/PlacementGroupArn" ],
"primaryIdentifier" : [ "/properties/Id" ],
"readOnlyProperties" : [ "/properties/Id", "/properties/AvailableInstanceCount", "/properties/TotalInstanceCount" ],
"writeOnlyProperties" : [ "/properties/UnusedReservationBillingOwnerId" ],
"handlers" : {
"create" : {
"permissions" : [ "ec2:CreateCapacityReservation", "ec2:DescribeCapacityReservations", "ec2:CancelCapacityReservation", "ec2:CreateTags" ]
Expand All @@ -107,7 +111,7 @@
"permissions" : [ "ec2:DescribeCapacityReservations" ]
},
"update" : {
"permissions" : [ "ec2:ModifyCapacityReservation", "ec2:CreateCapacityReservation", "ec2:DescribeCapacityReservations", "ec2:CancelCapacityReservation", "ec2:CreateTags", "ec2:DeleteTags" ]
"permissions" : [ "ec2:ModifyCapacityReservation", "ec2:CreateCapacityReservation", "ec2:DescribeCapacityReservations", "ec2:CancelCapacityReservation", "ec2:AssociateCapacityReservationBillingOwner", "ec2:CreateTags", "ec2:DeleteTags" ]
}
}
}
Loading

0 comments on commit abf8402

Please sign in to comment.