def _get_staging_table_by_name( context, deployment_name, resource_group_name=dynamic_content_settings.get_default_resource_group(), table_name=dynamic_content_settings.get_default_staging_table_name()): """Returns the resource id of the staging table.""" return _get_stack_resource_by_name(context, deployment_name, resource_group_name, table_name)
def _get_request_lambda_by_name( context, deployment_name, resource_group_name=dynamic_content_settings.get_default_resource_group(), lambda_name=dynamic_content_settings.get_default_request_lambda_name()): """Returns the resource id of the request lambda.""" return _get_stack_resource_by_name(context, deployment_name, resource_group_name, lambda_name)
def get_content_bucket(context: object) -> str: """ Returns the resource id of the default content bucket Arguments context -- context to use """ return get_content_bucket_by_name(context, context.config.default_deployment, dynamic_content_settings.get_default_resource_group(), dynamic_content_settings.get_default_bucket_name())
def gui_is_stack_configured(context): try: stack_id = context.config.get_resource_group_stack_id( context.config.default_deployment, dynamic_content_settings.get_default_resource_group(), optional=True) except: stack_id = None return stack_id is not None
def get_staging_table(context, deployment_name, versioned=False): if versioned: staging_table_name = dynamic_content_settings.get_default_versioned_staging_table_name( ) else: staging_table_name = dynamic_content_settings.get_default_staging_table_name( ) staging_table = _get_staging_table_by_name( context, deployment_name, dynamic_content_settings.get_default_resource_group(), staging_table_name) return staging_table
def _get_access_bucket(context, deployment_name): bucket_name = dynamic_content_settings.get_access_bucket_name() resource_group_name = dynamic_content_settings.get_default_resource_group() '''Returns the resource id of the content bucket.''' if deployment_name is None: deployment_name = context.config.default_deployment stack_id = context.config.get_resource_group_stack_id(deployment_name, resource_group_name, optional=True) bucket_resource = context.stack.get_physical_resource_id( stack_id, bucket_name) return bucket_resource
def __get_service_stack_id(context, args) -> str: deployment_name = args.deployment_name or None resource_group_name = dynamic_content_settings.get_default_resource_group() if deployment_name is None: deployment_name = context.config.default_deployment stack_id = context.config.get_resource_group_stack_id(deployment_name, resource_group_name, optional=True) if not stack_id: raise RuntimeError( 'Unable find to deployment stack for DynamicContent') return stack_id
def _get_distribution_id_by_name( context, deployment_name, resource_group_name=dynamic_content_settings.get_default_resource_group(), distribution_name=get_cloudfront_distribution()): """Returns the resource id of the cloudfront distribution.""" if deployment_name is None: deployment_name = context.config.default_deployment stack_id = context.config.get_resource_group_stack_id(deployment_name, resource_group_name, optional=True) distribution_id = context.stack.get_physical_resource_id( stack_id, distribution_name) return distribution_id
def get_content_bucket_by_name(context: object, deployment_name: str, resource_group_name: str = dynamic_content_settings.get_default_resource_group(), bucket_name: str = dynamic_content_settings.get_default_bucket_name()) -> str: """ Returns the resource id of the content bucket Arguments context -- context to use deployment_name -- name of the deployment resource_group_name -- name of the resource group bucket_name -- name of the bucket """ if not deployment_name: deployment_name = context.config.default_deployment stack_id = context.config.get_resource_group_stack_id(deployment_name, resource_group_name, optional=True) bucket_resource = context.stack.get_physical_resource_id(stack_id, bucket_name) return bucket_resource
def after_this_resource_group_updated(hook, deployment_name, **kwargs): if not content_manifest.validate_writable(hook.context, None): # Not raising here - we want to continue and let the user upload after return ## Pass None to upload whatever is set in the startup/bootstrap manifest and immediately stage it as PUBLIC staging_args = {} staging_args['StagingStatus'] = 'PUBLIC' auto_upload_name = None resource_group = hook.context.resource_groups.get( dynamic_content_settings.get_default_resource_group()) if resource_group: auto_upload_name = resource_group.get_editor_setting( 'DynamicContentDefaultManifest') content_manifest.upload_manifest_content(hook.context, auto_upload_name, deployment_name, staging_args)
def _get_content_bucket(context): return _get_content_bucket_by_name( context, context.config.default_deployment, dynamic_content_settings.get_default_resource_group(), dynamic_content_settings.get_default_bucket_name())
def _get_request_lambda(context): return _get_request_lambda_by_name( context, context.config.default_deployment, dynamic_content_settings.get_default_resource_group(), dynamic_content_settings.get_default_request_lambda_name())
def _get_staging_table(context, deployment_name): return _get_staging_table_by_name( context, deployment_name, dynamic_content_settings.get_default_resource_group(), dynamic_content_settings.get_default_staging_table_name())
def _get_distribution_id(context): return _get_distribution_id_by_name( context, context.config.default_deployment, dynamic_content_settings.get_default_resource_group(), get_cloudfront_distribution())