Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 22 additions & 19 deletions src/spring-cloud/azext_spring_cloud/_app_validator.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,49 +22,44 @@

def fulfill_deployment_param(cmd, namespace):
client = cf_spring_cloud_20220101preview(cmd.cli_ctx)
if not namespace.name or not namespace.service or not namespace.resource_group:
name = _get_app_name_from_namespace(namespace)
if not name or not namespace.service or not namespace.resource_group:
return
if namespace.deployment:
namespace.deployment = _ensure_deployment_exist(client, namespace.resource_group, namespace.service, namespace.name, namespace.deployment)
namespace.deployment = _ensure_deployment_exist(client, namespace.resource_group, namespace.service, name, namespace.deployment)
else:
namespace.deployment = _ensure_active_deployment_exist_and_get(client, namespace.resource_group, namespace.service, namespace.name)
namespace.deployment = _ensure_active_deployment_exist_and_get(client, namespace.resource_group, namespace.service, name)


def fulfill_deployment_param_or_warning(cmd, namespace):
client = cf_spring_cloud_20220101preview(cmd.cli_ctx)
if not namespace.name or not namespace.service or not namespace.resource_group:
name = _get_app_name_from_namespace(namespace)
if not name or not namespace.service or not namespace.resource_group:
return
if namespace.deployment:
namespace.deployment = _ensure_deployment_exist(client, namespace.resource_group, namespace.service, namespace.name, namespace.deployment)
namespace.deployment = _ensure_deployment_exist(client, namespace.resource_group, namespace.service, name, namespace.deployment)
else:
namespace.deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, namespace.name)
namespace.deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, name)
if not namespace.deployment:
logger.warning(NO_PRODUCTION_DEPLOYMENT_SET_ERROR)


def active_deployment_exist(cmd, namespace):
if not namespace.name or not namespace.service or not namespace.resource_group:
name = _get_app_name_from_namespace(namespace)
if not name or not namespace.service or not namespace.resource_group:
return
client = cf_spring_cloud_20220101preview(cmd.cli_ctx)
deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, namespace.name)
deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, name)
if not deployment:
raise InvalidArgumentValueError(NO_PRODUCTION_DEPLOYMENT_SET_ERROR)


def active_deployment_exist_or_warning(cmd, namespace):
if not namespace.name or not namespace.service or not namespace.resource_group:
name = _get_app_name_from_namespace(namespace)
if not name or not namespace.service or not namespace.resource_group:
return
client = cf_spring_cloud_20220101preview(cmd.cli_ctx)
deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, namespace.name)
if not deployment:
logger.warning(NO_PRODUCTION_DEPLOYMENT_SET_ERROR)


def active_deployment_exist_under_app_or_warning(cmd, namespace):
if not namespace.app or not namespace.service or not namespace.resource_group:
return
client = cf_spring_cloud_20220101preview(cmd.cli_ctx)
deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, namespace.app)
deployment = _get_active_deployment(client, namespace.resource_group, namespace.service, name)
if not deployment:
logger.warning(NO_PRODUCTION_DEPLOYMENT_SET_ERROR)

Expand Down Expand Up @@ -127,3 +122,11 @@ def validate_cpu(namespace):

def validate_memory(namespace):
namespace.memory = validate_memory_value(namespace.memory)


def _get_app_name_from_namespace(namespace):
if hasattr(namespace, 'app'):
return namespace.app
elif hasattr(namespace, 'name'):
return namespace.name
return None
6 changes: 3 additions & 3 deletions src/spring-cloud/azext_spring_cloud/_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
validate_api_portal_instance_count,
validate_buildpack_binding_exist, validate_buildpack_binding_not_exist,
validate_buildpack_binding_properties, validate_buildpack_binding_secrets)
from ._app_validator import (fulfill_deployment_param, active_deployment_exist, active_deployment_exist_under_app_or_warning,
from ._app_validator import (fulfill_deployment_param, active_deployment_exist,
ensure_not_active_deployment, validate_deloy_path, validate_deloyment_create_path,
validate_cpu, validate_memory, fulfill_deployment_param_or_warning, active_deployment_exist_or_warning)
from ._utils import ApiType
Expand Down Expand Up @@ -353,7 +353,7 @@ def prepare_logs_argument(c):

with self.argument_context('spring-cloud app binding') as c:
c.argument('app', app_name_type, help='Name of app.',
validator=active_deployment_exist_under_app_or_warning)
validator=active_deployment_exist_or_warning)
c.argument('name', name_type, help='Name of service binding.')

for scope in ['spring-cloud app binding cosmos add', 'spring-cloud app binding mysql add', 'spring-cloud app binding redis add']:
Expand Down Expand Up @@ -455,7 +455,7 @@ def prepare_logs_argument(c):

with self.argument_context('spring-cloud app custom-domain') as c:
c.argument('service', service_name_type)
c.argument('app', app_name_type, help='Name of app.', validator=active_deployment_exist_under_app_or_warning)
c.argument('app', app_name_type, help='Name of app.', validator=active_deployment_exist_or_warning)
c.argument('domain_name', help='Name of custom domain.')

with self.argument_context('spring-cloud app custom-domain bind') as c:
Expand Down
Loading