예제 #1
0
#     TextDyField.data_source('DomainName', 'domain_name'),
#     TextDyField.data_source('OriginPath', 'origin_path'),
# ]
# origin_groups = TableDynamicView({'name': 'Origin Groups', 'key_path': 'data.distribution_config.origin_groups.items'})
# origin_groups.data_source = [
#     TextDyField.data_source('Id', 'id'),
#     ListDyField.data_source('Members', 'members.items',
#                             view_option=ListViewOption({
#                                 'item': TextDyField(),
#                                 'sub_key': 'cname',
#                             })),
# ]
#
# metadata.sub_data = [origins, origin_groups]

meta = CloudServiceMeta.set()


class CloudFrontResource(CloudServiceResource):
    cloud_service_group = StringType(default='CloudFront')


class DistributionResource(CloudFrontResource):
    cloud_service_type = StringType(default='Distribution')
    data = ModelType(DistributionData)
    cloud_service_meta = ModelType(CloudServiceMeta, default=meta)


class CloudFrontResponse(CloudServiceResponse):
    resource = PolyModelType(DistributionResource)
예제 #2
0
#     TextDyField.data_source('Encryption at-rest', 'data.cluster.at_rest_encryption_enabled'),
#     TextDyField.data_source('Redis AUTH', 'data.auth_enabled'),
#     TextDyField.data_source('AUTH Token Last Modified Date', 'data.auth_token_last_modified_date'),
#     TextDyField.data_source('Customer Managed CMK', 'data.cluster.kms_key_id'),
# ]
#
# redis_node = TableDynamicView({'name': 'Nodes', 'key_path': 'data.nodes'})
# redis_node.data_source = [
#     TextDyField.data_source('Name', 'data.cluster_name'),
# ]
#
# redis_metadata = BaseMetaData()
# redis_metadata.details = [redis_base_detail, ]
# redis_metadata.sub_data = [redis_node, ]

memcached_metadata = CloudServiceMeta.set()
redis_metadata = CloudServiceMeta.set()


# Memcached
class ElasticCacheResource(CloudServiceResource):
    cloud_service_group = StringType(default='ElastiCache')


class MemcachedResource(ElasticCacheResource):
    cloud_service_type = StringType(default='Memcached')
    data = ModelType(Memcached)
    cloud_service_meta = ModelType(CloudServiceMeta,
                                   default=memcached_metadata)