Skip to content

Commit 9508b2c

Browse files
authored
[Service Fabric] Fix #5338: az sf cluster create: Fix the bug where key-vault not placed in location specifed by --location (#31883)
1 parent 24a5d2c commit 9508b2c

3 files changed

Lines changed: 2701 additions & 12 deletions

File tree

src/azure-cli/azure/cli/command_modules/servicefabric/custom.py

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,8 @@ def new_cluster(cmd,
204204
vault_resource_group_name,
205205
certificate_output_folder,
206206
certificate_subject_name,
207-
secret_identifier)
207+
secret_identifier,
208+
location)
208209
vault_id = result[0]
209210
certificate_uri = result[1]
210211
cert_thumbprint = result[2]
@@ -284,6 +285,8 @@ def add_app_cert(cmd,
284285
certificate_subject_name=None,
285286
secret_identifier=None):
286287
cli_ctx = cmd.cli_ctx
288+
cluster = client.get(resource_group_name, cluster_name)
289+
location = cluster.location
287290
result = _create_certificate(cmd,
288291
cli_ctx,
289292
resource_group_name,
@@ -293,7 +296,8 @@ def add_app_cert(cmd,
293296
vault_resource_group_name,
294297
certificate_output_folder,
295298
certificate_subject_name,
296-
secret_identifier)
299+
secret_identifier,
300+
location)
297301

298302
_add_cert_to_all_vmss(cli_ctx, resource_group_name, None, result[0], result[1])
299303
return client.get(resource_group_name, cluster_name)
@@ -1072,17 +1076,17 @@ def _create_certificate(cmd,
10721076
vault_resource_group_name=None,
10731077
certificate_output_folder=None,
10741078
certificate_subject_name=None,
1075-
secret_identifier=None):
1079+
secret_identifier=None,
1080+
location=None):
10761081
_verify_cert_function_parameter(certificate_file, certificate_password,
10771082
vault_name, vault_resource_group_name,
10781083
certificate_output_folder,
10791084
certificate_subject_name,
10801085
secret_identifier)
10811086

10821087
output_file = None
1083-
rg = _get_resource_group_by_name(cli_ctx, resource_group_name)
1084-
location = rg.location
1085-
1088+
if location is None:
1089+
location = _get_resource_group_by_name(cli_ctx, resource_group_name).location
10861090
vault_id = None
10871091
secret_url = None
10881092
certificate_thumbprint = None
@@ -1778,6 +1782,9 @@ def _set_parameters_for_customize_template(cmd,
17781782
parameters = get_file_json(parameter_file)['parameters']
17791783
if parameters is None:
17801784
raise CLIError('Invalid parameters file')
1785+
1786+
location = parameters['clusterLocation']['value']
1787+
17811788
if SOURCE_VAULT_VALUE in parameters and CERTIFICATE_THUMBPRINT in parameters and CERTIFICATE_URL_VALUE in parameters:
17821789
logger.info('Found primary certificate parameters in parameters file')
17831790
result = _create_certificate(cmd,
@@ -1789,7 +1796,8 @@ def _set_parameters_for_customize_template(cmd,
17891796
vault_resource_group_name,
17901797
certificate_output_folder,
17911798
certificate_subject_name,
1792-
secret_identifier)
1799+
secret_identifier,
1800+
location)
17931801
parameters[SOURCE_VAULT_VALUE]['value'] = result[0]
17941802
parameters[CERTIFICATE_URL_VALUE]['value'] = result[1]
17951803
parameters[CERTIFICATE_THUMBPRINT]['value'] = result[2]
@@ -1810,7 +1818,8 @@ def _set_parameters_for_customize_template(cmd,
18101818
vault_resource_group_name,
18111819
certificate_output_folder,
18121820
certificate_subject_name,
1813-
secret_identifier)
1821+
secret_identifier,
1822+
location)
18141823
parameters[SOURCE_VAULT_VALUE]['value'] = result[0]
18151824
parameters[CERTIFICATE_URL_VALUE]['value'] = result[1]
18161825
parameters[CERTIFICATE_THUMBPRINT]['value'] = result[2]

0 commit comments

Comments
 (0)