如何将 Github 存储库中的 JSON 文件复制到 Azure Cosmos DB?

问题描述 投票:0回答:1

我有一个包含 JSON 文件的 GitHub 存储库和一个 Azure Cosmos DB,其中这些 JSON 文件作为单独的项目。 用例是,拥有一个自动化管道,它通过 ID 将 Azure Cosmos Db 中现有的 JSON 项目替换为 GitHub 存储库中的相应项目,并创建一个新的 JSON 项目(如果 Azure Cosmos 中不存在)。

我尝试使用 Github Actions 链接 Github 和 Cosmos DB,但没有成功,因为这不是一个简单的方法。

json azure github github-actions azure-cosmosdb
1个回答
0
投票

为此,您需要使用 SDK 编写 Python 脚本并在工作流程中执行:


import azure.cosmos.cosmos_client as cosmos_client
import azure.cosmos.errors as errors
import azure.cosmos.http_constants as http_constants

import os
url = os.environ['ACCOUNT_URI']
key = os.environ['ACCOUNT_KEY']
client = cosmos_client.CosmosClient(url, {'masterKey': key})

database_id = 'testDatabase'
container_id = 'products'

// here read your json and change code below

for i in range(1, 10):
    client.UpsertItem(
        "dbs/" + database_id + "/colls/" + container_id,
        {
             'id': 'item{0}'.format(i),
             'productName': 'Widget',
             'productModel': 'Model {0}'.format(i)
        }
    )
© www.soinside.com 2019 - 2024. All rights reserved.