Skip to content

Commit e70c46a

Browse files
authored
{cosmosdb-preview} Making delegated-subnet-id optional and adding the missing --private-endpoint-ip-address param for MI cassandra data center (#8666)
* Adding private-endpoint-ip-address to MI Cassandra datacenter creation * az cli changes to make subnet optional and introducing the param --private-endpoint-ip-address in MI Cassandra datacenter creation flow * lint fixes * lint fixes * removing local changes * fixing test cases
1 parent 4c87b99 commit e70c46a

6 files changed

Lines changed: 3095 additions & 262 deletions

File tree

src/cosmosdb-preview/HISTORY.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
.. :changelog:
22
Release History
33
===============
4+
1.4.0
5+
* Add support for private endpoint in VPN based datacenter deployments in managed cassandra.
6+
7+
+++++++
48
1.3.0
59
* Add support for VPN cluster deployments in managed cassandra.
610

src/cosmosdb-preview/azext_cosmosdb_preview/_params.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ def load_arguments(self, _):
179179
# Managed Cassandra Cluster
180180
with self.argument_context('managed-cassandra cluster create') as c:
181181
c.argument('location', options_list=['--location', '-l'], help="Azure Location of the Cluster", required=True)
182-
c.argument('delegated_management_subnet_id', options_list=['--delegated-management-subnet-id', '-s'], help="The resource id of a subnet where the ip address of the cassandra management server will be allocated. This subnet must have connectivity to the delegated_subnet_id subnet of each data center.", required=True)
182+
c.argument('delegated_management_subnet_id', options_list=['--delegated-management-subnet-id', '-s'], help="The resource id of a subnet where the ip address of the cassandra management server will be allocated. This subnet must have connectivity to the delegated_subnet_id subnet of each data center. This param is not needed for VPN clusters.")
183183
c.argument('initial_cassandra_admin_password', options_list=['--initial-cassandra-admin-password', '-i'], help="The intial password to be configured when a cluster is created for authentication_method Cassandra.")
184184
c.argument('restore_from_backup_id', help="The resource id of a backup. If provided on create, the backup will be used to prepopulate the cluster. The cluster data center count and node counts must match the backup.")
185185
c.argument('cluster_name_override', help="If a cluster must have a name that is not a valid azure resource name, this field can be specified to choose the Cassandra cluster name. Otherwise, the resource name will be used as the cluster name.")
@@ -228,6 +228,7 @@ def load_arguments(self, _):
228228
c.argument('disk_sku', options_list=['--disk-sku'], help="Disk SKU used for data centers. Default value is P30.")
229229
c.argument('disk_capacity', options_list=['--disk-capacity'], help="Number of disk used for data centers. Default value is 4.")
230230
c.argument('availability_zone', options_list=['--availability-zone', '-z'], arg_type=get_three_state_flag(), help="If the data center haves Availability Zone feature, apply it to the Virtual Machine ScaleSet that host the data center virtual machines.")
231+
c.argument('private_endpoint_ip_address', options_list=['--private-endpoint-ip-address', '-i'], help="This is the IP address of the private Endpoint NIC, to be used in cases of VPN based cassandra datacenters.")
231232

232233
# Managed Cassandra Datacenter
233234
with self.argument_context('managed-cassandra datacenter list') as c:

src/cosmosdb-preview/azext_cosmosdb_preview/custom.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ def cli_cosmosdb_managed_cassandra_cluster_create(client,
325325
resource_group_name,
326326
cluster_name,
327327
location,
328-
delegated_management_subnet_id,
328+
delegated_management_subnet_id=None,
329329
tags=None,
330330
identity_type='None',
331331
cluster_name_override=None,
@@ -519,7 +519,8 @@ def cli_cosmosdb_managed_cassandra_datacenter_create(client,
519519
service_user_password=None,
520520
search_base_distinguished_name=None,
521521
search_filter_template=None,
522-
server_certificates=None):
522+
server_certificates=None,
523+
private_endpoint_ip_address=None):
523524

524525
"""Creates an Azure Managed Cassandra Datacenter"""
525526

@@ -544,7 +545,8 @@ def cli_cosmosdb_managed_cassandra_datacenter_create(client,
544545
availability_zone=availability_zone,
545546
managed_disk_customer_key_uri=managed_disk_customer_key_uri,
546547
backup_storage_customer_key_uri=backup_storage_customer_key_uri,
547-
authentication_method_ldap_properties=authentication_method_ldap_properties
548+
authentication_method_ldap_properties=authentication_method_ldap_properties,
549+
private_endpoint_ip_address=private_endpoint_ip_address
548550
)
549551

550552
data_center_resource = DataCenterResource(

0 commit comments

Comments
 (0)