diff --git a/apis/v1alpha1/ack-generate-metadata.yaml b/apis/v1alpha1/ack-generate-metadata.yaml index 00c6ae3..a597b49 100755 --- a/apis/v1alpha1/ack-generate-metadata.yaml +++ b/apis/v1alpha1/ack-generate-metadata.yaml @@ -1,9 +1,9 @@ ack_generate_info: - build_date: "2025-02-18T00:15:49Z" - build_hash: 66c0f840b0bcf6f552be46cf5ee0fb95ad57053e - go_version: go1.23.6 - version: v0.43.0 -api_directory_checksum: 613faabc7535609beb25a8f426679700a4c17bd6 + build_date: "2025-02-19T23:21:19Z" + build_hash: 8b426c490ff1984d8ce5577e11d6dabe1b6373b8 + go_version: go1.24.0 + version: v0.43.1 +api_directory_checksum: 4cbf2ac58fef658fcaee759fec5122ee9dc99e5e api_version: v1alpha1 aws_sdk_go_version: v1.32.6 generator_config_info: diff --git a/apis/v1alpha1/broker.go b/apis/v1alpha1/broker.go index 5acef18..4ca0e31 100644 --- a/apis/v1alpha1/broker.go +++ b/apis/v1alpha1/broker.go @@ -25,6 +25,7 @@ type BrokerSpec struct { // Optional. The authentication strategy used to secure the broker. The default // is SIMPLE. + AuthenticationStrategy *string `json:"authenticationStrategy,omitempty"` // Enables automatic upgrades to new patch versions for brokers as new versions // are released and supported by Amazon MQ. Automatic upgrades occur during @@ -33,39 +34,53 @@ type BrokerSpec struct { // // Must be set to true for ActiveMQ brokers version 5.18 and above and for RabbitMQ // brokers version 3.13 and above. + AutoMinorVersionUpgrade *bool `json:"autoMinorVersionUpgrade,omitempty"` // A list of information about the configuration. + Configuration *ConfigurationID `json:"configuration,omitempty"` // The unique ID that the requester receives for the created broker. Amazon // MQ passes your ID with the API action. // // We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. // You may omit the creatorRequestId if your application doesn't require idempotency. + CreatorRequestID *string `json:"creatorRequestID,omitempty"` // Required. The broker's deployment mode. + // +kubebuilder:validation:Required + DeploymentMode *string `json:"deploymentMode"` // Encryption options for the broker. + EncryptionOptions *EncryptionOptions `json:"encryptionOptions,omitempty"` // Required. The type of broker engine. Currently, Amazon MQ supports ACTIVEMQ // and RABBITMQ. + // +kubebuilder:validation:Required + EngineType *string `json:"engineType"` // The broker engine version. Defaults to the latest available version for the // specified broker engine type. For more information, see the ActiveMQ version // management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/activemq-version-management.html) // and the RabbitMQ version management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/rabbitmq-version-management.html) // sections in the Amazon MQ Developer Guide. + EngineVersion *string `json:"engineVersion,omitempty"` // Required. The broker's instance type. + // +kubebuilder:validation:Required + HostInstanceType *string `json:"hostInstanceType"` // Optional. The metadata of the LDAP server used to authenticate and authorize // connections to the broker. Does not apply to RabbitMQ brokers. + LDAPServerMetadata *LDAPServerMetadataInput `json:"ldapServerMetadata,omitempty"` // Enables Amazon CloudWatch logging for brokers. + Logs *Logs `json:"logs,omitempty"` // The parameters that determine the WeeklyStartTime. + MaintenanceWindowStartTime *WeeklyStartTime `json:"maintenanceWindowStartTime,omitempty"` // Required. The broker's name. This value must be unique in your Amazon Web // Services account, 1-50 characters long, must contain only letters, numbers, @@ -76,17 +91,24 @@ type BrokerSpec struct { // or sensitive information in broker names. Broker names are accessible to // other Amazon Web Services services, including CloudWatch Logs. Broker names // are not intended to be used for private or sensitive data. + // +kubebuilder:validation:Required + Name *string `json:"name"` // Enables connections from applications outside of the VPC that hosts the broker's // subnets. Set to false by default, if no value is provided. + // +kubebuilder:validation:Required - PubliclyAccessible *bool `json:"publiclyAccessible"` - SecurityGroupRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"securityGroupRefs,omitempty"` + + PubliclyAccessible *bool `json:"publiclyAccessible"` + + SecurityGroupRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"securityGroupRefs,omitempty"` // The list of rules (1 minimum, 125 maximum) that authorize connections to // brokers. + SecurityGroups []*string `json:"securityGroups,omitempty"` // The broker's storage type. + StorageType *string `json:"storageType,omitempty"` // 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, @@ -104,16 +126,21 @@ type BrokerSpec struct { // belong must be owned by your Amazon Web Services account. Amazon MQ will // not be able to create VPC endpoints in VPCs that are not owned by your Amazon // Web Services account. - SubnetIDs []*string `json:"subnetIDs,omitempty"` + + SubnetIDs []*string `json:"subnetIDs,omitempty"` + SubnetRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"subnetRefs,omitempty"` // Create tags when creating the broker. + Tags map[string]*string `json:"tags,omitempty"` // 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 by making RabbitMQ API calls directly to brokers // or via the RabbitMQ web console. + // +kubebuilder:validation:Required + Users []*User `json:"users"` } @@ -124,7 +151,7 @@ type BrokerStatus struct { // constructed ARN for the resource // +kubebuilder:validation:Optional ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"` - // All CRS managed by ACK have a common `Status.Conditions` member that + // All CRs managed by ACK have a common `Status.Conditions` member that // contains a collection of `ackv1alpha1.Condition` objects that describe // the various terminal states of the CR and its backend AWS service API // resource diff --git a/config/controller/kustomization.yaml b/config/controller/kustomization.yaml index 50802f3..bf8a96c 100644 --- a/config/controller/kustomization.yaml +++ b/config/controller/kustomization.yaml @@ -6,4 +6,4 @@ kind: Kustomization images: - name: controller newName: public.ecr.aws/aws-controllers-k8s/mq-controller - newTag: 1.0.4 + newTag: 1.0.5 diff --git a/config/crd/bases/mq.services.k8s.aws_brokers.yaml b/config/crd/bases/mq.services.k8s.aws_brokers.yaml index 23946b6..5b3ba0f 100644 --- a/config/crd/bases/mq.services.k8s.aws_brokers.yaml +++ b/config/crd/bases/mq.services.k8s.aws_brokers.yaml @@ -40,19 +40,8 @@ spec: description: BrokerSpec defines the desired state of Broker. properties: authenticationStrategy: - description: |- - Optional. The authentication strategy used to secure the broker. The default - is SIMPLE. type: string autoMinorVersionUpgrade: - description: |- - Enables automatic upgrades to new patch versions for brokers as new versions - are released and supported by Amazon MQ. Automatic upgrades occur during - the scheduled maintenance window or after a manual broker reboot. Set to - true by default, if no value is specified. - - Must be set to true for ActiveMQ brokers version 5.18 and above and for RabbitMQ - brokers version 3.13 and above. type: boolean configuration: description: A list of information about the configuration. @@ -64,15 +53,8 @@ spec: type: integer type: object creatorRequestID: - description: |- - The unique ID that the requester receives for the created broker. Amazon - MQ passes your ID with the API action. - - We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. - You may omit the creatorRequestId if your application doesn't require idempotency. type: string deploymentMode: - description: Required. The broker's deployment mode. type: string encryptionOptions: description: Encryption options for the broker. @@ -83,25 +65,17 @@ spec: type: boolean type: object engineType: - description: |- - Required. The type of broker engine. Currently, Amazon MQ supports ACTIVEMQ - and RABBITMQ. type: string engineVersion: - description: |- - The broker engine version. Defaults to the latest available version for the - specified broker engine type. For more information, see the ActiveMQ version - management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/activemq-version-management.html) - and the RabbitMQ version management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/rabbitmq-version-management.html) - sections in the Amazon MQ Developer Guide. type: string hostInstanceType: - description: Required. The broker's instance type. type: string ldapServerMetadata: description: |- Optional. The metadata of the LDAP server used to authenticate and authorize - connections to the broker. Does not apply to RabbitMQ brokers. + connections to the broker. + + Does not apply to RabbitMQ brokers. properties: hosts: items: @@ -129,7 +103,8 @@ spec: type: boolean type: object logs: - description: Enables Amazon CloudWatch logging for brokers. + description: The list of information about logs to be enabled for + the specified broker. properties: audit: type: boolean @@ -137,7 +112,9 @@ spec: type: boolean type: object maintenanceWindowStartTime: - description: The parameters that determine the WeeklyStartTime. + description: |- + The scheduled time period relative to UTC during which Amazon MQ begins to + apply pending updates or patches to the broker. properties: dayOfWeek: type: string @@ -147,21 +124,8 @@ spec: type: string type: object name: - description: |- - Required. The broker's name. This value must be unique in your Amazon Web - Services 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 Amazon Web Services services, including CloudWatch Logs. Broker names - are not intended to be used for private or sensitive data. type: string publiclyAccessible: - description: |- - Enables connections from applications outside of the VPC that hosts the broker's - subnets. Set to false by default, if no value is provided. type: boolean securityGroupRefs: items: @@ -183,33 +147,12 @@ spec: type: object type: array securityGroups: - description: |- - The list of rules (1 minimum, 125 maximum) that authorize connections to - brokers. items: type: string type: array storageType: - description: The broker's storage type. type: string subnetIDs: - description: |- - 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 Amazon MQ for - ActiveMQ deployment requires two subnets. A CLUSTER_MULTI_AZ Amazon MQ for - RabbitMQ deployment 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 (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html) - for a RabbitMQ broker, the associated VPC to which the specified subnets - belong must be owned by your Amazon Web Services account. Amazon MQ will - not be able to create VPC endpoints in VPCs that are not owned by your Amazon - Web Services account. items: type: string type: array @@ -235,15 +178,8 @@ spec: tags: additionalProperties: type: string - description: Create tags when creating the broker. type: object users: - description: |- - 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 by making RabbitMQ API calls directly to brokers - or via the RabbitMQ web console. items: description: |- A user associated with the broker. For Amazon MQ for RabbitMQ brokers, one @@ -344,7 +280,7 @@ spec: type: string conditions: description: |- - All CRS managed by ACK have a common `Status.Conditions` member that + All CRs managed by ACK have a common `Status.Conditions` member that contains a collection of `ackv1alpha1.Condition` objects that describe the various terminal states of the CR and its backend AWS service API resource diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 4536815..ded510c 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 name: mq-chart description: A Helm chart for the ACK service controller for Amazon MQ (MQ) -version: 1.0.4 -appVersion: 1.0.4 +version: 1.0.5 +appVersion: 1.0.5 home: https://github.com/aws-controllers-k8s/mq-controller icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png sources: diff --git a/helm/crds/mq.services.k8s.aws_brokers.yaml b/helm/crds/mq.services.k8s.aws_brokers.yaml index 23946b6..5b3ba0f 100644 --- a/helm/crds/mq.services.k8s.aws_brokers.yaml +++ b/helm/crds/mq.services.k8s.aws_brokers.yaml @@ -40,19 +40,8 @@ spec: description: BrokerSpec defines the desired state of Broker. properties: authenticationStrategy: - description: |- - Optional. The authentication strategy used to secure the broker. The default - is SIMPLE. type: string autoMinorVersionUpgrade: - description: |- - Enables automatic upgrades to new patch versions for brokers as new versions - are released and supported by Amazon MQ. Automatic upgrades occur during - the scheduled maintenance window or after a manual broker reboot. Set to - true by default, if no value is specified. - - Must be set to true for ActiveMQ brokers version 5.18 and above and for RabbitMQ - brokers version 3.13 and above. type: boolean configuration: description: A list of information about the configuration. @@ -64,15 +53,8 @@ spec: type: integer type: object creatorRequestID: - description: |- - The unique ID that the requester receives for the created broker. Amazon - MQ passes your ID with the API action. - - We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. - You may omit the creatorRequestId if your application doesn't require idempotency. type: string deploymentMode: - description: Required. The broker's deployment mode. type: string encryptionOptions: description: Encryption options for the broker. @@ -83,25 +65,17 @@ spec: type: boolean type: object engineType: - description: |- - Required. The type of broker engine. Currently, Amazon MQ supports ACTIVEMQ - and RABBITMQ. type: string engineVersion: - description: |- - The broker engine version. Defaults to the latest available version for the - specified broker engine type. For more information, see the ActiveMQ version - management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/activemq-version-management.html) - and the RabbitMQ version management (https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/rabbitmq-version-management.html) - sections in the Amazon MQ Developer Guide. type: string hostInstanceType: - description: Required. The broker's instance type. type: string ldapServerMetadata: description: |- Optional. The metadata of the LDAP server used to authenticate and authorize - connections to the broker. Does not apply to RabbitMQ brokers. + connections to the broker. + + Does not apply to RabbitMQ brokers. properties: hosts: items: @@ -129,7 +103,8 @@ spec: type: boolean type: object logs: - description: Enables Amazon CloudWatch logging for brokers. + description: The list of information about logs to be enabled for + the specified broker. properties: audit: type: boolean @@ -137,7 +112,9 @@ spec: type: boolean type: object maintenanceWindowStartTime: - description: The parameters that determine the WeeklyStartTime. + description: |- + The scheduled time period relative to UTC during which Amazon MQ begins to + apply pending updates or patches to the broker. properties: dayOfWeek: type: string @@ -147,21 +124,8 @@ spec: type: string type: object name: - description: |- - Required. The broker's name. This value must be unique in your Amazon Web - Services 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 Amazon Web Services services, including CloudWatch Logs. Broker names - are not intended to be used for private or sensitive data. type: string publiclyAccessible: - description: |- - Enables connections from applications outside of the VPC that hosts the broker's - subnets. Set to false by default, if no value is provided. type: boolean securityGroupRefs: items: @@ -183,33 +147,12 @@ spec: type: object type: array securityGroups: - description: |- - The list of rules (1 minimum, 125 maximum) that authorize connections to - brokers. items: type: string type: array storageType: - description: The broker's storage type. type: string subnetIDs: - description: |- - 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 Amazon MQ for - ActiveMQ deployment requires two subnets. A CLUSTER_MULTI_AZ Amazon MQ for - RabbitMQ deployment 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 (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html) - for a RabbitMQ broker, the associated VPC to which the specified subnets - belong must be owned by your Amazon Web Services account. Amazon MQ will - not be able to create VPC endpoints in VPCs that are not owned by your Amazon - Web Services account. items: type: string type: array @@ -235,15 +178,8 @@ spec: tags: additionalProperties: type: string - description: Create tags when creating the broker. type: object users: - description: |- - 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 by making RabbitMQ API calls directly to brokers - or via the RabbitMQ web console. items: description: |- A user associated with the broker. For Amazon MQ for RabbitMQ brokers, one @@ -344,7 +280,7 @@ spec: type: string conditions: description: |- - All CRS managed by ACK have a common `Status.Conditions` member that + All CRs managed by ACK have a common `Status.Conditions` member that contains a collection of `ackv1alpha1.Condition` objects that describe the various terminal states of the CR and its backend AWS service API resource diff --git a/helm/templates/NOTES.txt b/helm/templates/NOTES.txt index be3afa6..41dbcc1 100644 --- a/helm/templates/NOTES.txt +++ b/helm/templates/NOTES.txt @@ -1,5 +1,5 @@ {{ .Chart.Name }} has been installed. -This chart deploys "public.ecr.aws/aws-controllers-k8s/mq-controller:1.0.4". +This chart deploys "public.ecr.aws/aws-controllers-k8s/mq-controller:1.0.5". Check its status by running: kubectl --namespace {{ .Release.Namespace }} get pods -l "app.kubernetes.io/instance={{ .Release.Name }}" diff --git a/helm/values.yaml b/helm/values.yaml index de1099e..ed2bf57 100644 --- a/helm/values.yaml +++ b/helm/values.yaml @@ -4,7 +4,7 @@ image: repository: public.ecr.aws/aws-controllers-k8s/mq-controller - tag: 1.0.4 + tag: 1.0.5 pullPolicy: IfNotPresent pullSecrets: []