def prepare_connectivity(self, context, request, cancellation_context):
"""
Creates a connectivity for the Sandbox:
1.Resource group
2.Storage account
3.Key pair
4.Network Security Group
5.Creating a subnet under the
:param context:
:param request:
:param cancellation_context cloudshell.shell.core.driver_context.CancellationContext instance
:return:
"""
with LoggingSessionContext(context) as logger:
with ErrorHandlingContext(logger):
logger.info('Preparing Connectivity for Azure VM...')
with CloudShellSessionContext(context) as cloudshell_session:
cloud_provider_model = self.model_parser.convert_to_cloud_provider_resource_model(
resource=context.resource,
cloudshell_session=cloudshell_session)
azure_clients = AzureClientsManager(cloud_provider_model)
prepare_connectivity_request = DeployDataHolder(jsonpickle.decode(request))
prepare_connectivity_request = getattr(prepare_connectivity_request, 'driverRequest', None)
result = self.prepare_connectivity_operation.prepare_connectivity(
reservation=self.model_parser.convert_to_reservation_model(context.reservation),
cloud_provider_model=cloud_provider_model,
storage_client=azure_clients.storage_client,
resource_client=azure_clients.resource_client,
network_client=azure_clients.network_client,
logger=logger,
request=prepare_connectivity_request,
cancellation_context=cancellation_context)
logger.info('End Preparing Connectivity for Azure VM')
return self.command_result_parser.set_command_result({'driverResponse': {'actionResults': result}})
评论列表
文章目录