Esempio n. 1
0
def cli_cosmosdb_gremlin_graph_create(client,
                                      resource_group_name,
                                      account_name,
                                      database_name,
                                      graph_name,
                                      partition_key_path,
                                      default_ttl=None,
                                      indexing_policy=DEFAULT_INDEXING_POLICY,
                                      throughput=None,
                                      conflict_resolution_policy=None):
    """Creates an Azure Cosmos DB Gremlin graph """
    gremlin_graph_resource = GremlinGraphResource(id=graph_name)

    _populate_gremlin_graph_definition(gremlin_graph_resource,
                                       partition_key_path, default_ttl,
                                       indexing_policy,
                                       conflict_resolution_policy)

    options = {}
    if throughput:
        options['Throughput'] = throughput

    gremlin_graph_create_update_resource = GremlinGraphCreateUpdateParameters(
        resource=gremlin_graph_resource, options=options)

    return client.create_update_gremlin_graph(
        resource_group_name, account_name, database_name, graph_name,
        gremlin_graph_create_update_resource)
Esempio n. 2
0
def cli_cosmosdb_gremlin_graph_update(client,
                                      resource_group_name,
                                      account_name,
                                      database_name,
                                      graph_name,
                                      default_ttl=None,
                                      indexing_policy=None):
    """Updates an Azure Cosmos DB Gremlin graph """
    logger.debug('reading Gremlin graph')
    gremlin_graph = client.get_gremlin_graph(resource_group_name, account_name,
                                             database_name, graph_name)

    gremlin_graph_resource = GremlinGraphResource(id=graph_name)
    gremlin_graph_resource.partition_key = gremlin_graph.partition_key
    gremlin_graph_resource.indexing_policy = gremlin_graph.indexing_policy
    gremlin_graph_resource.default_ttl = gremlin_graph.default_ttl
    gremlin_graph_resource.unique_key_policy = gremlin_graph.unique_key_policy
    gremlin_graph_resource.conflict_resolution_policy = gremlin_graph.conflict_resolution_policy

    if _populate_gremlin_graph_definition(gremlin_graph_resource, None,
                                          default_ttl, indexing_policy):
        logger.debug('replacing Gremlin graph')

    return client.create_update_gremlin_graph(resource_group_name,
                                              account_name, database_name,
                                              graph_name,
                                              gremlin_graph_resource, {})