Skip to content

Commit

Permalink
Update classes to the latest schema (#6)
Browse files Browse the repository at this point in the history
  • Loading branch information
ericzbeard authored Jun 4, 2024
1 parent 66347bf commit 252fff4
Show file tree
Hide file tree
Showing 41 changed files with 592 additions and 253 deletions.
29 changes: 15 additions & 14 deletions package/aws/autoscaling/autoscalinggroup.pkl

Large diffs are not rendered by default.

41 changes: 39 additions & 2 deletions package/aws/bedrock/agent.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,16 @@ open class AgentAPISchemaS3 {
S3: AgentS3Identifier
}

typealias AgentActionGroupExecutor = AgentActionGroupExecutorLambda|AgentActionGroupExecutorCustomControl


///
open class AgentActionGroupExecutorCustomControl {
CustomControl: AgentCustomControlMethod
}

///
open class AgentActionGroupExecutor {
open class AgentActionGroupExecutorLambda {
Lambda: String(matches(Regex(#"^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_\.]+(:(\$LATEST|[a-zA-Z0-9-_]+))?$"#)))|Mapping
}

Expand All @@ -36,6 +44,7 @@ open class AgentAgentActionGroup {
ActionGroupState: (AgentActionGroupState)?
ApiSchema: (AgentAPISchema)?
Description: (String|Mapping)?
FunctionSchema: (AgentFunctionSchema)?
ParentActionGroupSignature: (AgentActionGroupSignature)?
SkipResourceInUseCheckOnDelete: (Boolean|Mapping)?
}
Expand All @@ -53,6 +62,21 @@ typealias AgentAgentStatus = String|Mapping
typealias AgentCreationMode = String|Mapping


typealias AgentCustomControlMethod = String|Mapping


/// Function definition
open class AgentFunction {
Description: (String|Mapping)?
Name: String(matches(Regex(#"^([0-9a-zA-Z][_-]?){1,100}$"#)))|Mapping
Parameters: (AgentParameterMap)?
}

/// Schema of Functions
open class AgentFunctionSchema {
Functions: Listing<AgentFunction>
}

/// Configuration for inference in prompt configuration
open class AgentInferenceConfiguration {
MaximumLength: (Number|Mapping)?
Expand All @@ -65,6 +89,16 @@ open class AgentInferenceConfiguration {
typealias AgentKnowledgeBaseState = String|Mapping


/// Parameter detail
open class AgentParameterDetail {
Description: (String|Mapping)?
Required: (Boolean|Mapping)?
Type: AgentType
}

typealias AgentParameterMap = Mapping<String, Any>


/// BasePromptConfiguration per Prompt Type.
open class AgentPromptConfiguration {
BasePromptTemplate: (String|Mapping)?
Expand Down Expand Up @@ -96,6 +130,9 @@ open class AgentS3Identifier {
typealias AgentTagsMap = Mapping<String, Any>


typealias AgentType = String|Mapping


/// Definition of AWS::Bedrock::Agent Resource Type
open class Agent extends cloudformation.Resource {

Expand All @@ -109,7 +146,7 @@ open class Agent extends cloudformation.Resource {
hidden AgentName: String(matches(Regex(#"^([0-9a-zA-Z][_-]?){1,100}$"#)))|Mapping

/// ARN of a IAM role.
hidden AgentResourceRoleArn: (String(matches(Regex(#"^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?AmazonBedrockExecutionRoleForAgents.+$"#)))|Mapping)?
hidden AgentResourceRoleArn: (String|Mapping)?

/// Specifies whether to automatically prepare after creating or updating the agent.
hidden AutoPrepare: (Boolean|Mapping)?
Expand Down
10 changes: 10 additions & 0 deletions package/aws/budgets/budget.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,12 @@ open class BudgetNotificationWithSubscribers {
Subscribers: Listing<BudgetSubscriber>
}

///
open class BudgetResourceTag {
Key: String|Mapping
Value: (String|Mapping)?
}

///
open class BudgetSpend {
Amount: Number|Mapping
Expand Down Expand Up @@ -88,9 +94,13 @@ open class Budget extends cloudformation.Resource {
///
hidden NotificationsWithSubscribers: (Listing<BudgetNotificationWithSubscribers>)?

///
hidden ResourceTags: (Listing<BudgetResourceTag>)?

Properties {
["Budget"] = if (Budget == null) null else Budget
["NotificationsWithSubscribers"] = if (NotificationsWithSubscribers == null) null else NotificationsWithSubscribers
["ResourceTags"] = if (ResourceTags == null) null else ResourceTags
}

}
10 changes: 10 additions & 0 deletions package/aws/budgets/budgetsaction.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,12 @@ open class BudgetsActionIamActionDefinition {
Users: (Listing<String|Mapping>)?
}

///
open class BudgetsActionResourceTag {
Key: String|Mapping
Value: String|Mapping
}

///
open class BudgetsActionScpActionDefinition {
PolicyId: String|Mapping
Expand Down Expand Up @@ -78,6 +84,9 @@ open class BudgetsAction extends cloudformation.Resource {
///
hidden NotificationType: BudgetsActionNotificationType|Mapping

///
hidden ResourceTags: (Listing<BudgetsActionResourceTag>)?

///
hidden Subscribers: Listing<BudgetsActionSubscriber>

Expand All @@ -89,6 +98,7 @@ open class BudgetsAction extends cloudformation.Resource {
["Definition"] = if (Definition == null) null else Definition
["ExecutionRoleArn"] = if (ExecutionRoleArn == null) null else ExecutionRoleArn
["NotificationType"] = if (NotificationType == null) null else NotificationType
["ResourceTags"] = if (ResourceTags == null) null else ResourceTags
["Subscribers"] = if (Subscribers == null) null else Subscribers
}

Expand Down
10 changes: 10 additions & 0 deletions package/aws/chatbot/microsoftteamschannelconfiguration.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ module aws.chatbot.microsoftteamschannelconfiguration

import "../../cloudformation.pkl"

///
open class MicrosoftTeamsChannelConfigurationTag {
Key: String|Mapping
Value: String|Mapping
}

/// Resource schema for AWS::Chatbot::MicrosoftTeamsChannelConfiguration.
open class MicrosoftTeamsChannelConfiguration extends cloudformation.Resource {

Expand All @@ -26,6 +32,9 @@ open class MicrosoftTeamsChannelConfiguration extends cloudformation.Resource {
/// ARNs of SNS topics which delivers notifications to AWS Chatbot, for example CloudWatch alarm notifications.
hidden SnsTopicArns: (Listing<String|Mapping>)?

/// The tags to add to the configuration
hidden Tags: (Listing<MicrosoftTeamsChannelConfigurationTag>)?

/// The id of the Microsoft Teams team
hidden TeamId: String(matches(Regex(#"^[0-9A-Fa-f]{8}(?:-[0-9A-Fa-f]{4}){3}-[0-9A-Fa-f]{12}$"#)))|Mapping

Expand All @@ -44,6 +53,7 @@ open class MicrosoftTeamsChannelConfiguration extends cloudformation.Resource {
["IamRoleArn"] = if (IamRoleArn == null) null else IamRoleArn
["LoggingLevel"] = if (LoggingLevel == null) null else LoggingLevel
["SnsTopicArns"] = if (SnsTopicArns == null) null else SnsTopicArns
["Tags"] = if (Tags == null) null else Tags
["TeamId"] = if (TeamId == null) null else TeamId
["TeamsChannelId"] = if (TeamsChannelId == null) null else TeamsChannelId
["TeamsTenantId"] = if (TeamsTenantId == null) null else TeamsTenantId
Expand Down
10 changes: 10 additions & 0 deletions package/aws/chatbot/slackchannelconfiguration.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ module aws.chatbot.slackchannelconfiguration

import "../../cloudformation.pkl"

///
open class SlackChannelConfigurationTag {
Key: String|Mapping
Value: String|Mapping
}

/// Resource schema for AWS::Chatbot::SlackChannelConfiguration.
open class SlackChannelConfiguration extends cloudformation.Resource {

Expand Down Expand Up @@ -32,6 +38,9 @@ open class SlackChannelConfiguration extends cloudformation.Resource {
/// ARNs of SNS topics which delivers notifications to AWS Chatbot, for example CloudWatch alarm notifications.
hidden SnsTopicArns: (Listing<String|Mapping>)?

/// The tags to add to the configuration
hidden Tags: (Listing<SlackChannelConfigurationTag>)?

/// Enables use of a user role requirement in your chat configuration
hidden UserRoleRequired: (Boolean|Mapping)?

Expand All @@ -43,6 +52,7 @@ open class SlackChannelConfiguration extends cloudformation.Resource {
["SlackChannelId"] = if (SlackChannelId == null) null else SlackChannelId
["SlackWorkspaceId"] = if (SlackWorkspaceId == null) null else SlackWorkspaceId
["SnsTopicArns"] = if (SnsTopicArns == null) null else SnsTopicArns
["Tags"] = if (Tags == null) null else Tags
["UserRoleRequired"] = if (UserRoleRequired == null) null else UserRoleRequired
}

Expand Down
21 changes: 21 additions & 0 deletions package/aws/codebuild/fleet.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,13 @@ open class FleetTag {
Value: String(matches(Regex(#"[a-zA-Z+-=._:/]+$"#)))|Mapping
}

///
open class FleetVpcConfig {
SecurityGroupIds: (Listing<String|Mapping>)?
Subnets: (Listing<String|Mapping>)?
VpcId: (String|Mapping)?
}

/// Resource Type definition for AWS::CodeBuild::Fleet
open class Fleet extends cloudformation.Resource {

Expand All @@ -26,17 +33,29 @@ open class Fleet extends cloudformation.Resource {
///
hidden EnvironmentType: (FleetEnvironmentType|Mapping)?

///
hidden FleetServiceRole: (String(matches(Regex(#"^(?:arn:)[a-zA-Z+-=,._:/@]+$"#)))|Mapping)?

///
hidden FleetVpcConfig: (FleetVpcConfig)?

///
hidden Name: (String|Mapping)?

///
hidden OverflowBehavior: (FleetOverflowBehavior|Mapping)?

///
hidden Tags: (Listing<FleetTag>)?

Properties {
["BaseCapacity"] = if (BaseCapacity == null) null else BaseCapacity
["ComputeType"] = if (ComputeType == null) null else ComputeType
["EnvironmentType"] = if (EnvironmentType == null) null else EnvironmentType
["FleetServiceRole"] = if (FleetServiceRole == null) null else FleetServiceRole
["FleetVpcConfig"] = if (FleetVpcConfig == null) null else FleetVpcConfig
["Name"] = if (Name == null) null else Name
["OverflowBehavior"] = if (OverflowBehavior == null) null else OverflowBehavior
["Tags"] = if (Tags == null) null else Tags
}

Expand All @@ -46,3 +65,5 @@ open class Fleet extends cloudformation.Resource {
typealias FleetComputeType = "BUILD_GENERAL1_SMALL"|"BUILD_GENERAL1_MEDIUM"|"BUILD_GENERAL1_LARGE"|"BUILD_GENERAL1_2XLARGE"

typealias FleetEnvironmentType = "WINDOWS_SERVER_2019_CONTAINER"|"WINDOWS_SERVER_2022_CONTAINER"|"LINUX_CONTAINER"|"LINUX_GPU_CONTAINER"|"ARM_CONTAINER"

typealias FleetOverflowBehavior = "QUEUE"|"ON_DEMAND"
6 changes: 6 additions & 0 deletions package/aws/codepipeline/pipeline.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,11 @@ open class PipelineEncryptionKey {
Type: String|Mapping
}

///
open class PipelineFailureConditions {
Result: String|Mapping
}

///
open class PipelineGitBranchFilterCriteria {
Excludes: (Listing<String|Mapping>)?
Expand Down Expand Up @@ -112,6 +117,7 @@ open class PipelineStageDeclaration {
Actions: Listing<PipelineActionDeclaration>
Blockers: (Listing<PipelineBlockerDeclaration>)?
Name: String|Mapping
OnFailure: (PipelineFailureConditions)?
}

///
Expand Down
4 changes: 2 additions & 2 deletions package/aws/dynamodb/table.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ open class TableLocalSecondaryIndex {
Projection: TableProjection
}

///
/// Sets the maximum number of read and write units for the specified on-demand table. If you use this property, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both.
open class TableOnDemandThroughput {
MaxReadRequestUnits: (Int|Mapping)?
MaxWriteRequestUnits: (Int|Mapping)?
Expand Down Expand Up @@ -208,7 +208,7 @@ open class Table extends cloudformation.Resource {
/// Local secondary indexes to be created on the table. You can create up to 5 local secondary indexes. Each index is scoped to a given hash key value. The size of each hash key can be up to 10 gigabytes.
hidden LocalSecondaryIndexes: (Listing<TableLocalSecondaryIndex>)?

///
/// Sets the maximum number of read and write units for the specified on-demand table. If you use this property, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both.
hidden OnDemandThroughput: (TableOnDemandThroughput)?

/// The settings used to enable point in time recovery.
Expand Down
4 changes: 4 additions & 0 deletions package/aws/ec2/customergateway.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ open class CustomerGateway extends cloudformation.Resource {
/// Default: 65000
hidden BgpAsn: (Int|Mapping)?

///
hidden BgpAsnExtended: (Number|Mapping)?

///
hidden CertificateArn: (String(matches(Regex(#"^arn:(aws[a-zA-Z-]*)?:acm:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}:\d{12}:certificate\/[a-zA-Z0-9-_]+$"#)))|Mapping)?

Expand All @@ -39,6 +42,7 @@ open class CustomerGateway extends cloudformation.Resource {

Properties {
["BgpAsn"] = if (BgpAsn == null) null else BgpAsn
["BgpAsnExtended"] = if (BgpAsnExtended == null) null else BgpAsnExtended
["CertificateArn"] = if (CertificateArn == null) null else CertificateArn
["DeviceName"] = if (DeviceName == null) null else DeviceName
["IpAddress"] = if (IpAddress == null) null else IpAddress
Expand Down
2 changes: 1 addition & 1 deletion package/aws/ec2/launchtemplate.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -405,7 +405,7 @@ open class LaunchTemplateVCpuCount {
///
/// The minimum required properties for specifying a launch template are as follows:
/// + You must specify at least one property for the launch template data.
/// + You do not need to specify a name for the launch template. If you do not specify a name, CFN creates the name for you.
/// + You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.
///
/// A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ``ImageId`` property, which has no default value. If you do not specify an AMI ID for the launch template ``ImageId`` property, you must specify an AMI ID for the instance ``ImageId`` property.
/// For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide*.
Expand Down
10 changes: 10 additions & 0 deletions package/aws/eks/addon.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ module aws.eks.addon

import "../../cloudformation.pkl"

/// A pod identity to associate with an add-on.
open class AddonPodIdentityAssociation {
RoleArn: String(matches(Regex(#"^arn:aws(-cn|-us-gov|-iso(-[a-z])?)?:iam::\d{12}:(role)\/*"#)))|Mapping
ServiceAccount: String|Mapping
}
/// A key-value pair to associate with a resource.
open class AddonTag {
Key: String|Mapping
Expand All @@ -29,6 +35,9 @@ open class Addon extends cloudformation.Resource {
/// The configuration values to use with the add-on
hidden ConfigurationValues: (String|Mapping)?
/// An array of pod identities to apply to this add-on.
hidden PodIdentityAssociations: (Listing<AddonPodIdentityAssociation>)?
/// PreserveOnDelete parameter value
hidden PreserveOnDelete: (Boolean|Mapping)?
Expand All @@ -46,6 +55,7 @@ open class Addon extends cloudformation.Resource {
["AddonVersion"] = if (AddonVersion == null) null else AddonVersion
["ClusterName"] = if (ClusterName == null) null else ClusterName
["ConfigurationValues"] = if (ConfigurationValues == null) null else ConfigurationValues
["PodIdentityAssociations"] = if (PodIdentityAssociations == null) null else PodIdentityAssociations
["PreserveOnDelete"] = if (PreserveOnDelete == null) null else PreserveOnDelete
["ResolveConflicts"] = if (ResolveConflicts == null) null else ResolveConflicts
["ServiceAccountRoleArn"] = if (ServiceAccountRoleArn == null) null else ServiceAccountRoleArn
Expand Down
8 changes: 4 additions & 4 deletions package/aws/elasticache/parametergroup.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@ open class ParameterGroup extends cloudformation.Resource {
Type = "AWS::ElastiCache::ParameterGroup"


///
/// The name of the cache parameter group family that this cache parameter group is compatible with.
hidden CacheParameterGroupFamily: String|Mapping

///
/// The description for this cache parameter group.
hidden Description: String|Mapping

///
/// A comma-delimited list of parameter name/value pairs. For more information see ModifyCacheParameterGroup in the Amazon ElastiCache API Reference Guide.
hidden PropertiesProperty: (ParameterGroupParameterGroupProperties)?

///
/// Tags are composed of a Key/Value pair. You can use tags to categorize and track each parameter group. The tag value null is permitted.
hidden Tags: (Listing<ParameterGroupTag>)?

Properties {
Expand Down
Loading

0 comments on commit 252fff4

Please sign in to comment.