diff --git a/model/clusters_mgmt/v1/aws_machine_pool_type.model b/model/clusters_mgmt/v1/aws_machine_pool_type.model index 77778688..fd903558 100644 --- a/model/clusters_mgmt/v1/aws_machine_pool_type.model +++ b/model/clusters_mgmt/v1/aws_machine_pool_type.model @@ -18,4 +18,7 @@ limitations under the License. class AWSMachinePool { // Use spot instances on this machine pool to reduce cost. SpotMarketOptions AWSSpotMarketOptions + + // Additional AWS Security Groups to be added machine pool. Note that machine pools can only be worker node at the time. + AdditionalSecurityGroupIds []String } diff --git a/model/clusters_mgmt/v1/aws_security_group_type.model b/model/clusters_mgmt/v1/aws_security_group_type.model new file mode 100644 index 00000000..4bc347e4 --- /dev/null +++ b/model/clusters_mgmt/v1/aws_security_group_type.model @@ -0,0 +1,24 @@ +/* +Copyright (c) 2023 Red Hat, Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// AWS security group object +struct SecurityGroup { + // The security group ID. + ID String + + // Name of the security group according to its `Name` tag on AWS. + Name String +} diff --git a/model/clusters_mgmt/v1/aws_type.model b/model/clusters_mgmt/v1/aws_type.model index 8bab3b2e..91643c0f 100644 --- a/model/clusters_mgmt/v1/aws_type.model +++ b/model/clusters_mgmt/v1/aws_type.model @@ -61,4 +61,7 @@ struct AWS { // Role ARN for private hosted zone. PrivateHostedZoneRoleARN String + + // Additional AWS Security Groups to be added to default worker (compute) machine pool. + AdditionalComputeSecurityGroupIds []String } diff --git a/model/clusters_mgmt/v1/sts_type.model b/model/clusters_mgmt/v1/sts_type.model index c41fad04..ceb6a8d1 100644 --- a/model/clusters_mgmt/v1/sts_type.model +++ b/model/clusters_mgmt/v1/sts_type.model @@ -50,6 +50,6 @@ struct STS { // If true, cluster account and operator roles have managed policies attached. ManagedPolicies Boolean - // Registered Oidc Config, if available holds information related to the oidc config + // Registered Oidc Config, if available holds information related to the oidc config. OidcConfig OidcConfig } diff --git a/model/clusters_mgmt/v1/vpc_inquiry_type.model b/model/clusters_mgmt/v1/vpc_inquiry_type.model index 503db7e3..95777a36 100644 --- a/model/clusters_mgmt/v1/vpc_inquiry_type.model +++ b/model/clusters_mgmt/v1/vpc_inquiry_type.model @@ -28,6 +28,9 @@ struct CloudVPC { // List of AWS subnetworks with details. AWSSubnets []Subnetwork + // List of AWS security groups with details. + AWSSecurityGroups []SecurityGroup + // CIDR block of the virtual private cloud. CIDRBlock String }