Documentation
¶
Index ¶
- func CfnBroker_CFN_RESOURCE_TYPE_NAME() *string
- func CfnBroker_IsCfnElement(x interface{}) *bool
- func CfnBroker_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnBroker_IsConstruct(x interface{}) *bool
- func CfnConfigurationAssociation_CFN_RESOURCE_TYPE_NAME() *string
- func CfnConfigurationAssociation_IsCfnElement(x interface{}) *bool
- func CfnConfigurationAssociation_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnConfigurationAssociation_IsConstruct(x interface{}) *bool
- func CfnConfiguration_CFN_RESOURCE_TYPE_NAME() *string
- func CfnConfiguration_IsCfnElement(x interface{}) *bool
- func CfnConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnConfiguration_IsConstruct(x interface{}) *bool
- func NewCfnBroker_Override(c CfnBroker, scope constructs.Construct, id *string, props *CfnBrokerProps)
- func NewCfnConfigurationAssociation_Override(c CfnConfigurationAssociation, scope constructs.Construct, id *string, ...)
- func NewCfnConfiguration_Override(c CfnConfiguration, scope constructs.Construct, id *string, ...)
- type CfnBroker
- type CfnBrokerProps
- type CfnBroker_ConfigurationIdProperty
- type CfnBroker_EncryptionOptionsProperty
- type CfnBroker_LdapServerMetadataProperty
- type CfnBroker_LogListProperty
- type CfnBroker_MaintenanceWindowProperty
- type CfnBroker_TagsEntryProperty
- type CfnBroker_UserProperty
- type CfnConfiguration
- type CfnConfigurationAssociation
- type CfnConfigurationAssociationProps
- type CfnConfigurationAssociation_ConfigurationIdProperty
- type CfnConfigurationProps
- type CfnConfiguration_TagsEntryProperty
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnBroker_CFN_RESOURCE_TYPE_NAME ¶
func CfnBroker_CFN_RESOURCE_TYPE_NAME() *string
func CfnBroker_IsCfnElement ¶
func CfnBroker_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnBroker_IsCfnResource ¶
func CfnBroker_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnBroker_IsConstruct ¶
func CfnBroker_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnConfigurationAssociation_CFN_RESOURCE_TYPE_NAME ¶
func CfnConfigurationAssociation_CFN_RESOURCE_TYPE_NAME() *string
func CfnConfigurationAssociation_IsCfnElement ¶
func CfnConfigurationAssociation_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnConfigurationAssociation_IsCfnResource ¶
func CfnConfigurationAssociation_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnConfigurationAssociation_IsConstruct ¶
func CfnConfigurationAssociation_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnConfiguration_CFN_RESOURCE_TYPE_NAME ¶
func CfnConfiguration_CFN_RESOURCE_TYPE_NAME() *string
func CfnConfiguration_IsCfnElement ¶
func CfnConfiguration_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnConfiguration_IsCfnResource ¶
func CfnConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnConfiguration_IsConstruct ¶
func CfnConfiguration_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NewCfnBroker_Override ¶
func NewCfnBroker_Override(c CfnBroker, scope constructs.Construct, id *string, props *CfnBrokerProps)
Create a new `AWS::AmazonMQ::Broker`.
func NewCfnConfigurationAssociation_Override ¶
func NewCfnConfigurationAssociation_Override(c CfnConfigurationAssociation, scope constructs.Construct, id *string, props *CfnConfigurationAssociationProps)
Create a new `AWS::AmazonMQ::ConfigurationAssociation`.
func NewCfnConfiguration_Override ¶
func NewCfnConfiguration_Override(c CfnConfiguration, scope constructs.Construct, id *string, props *CfnConfigurationProps)
Create a new `AWS::AmazonMQ::Configuration`.
Types ¶
type CfnBroker ¶
type CfnBroker interface { awscdk.CfnResource awscdk.IInspectable // The AMQP endpoints of each broker instance as a list of strings. // // `amqp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:5671` AttrAmqpEndpoints() *[]*string // The Amazon Resource Name (ARN) of the Amazon MQ broker. // // `arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9`. AttrArn() *string // The unique ID that Amazon MQ generates for the configuration. // // `c-1234a5b6-78cd-901e-2fgh-3i45j6k178l9`. AttrConfigurationId() *string // The revision number of the configuration. // // `1`. AttrConfigurationRevision() *float64 // The IP addresses of each broker instance as a list of strings. Does not apply to RabbitMQ brokers. // // `['198.51.100.2', '203.0.113.9']` AttrIpAddresses() *[]*string // The MQTT endpoints of each broker instance as a list of strings. // // `mqtt+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:8883` AttrMqttEndpoints() *[]*string // The OpenWire endpoints of each broker instance as a list of strings. // // `ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61617` AttrOpenWireEndpoints() *[]*string // The STOMP endpoints of each broker instance as a list of strings. // // `stomp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61614` AttrStompEndpoints() *[]*string // The WSS endpoints of each broker instance as a list of strings. // // `wss://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61619` AttrWssEndpoints() *[]*string // Optional. // // The authentication strategy used to secure the broker. The default is `SIMPLE` . AuthenticationStrategy() *string SetAuthenticationStrategy(val *string) // Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ. // // Automatic upgrades occur during the scheduled maintenance window of the broker or after a manual broker reboot. AutoMinorVersionUpgrade() interface{} SetAutoMinorVersionUpgrade(val interface{}) // The name of the broker. // // This value must be unique in your AWS account , 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain white spaces, brackets, wildcard characters, or special characters. // // > Do not add personally identifiable information (PII) or other confidential or sensitive information in broker names. Broker names are accessible to other AWS services, including C CloudWatch Logs . Broker names are not intended to be used for private or sensitive data. BrokerName() *string SetBrokerName(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // A list of information about the configuration. // // Does not apply to RabbitMQ brokers. Configuration() interface{} SetConfiguration(val interface{}) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The deployment mode of the broker. Available values:. // // - `SINGLE_INSTANCE` // - `ACTIVE_STANDBY_MULTI_AZ` // - `CLUSTER_MULTI_AZ`. DeploymentMode() *string SetDeploymentMode(val *string) // Encryption options for the broker. // // Does not apply to RabbitMQ brokers. EncryptionOptions() interface{} SetEncryptionOptions(val interface{}) // The type of broker engine. // // Currently, Amazon MQ supports `ACTIVEMQ` and `RABBITMQ` . EngineType() *string SetEngineType(val *string) // The version of the broker engine. // // For a list of supported engine versions, see [Engine](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-engine.html) in the *Amazon MQ Developer Guide* . EngineVersion() *string SetEngineVersion(val *string) // The broker's instance type. HostInstanceType() *string SetHostInstanceType(val *string) // Optional. // // The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers. LdapServerMetadata() interface{} SetLdapServerMetadata(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // Enables Amazon CloudWatch logging for brokers. Logs() interface{} SetLogs(val interface{}) // The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker. MaintenanceWindowStartTime() interface{} SetMaintenanceWindowStartTime(val interface{}) // The tree node. Node() constructs.Node // Enables connections from applications outside of the VPC that hosts the broker's subnets. PubliclyAccessible() interface{} SetPubliclyAccessible(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The list of rules (1 minimum, 125 maximum) that authorize connections to brokers. SecurityGroups() *[]*string SetSecurityGroups(val *[]*string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The broker's storage type. StorageType() *string SetStorageType(val *string) // The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones. // // If you specify more than one subnet, the subnets must be in different Availability Zones. Amazon MQ will not be able to create VPC endpoints for your broker with multiple subnets in the same Availability Zone. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment (ACTIVEMQ) requires two subnets. A CLUSTER_MULTI_AZ deployment (RABBITMQ) has no subnet requirements when deployed with public accessibility, deployment without public accessibility requires at least one subnet. // // > If you specify subnets in a shared VPC for a RabbitMQ broker, the associated VPC to which the specified subnets belong must be owned by your AWS account . Amazon MQ will not be able to create VPC enpoints in VPCs that are not owned by your AWS account . SubnetIds() *[]*string SetSubnetIds(val *[]*string) // An array of key-value pairs. // // For more information, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the *Billing and Cost Management User Guide* . Tags() awscdk.TagManager // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // The list of broker users (persons or applications) who can access queues and topics. // // For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent RabbitMQ users are created by via the RabbitMQ web console or by using the RabbitMQ management API. Users() interface{} SetUsers(val interface{}) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AmazonMQ::Broker`.
A *broker* is a message broker environment running on Amazon MQ . It is the basic building block of Amazon MQ .
The `AWS::AmazonMQ::Broker` resource lets you create Amazon MQ for ActiveMQ and Amazon MQ for RabbitMQ brokers, add configuration changes or modify users for a speified ActiveMQ broker, return information about the specified broker, and delete the broker. For more information, see [How Amazon MQ works](https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/amazon-mq-how-it-works.html) in the *Amazon MQ Developer Guide* .
- `ec2:CreateNetworkInterface`
This permission is required to allow Amazon MQ to create an elastic network interface (ENI) on behalf of your account. - `ec2:CreateNetworkInterfacePermission`
This permission is required to attach the ENI to the broker instance. - `ec2:DeleteNetworkInterface` - `ec2:DeleteNetworkInterfacePermission` - `ec2:DetachNetworkInterface` - `ec2:DescribeInternetGateways` - `ec2:DescribeNetworkInterfaces` - `ec2:DescribeNetworkInterfacePermissions` - `ec2:DescribeRouteTables` - `ec2:DescribeSecurityGroups` - `ec2:DescribeSubnets` - `ec2:DescribeVpcs`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnBroker := awscdk.Aws_amazonmq.NewCfnBroker(this, jsii.String("MyCfnBroker"), &CfnBrokerProps{ AutoMinorVersionUpgrade: jsii.Boolean(false), BrokerName: jsii.String("brokerName"), DeploymentMode: jsii.String("deploymentMode"), EngineType: jsii.String("engineType"), EngineVersion: jsii.String("engineVersion"), HostInstanceType: jsii.String("hostInstanceType"), PubliclyAccessible: jsii.Boolean(false), Users: []interface{}{ &UserProperty{ Password: jsii.String("password"), Username: jsii.String("username"), // the properties below are optional ConsoleAccess: jsii.Boolean(false), Groups: []*string{ jsii.String("groups"), }, }, }, // the properties below are optional AuthenticationStrategy: jsii.String("authenticationStrategy"), Configuration: &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }, EncryptionOptions: &EncryptionOptionsProperty{ UseAwsOwnedKey: jsii.Boolean(false), // the properties below are optional KmsKeyId: jsii.String("kmsKeyId"), }, LdapServerMetadata: &LdapServerMetadataProperty{ Hosts: []*string{ jsii.String("hosts"), }, RoleBase: jsii.String("roleBase"), RoleSearchMatching: jsii.String("roleSearchMatching"), ServiceAccountPassword: jsii.String("serviceAccountPassword"), ServiceAccountUsername: jsii.String("serviceAccountUsername"), UserBase: jsii.String("userBase"), UserSearchMatching: jsii.String("userSearchMatching"), // the properties below are optional RoleName: jsii.String("roleName"), RoleSearchSubtree: jsii.Boolean(false), UserRoleName: jsii.String("userRoleName"), UserSearchSubtree: jsii.Boolean(false), }, Logs: &LogListProperty{ Audit: jsii.Boolean(false), General: jsii.Boolean(false), }, MaintenanceWindowStartTime: &MaintenanceWindowProperty{ DayOfWeek: jsii.String("dayOfWeek"), TimeOfDay: jsii.String("timeOfDay"), TimeZone: jsii.String("timeZone"), }, SecurityGroups: []*string{ jsii.String("securityGroups"), }, StorageType: jsii.String("storageType"), SubnetIds: []*string{ jsii.String("subnetIds"), }, Tags: []tagsEntryProperty{ &tagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnBroker ¶
func NewCfnBroker(scope constructs.Construct, id *string, props *CfnBrokerProps) CfnBroker
Create a new `AWS::AmazonMQ::Broker`.
type CfnBrokerProps ¶
type CfnBrokerProps struct { // Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ. // // Automatic upgrades occur during the scheduled maintenance window of the broker or after a manual broker reboot. AutoMinorVersionUpgrade interface{} `field:"required" json:"autoMinorVersionUpgrade" yaml:"autoMinorVersionUpgrade"` // The name of the broker. // // This value must be unique in your AWS account , 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain white spaces, brackets, wildcard characters, or special characters. // // > Do not add personally identifiable information (PII) or other confidential or sensitive information in broker names. Broker names are accessible to other AWS services, including C CloudWatch Logs . Broker names are not intended to be used for private or sensitive data. BrokerName *string `field:"required" json:"brokerName" yaml:"brokerName"` // The deployment mode of the broker. Available values:. // // - `SINGLE_INSTANCE` // - `ACTIVE_STANDBY_MULTI_AZ` // - `CLUSTER_MULTI_AZ`. DeploymentMode *string `field:"required" json:"deploymentMode" yaml:"deploymentMode"` // The type of broker engine. // // Currently, Amazon MQ supports `ACTIVEMQ` and `RABBITMQ` . EngineType *string `field:"required" json:"engineType" yaml:"engineType"` // The version of the broker engine. // // For a list of supported engine versions, see [Engine](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-engine.html) in the *Amazon MQ Developer Guide* . EngineVersion *string `field:"required" json:"engineVersion" yaml:"engineVersion"` // The broker's instance type. HostInstanceType *string `field:"required" json:"hostInstanceType" yaml:"hostInstanceType"` // Enables connections from applications outside of the VPC that hosts the broker's subnets. PubliclyAccessible interface{} `field:"required" json:"publiclyAccessible" yaml:"publiclyAccessible"` // The list of broker users (persons or applications) who can access queues and topics. // // For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent RabbitMQ users are created by via the RabbitMQ web console or by using the RabbitMQ management API. Users interface{} `field:"required" json:"users" yaml:"users"` // Optional. // // The authentication strategy used to secure the broker. The default is `SIMPLE` . AuthenticationStrategy *string `field:"optional" json:"authenticationStrategy" yaml:"authenticationStrategy"` // A list of information about the configuration. // // Does not apply to RabbitMQ brokers. Configuration interface{} `field:"optional" json:"configuration" yaml:"configuration"` // Encryption options for the broker. // // Does not apply to RabbitMQ brokers. EncryptionOptions interface{} `field:"optional" json:"encryptionOptions" yaml:"encryptionOptions"` // Optional. // // The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers. LdapServerMetadata interface{} `field:"optional" json:"ldapServerMetadata" yaml:"ldapServerMetadata"` // Enables Amazon CloudWatch logging for brokers. Logs interface{} `field:"optional" json:"logs" yaml:"logs"` // The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker. MaintenanceWindowStartTime interface{} `field:"optional" json:"maintenanceWindowStartTime" yaml:"maintenanceWindowStartTime"` // The list of rules (1 minimum, 125 maximum) that authorize connections to brokers. SecurityGroups *[]*string `field:"optional" json:"securityGroups" yaml:"securityGroups"` // The broker's storage type. StorageType *string `field:"optional" json:"storageType" yaml:"storageType"` // The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones. // // If you specify more than one subnet, the subnets must be in different Availability Zones. Amazon MQ will not be able to create VPC endpoints for your broker with multiple subnets in the same Availability Zone. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment (ACTIVEMQ) requires two subnets. A CLUSTER_MULTI_AZ deployment (RABBITMQ) has no subnet requirements when deployed with public accessibility, deployment without public accessibility requires at least one subnet. // // > If you specify subnets in a shared VPC for a RabbitMQ broker, the associated VPC to which the specified subnets belong must be owned by your AWS account . Amazon MQ will not be able to create VPC enpoints in VPCs that are not owned by your AWS account . SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"` // An array of key-value pairs. // // For more information, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the *Billing and Cost Management User Guide* . Tags *[]*CfnBroker_TagsEntryProperty `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnBroker`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnBrokerProps := &CfnBrokerProps{ AutoMinorVersionUpgrade: jsii.Boolean(false), BrokerName: jsii.String("brokerName"), DeploymentMode: jsii.String("deploymentMode"), EngineType: jsii.String("engineType"), EngineVersion: jsii.String("engineVersion"), HostInstanceType: jsii.String("hostInstanceType"), PubliclyAccessible: jsii.Boolean(false), Users: []interface{}{ &UserProperty{ Password: jsii.String("password"), Username: jsii.String("username"), // the properties below are optional ConsoleAccess: jsii.Boolean(false), Groups: []*string{ jsii.String("groups"), }, }, }, // the properties below are optional AuthenticationStrategy: jsii.String("authenticationStrategy"), Configuration: &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }, EncryptionOptions: &EncryptionOptionsProperty{ UseAwsOwnedKey: jsii.Boolean(false), // the properties below are optional KmsKeyId: jsii.String("kmsKeyId"), }, LdapServerMetadata: &LdapServerMetadataProperty{ Hosts: []*string{ jsii.String("hosts"), }, RoleBase: jsii.String("roleBase"), RoleSearchMatching: jsii.String("roleSearchMatching"), ServiceAccountPassword: jsii.String("serviceAccountPassword"), ServiceAccountUsername: jsii.String("serviceAccountUsername"), UserBase: jsii.String("userBase"), UserSearchMatching: jsii.String("userSearchMatching"), // the properties below are optional RoleName: jsii.String("roleName"), RoleSearchSubtree: jsii.Boolean(false), UserRoleName: jsii.String("userRoleName"), UserSearchSubtree: jsii.Boolean(false), }, Logs: &LogListProperty{ Audit: jsii.Boolean(false), General: jsii.Boolean(false), }, MaintenanceWindowStartTime: &MaintenanceWindowProperty{ DayOfWeek: jsii.String("dayOfWeek"), TimeOfDay: jsii.String("timeOfDay"), TimeZone: jsii.String("timeZone"), }, SecurityGroups: []*string{ jsii.String("securityGroups"), }, StorageType: jsii.String("storageType"), SubnetIds: []*string{ jsii.String("subnetIds"), }, Tags: []tagsEntryProperty{ &tagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnBroker_ConfigurationIdProperty ¶
type CfnBroker_ConfigurationIdProperty struct { // The unique ID that Amazon MQ generates for the configuration. Id *string `field:"required" json:"id" yaml:"id"` // The revision number of the configuration. Revision *float64 `field:"required" json:"revision" yaml:"revision"` }
A list of information about the configuration.
> Does not apply to RabbitMQ brokers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" configurationIdProperty := &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }
type CfnBroker_EncryptionOptionsProperty ¶
type CfnBroker_EncryptionOptionsProperty struct { // Enables the use of an AWS owned CMK using AWS KMS (KMS). // // Set to `true` by default, if no value is provided, for example, for RabbitMQ brokers. UseAwsOwnedKey interface{} `field:"required" json:"useAwsOwnedKey" yaml:"useAwsOwnedKey"` // The customer master key (CMK) to use for the A AWS KMS (KMS). // // This key is used to encrypt your data at rest. If not provided, Amazon MQ will use a default CMK to encrypt your data. KmsKeyId *string `field:"optional" json:"kmsKeyId" yaml:"kmsKeyId"` }
Encryption options for the broker.
> Does not apply to RabbitMQ brokers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" encryptionOptionsProperty := &EncryptionOptionsProperty{ UseAwsOwnedKey: jsii.Boolean(false), // the properties below are optional KmsKeyId: jsii.String("kmsKeyId"), }
type CfnBroker_LdapServerMetadataProperty ¶
type CfnBroker_LdapServerMetadataProperty struct { // Specifies the location of the LDAP server such as AWS Directory Service for Microsoft Active Directory . // // Optional failover server. Hosts *[]*string `field:"required" json:"hosts" yaml:"hosts"` // The distinguished name of the node in the directory information tree (DIT) to search for roles or groups. // // For example, `ou=group` , `ou=corp` , `dc=corp` , `dc=example` , `dc=com` . RoleBase *string `field:"required" json:"roleBase" yaml:"roleBase"` // The LDAP search filter used to find roles within the roleBase. // // The distinguished name of the user matched by userSearchMatching is substituted into the `{0}` placeholder in the search filter. The client's username is substituted into the `{1}` placeholder. For example, if you set this option to `(member=uid={1})` for the user janedoe, the search filter becomes `(member=uid=janedoe)` after string substitution. It matches all role entries that have a member attribute equal to `uid=janedoe` under the subtree selected by the `RoleBases` . RoleSearchMatching *string `field:"required" json:"roleSearchMatching" yaml:"roleSearchMatching"` // Service account password. // // A service account is an account in your LDAP server that has access to initiate a connection. For example, `cn=admin` , `dc=corp` , `dc=example` , `dc=com` . ServiceAccountPassword *string `field:"required" json:"serviceAccountPassword" yaml:"serviceAccountPassword"` // Service account username. // // A service account is an account in your LDAP server that has access to initiate a connection. For example, `cn=admin` , `ou=corp` , `dc=corp` , `dc=example` , `dc=com` . ServiceAccountUsername *string `field:"required" json:"serviceAccountUsername" yaml:"serviceAccountUsername"` // Select a particular subtree of the directory information tree (DIT) to search for user entries. // // The subtree is specified by a DN, which specifies the base node of the subtree. For example, by setting this option to `ou=Users` , `ou=corp` , `dc=corp` , `dc=example` , `dc=com` , the search for user entries is restricted to the subtree beneath `ou=Users` , `ou=corp` , `dc=corp` , `dc=example` , `dc=com` . UserBase *string `field:"required" json:"userBase" yaml:"userBase"` // The LDAP search filter used to find users within the `userBase` . // // The client's username is substituted into the `{0}` placeholder in the search filter. For example, if this option is set to `(uid={0})` and the received username is `janedoe` , the search filter becomes `(uid=janedoe)` after string substitution. It will result in matching an entry like `uid=janedoe` , `ou=Users` , `ou=corp` , `dc=corp` , `dc=example` , `dc=com` . UserSearchMatching *string `field:"required" json:"userSearchMatching" yaml:"userSearchMatching"` // The group name attribute in a role entry whose value is the name of that role. // // For example, you can specify `cn` for a group entry's common name. If authentication succeeds, then the user is assigned the the value of the `cn` attribute for each role entry that they are a member of. RoleName *string `field:"optional" json:"roleName" yaml:"roleName"` // The directory search scope for the role. // // If set to true, scope is to search the entire subtree. RoleSearchSubtree interface{} `field:"optional" json:"roleSearchSubtree" yaml:"roleSearchSubtree"` // The name of the LDAP attribute in the user's directory entry for the user's group membership. // // In some cases, user roles may be identified by the value of an attribute in the user's directory entry. The `UserRoleName` option allows you to provide the name of this attribute. UserRoleName *string `field:"optional" json:"userRoleName" yaml:"userRoleName"` // The directory search scope for the user. // // If set to true, scope is to search the entire subtree. UserSearchSubtree interface{} `field:"optional" json:"userSearchSubtree" yaml:"userSearchSubtree"` }
Optional. The metadata of the LDAP server used to authenticate and authorize connections to the broker.
> Does not apply to RabbitMQ brokers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" ldapServerMetadataProperty := &LdapServerMetadataProperty{ Hosts: []*string{ jsii.String("hosts"), }, RoleBase: jsii.String("roleBase"), RoleSearchMatching: jsii.String("roleSearchMatching"), ServiceAccountPassword: jsii.String("serviceAccountPassword"), ServiceAccountUsername: jsii.String("serviceAccountUsername"), UserBase: jsii.String("userBase"), UserSearchMatching: jsii.String("userSearchMatching"), // the properties below are optional RoleName: jsii.String("roleName"), RoleSearchSubtree: jsii.Boolean(false), UserRoleName: jsii.String("userRoleName"), UserSearchSubtree: jsii.Boolean(false), }
type CfnBroker_LogListProperty ¶
type CfnBroker_LogListProperty struct { // Enables audit logging. // // Every user management action made using JMX or the ActiveMQ Web Console is logged. Does not apply to RabbitMQ brokers. Audit interface{} `field:"optional" json:"audit" yaml:"audit"` // Enables general logging. General interface{} `field:"optional" json:"general" yaml:"general"` }
The list of information about logs to be enabled for the specified broker.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" logListProperty := &LogListProperty{ Audit: jsii.Boolean(false), General: jsii.Boolean(false), }
type CfnBroker_MaintenanceWindowProperty ¶
type CfnBroker_MaintenanceWindowProperty struct { // The day of the week. DayOfWeek *string `field:"required" json:"dayOfWeek" yaml:"dayOfWeek"` // The time, in 24-hour format. TimeOfDay *string `field:"required" json:"timeOfDay" yaml:"timeOfDay"` // The time zone, UTC by default, in either the Country/City format, or the UTC offset format. TimeZone *string `field:"required" json:"timeZone" yaml:"timeZone"` }
The parameters that determine the `WeeklyStartTime` to apply pending updates or patches to the broker.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" maintenanceWindowProperty := &MaintenanceWindowProperty{ DayOfWeek: jsii.String("dayOfWeek"), TimeOfDay: jsii.String("timeOfDay"), TimeZone: jsii.String("timeZone"), }
type CfnBroker_TagsEntryProperty ¶
type CfnBroker_TagsEntryProperty struct { // The key in a key-value pair. Key *string `field:"required" json:"key" yaml:"key"` // The value in a key-value pair. Value *string `field:"required" json:"value" yaml:"value"` }
A key-value pair to associate with the broker.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tagsEntryProperty := &TagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }
type CfnBroker_UserProperty ¶
type CfnBroker_UserProperty struct { // The password of the user. // // This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas, colons, or equal signs (,:=). Password *string `field:"required" json:"password" yaml:"password"` // The username of the broker user. // // For Amazon MQ for ActiveMQ brokers, this value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). For Amazon MQ for RabbitMQ brokers, this value can contain only alphanumeric characters, dashes, periods, underscores (- . _). This value must not contain a tilde (~) character. Amazon MQ prohibts using guest as a valid usename. This value must be 2-100 characters long. // // > Do not add personally identifiable information (PII) or other confidential or sensitive information in broker usernames. Broker usernames are accessible to other AWS services, including CloudWatch Logs . Broker usernames are not intended to be used for private or sensitive data. Username *string `field:"required" json:"username" yaml:"username"` // Enables access to the ActiveMQ web console for the ActiveMQ user. // // Does not apply to RabbitMQ brokers. ConsoleAccess interface{} `field:"optional" json:"consoleAccess" yaml:"consoleAccess"` // The list of groups (20 maximum) to which the ActiveMQ user belongs. // // This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long. Does not apply to RabbitMQ brokers. Groups *[]*string `field:"optional" json:"groups" yaml:"groups"` }
The list of broker users (persons or applications) who can access queues and topics.
For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent broker users are created via the RabbitMQ web console or by using the RabbitMQ management API.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" userProperty := &UserProperty{ Password: jsii.String("password"), Username: jsii.String("username"), // the properties below are optional ConsoleAccess: jsii.Boolean(false), Groups: []*string{ jsii.String("groups"), }, }
type CfnConfiguration ¶
type CfnConfiguration interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the Amazon MQ configuration. // // `arn:aws:mq:us-east-2:123456789012:configuration:MyConfigurationDevelopment:c-1234a5b6-78cd-901e-2fgh-3i45j6k178l9`. AttrArn() *string // The ID of the Amazon MQ configuration. // // `c-1234a5b6-78cd-901e-2fgh-3i45j6k178l9`. AttrId() *string // The revision number of the configuration. // // `1`. AttrRevision() *float64 // Optional. // // The authentication strategy associated with the configuration. The default is `SIMPLE` . AuthenticationStrategy() *string SetAuthenticationStrategy(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The base64-encoded XML configuration. Data() *string SetData(val *string) // The description of the configuration. Description() *string SetDescription(val *string) // The type of broker engine. // // Note: Currently, Amazon MQ only supports ACTIVEMQ for creating and editing broker configurations. EngineType() *string SetEngineType(val *string) // The version of the broker engine. // // For a list of supported engine versions, see [](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-engine.html) EngineVersion() *string SetEngineVersion(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The name of the configuration. // // This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long. Name() *string SetName(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Create tags when creating the configuration. Tags() awscdk.TagManager // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AmazonMQ::Configuration`.
Creates a new configuration for the specified configuration name. Amazon MQ uses the default configuration (the engine type and version).
> Does not apply to RabbitMQ brokers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnConfiguration := awscdk.Aws_amazonmq.NewCfnConfiguration(this, jsii.String("MyCfnConfiguration"), &CfnConfigurationProps{ Data: jsii.String("data"), EngineType: jsii.String("engineType"), EngineVersion: jsii.String("engineVersion"), Name: jsii.String("name"), // the properties below are optional AuthenticationStrategy: jsii.String("authenticationStrategy"), Description: jsii.String("description"), Tags: []tagsEntryProperty{ &tagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnConfiguration ¶
func NewCfnConfiguration(scope constructs.Construct, id *string, props *CfnConfigurationProps) CfnConfiguration
Create a new `AWS::AmazonMQ::Configuration`.
type CfnConfigurationAssociation ¶
type CfnConfigurationAssociation interface { awscdk.CfnResource awscdk.IInspectable // The broker to associate with a configuration. Broker() *string SetBroker(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The configuration to associate with a broker. Configuration() interface{} SetConfiguration(val interface{}) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AmazonMQ::ConfigurationAssociation`.
Use the AWS CloudFormation `AWS::AmazonMQ::ConfigurationAssociation` resource to associate a configuration with a broker, or return information about the specified ConfigurationAssociation. Only use one per broker, and don't use a configuration on the broker resource if you have associated a configuration with that broker.
> Does not apply to RabbitMQ brokers.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnConfigurationAssociation := awscdk.Aws_amazonmq.NewCfnConfigurationAssociation(this, jsii.String("MyCfnConfigurationAssociation"), &CfnConfigurationAssociationProps{ Broker: jsii.String("broker"), Configuration: &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }, })
func NewCfnConfigurationAssociation ¶
func NewCfnConfigurationAssociation(scope constructs.Construct, id *string, props *CfnConfigurationAssociationProps) CfnConfigurationAssociation
Create a new `AWS::AmazonMQ::ConfigurationAssociation`.
type CfnConfigurationAssociationProps ¶
type CfnConfigurationAssociationProps struct { // The broker to associate with a configuration. Broker *string `field:"required" json:"broker" yaml:"broker"` // The configuration to associate with a broker. Configuration interface{} `field:"required" json:"configuration" yaml:"configuration"` }
Properties for defining a `CfnConfigurationAssociation`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnConfigurationAssociationProps := &CfnConfigurationAssociationProps{ Broker: jsii.String("broker"), Configuration: &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }, }
type CfnConfigurationAssociation_ConfigurationIdProperty ¶
type CfnConfigurationAssociation_ConfigurationIdProperty struct { // The unique ID that Amazon MQ generates for the configuration. Id *string `field:"required" json:"id" yaml:"id"` // The revision number of the configuration. Revision *float64 `field:"required" json:"revision" yaml:"revision"` }
The `ConfigurationId` property type specifies a configuration Id and the revision of a configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" configurationIdProperty := &ConfigurationIdProperty{ Id: jsii.String("id"), Revision: jsii.Number(123), }
type CfnConfigurationProps ¶
type CfnConfigurationProps struct { // The base64-encoded XML configuration. Data *string `field:"required" json:"data" yaml:"data"` // The type of broker engine. // // Note: Currently, Amazon MQ only supports ACTIVEMQ for creating and editing broker configurations. EngineType *string `field:"required" json:"engineType" yaml:"engineType"` // The version of the broker engine. // // For a list of supported engine versions, see [](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-engine.html) EngineVersion *string `field:"required" json:"engineVersion" yaml:"engineVersion"` // The name of the configuration. // // This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long. Name *string `field:"required" json:"name" yaml:"name"` // Optional. // // The authentication strategy associated with the configuration. The default is `SIMPLE` . AuthenticationStrategy *string `field:"optional" json:"authenticationStrategy" yaml:"authenticationStrategy"` // The description of the configuration. Description *string `field:"optional" json:"description" yaml:"description"` // Create tags when creating the configuration. Tags *[]*CfnConfiguration_TagsEntryProperty `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnConfiguration`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnConfigurationProps := &CfnConfigurationProps{ Data: jsii.String("data"), EngineType: jsii.String("engineType"), EngineVersion: jsii.String("engineVersion"), Name: jsii.String("name"), // the properties below are optional AuthenticationStrategy: jsii.String("authenticationStrategy"), Description: jsii.String("description"), Tags: []tagsEntryProperty{ &tagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnConfiguration_TagsEntryProperty ¶
type CfnConfiguration_TagsEntryProperty struct { // The key in a key-value pair. Key *string `field:"required" json:"key" yaml:"key"` // The value in a key-value pair. Value *string `field:"required" json:"value" yaml:"value"` }
A key-value pair to associate with the configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tagsEntryProperty := &TagsEntryProperty{ Key: jsii.String("key"), Value: jsii.String("value"), }
Source Files
¶
- CfnBroker.go
- CfnBrokerProps.go
- CfnBroker_ConfigurationIdProperty.go
- CfnBroker_EncryptionOptionsProperty.go
- CfnBroker_LdapServerMetadataProperty.go
- CfnBroker_LogListProperty.go
- CfnBroker_MaintenanceWindowProperty.go
- CfnBroker_TagsEntryProperty.go
- CfnBroker_UserProperty.go
- CfnBroker__checks.go
- CfnConfiguration.go
- CfnConfigurationAssociation.go
- CfnConfigurationAssociationProps.go
- CfnConfigurationAssociation_ConfigurationIdProperty.go
- CfnConfigurationAssociation__checks.go
- CfnConfigurationProps.go
- CfnConfiguration_TagsEntryProperty.go
- CfnConfiguration__checks.go
- main.go