From 3cd8661547c65a10eb352c6034af20eb59af89e6 Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sat, 21 Jan 2023 20:41:00 +0100 Subject: [PATCH 1/8] Update cicd.yml --- .github/workflows/cicd.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 0081dc7..e07a4b3 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -62,8 +62,9 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - #- run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__fullyQualifiedNamespace=$CosmosAccount.documents.azure.com" --query "[name]" + #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 with: @@ -120,8 +121,9 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - #- run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__fullyQualifiedNamespace=$CosmosAccount.documents.azure.com" --query "[name]" + #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 with: From 763e0cbfcad2a543281dfd084545de565fb14871 Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sat, 21 Jan 2023 20:44:48 +0100 Subject: [PATCH 2/8] Update function.json --- HttpExample/function.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/HttpExample/function.json b/HttpExample/function.json index acae8b7..607717b 100644 --- a/HttpExample/function.json +++ b/HttpExample/function.json @@ -18,7 +18,7 @@ "direction": "out", "databaseName": "mydatabase", "collectionName": "mycollection", - "connectionStringSetting": "CosmosDBConnectionString" + "connection": "CosmosDBConnection" } ] -} \ No newline at end of file +} From ee757ecadf4a7ce4fd5f7a2f7a6e8d1d6a8b5d88 Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sat, 21 Jan 2023 20:47:38 +0100 Subject: [PATCH 3/8] Update cicd.yml --- .github/workflows/cicd.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index e07a4b3..b7048b0 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -62,8 +62,8 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__fullyQualifiedNamespace=$CosmosAccount.documents.azure.com" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 @@ -121,8 +121,8 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__fullyQualifiedNamespace=$CosmosAccount.documents.azure.com" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 From 6d57d2d7275ecc87ccbeb2c75c6c34b23dd7716b Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sat, 21 Jan 2023 21:07:38 +0100 Subject: [PATCH 4/8] Update cicd.yml --- .github/workflows/cicd.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index b7048b0..72f7f0a 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -62,8 +62,8 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 @@ -121,8 +121,8 @@ jobs: - run: az cosmosdb create --kind GlobalDocumentDB --locations regionName=$Location failoverPriority=0 isZoneRedundant=False --resource-group $ResourceGroup --name $CosmosAccount --capabilities EnableServerless --backup-policy-type Continuous - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 From f85564990dedbec1bce206a97b295b547d0808fe Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sun, 22 Jan 2023 11:28:45 +0100 Subject: [PATCH 5/8] Update cicd.yml --- .github/workflows/cicd.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 72f7f0a..209dd6a 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -63,7 +63,7 @@ jobs: - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId --output tsv) #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 @@ -122,7 +122,7 @@ jobs: - run: az cosmosdb sql database create --account-name $CosmosAccount --name $CosmosDatabase --resource-group $ResourceGroup - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" - - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId) + - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId --output tsv) #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 From fd34d824d1d5af3515bd3ec2bea4e03ddcbbd83e Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sun, 22 Jan 2023 11:34:35 +0100 Subject: [PATCH 6/8] Update cicd.yml --- .github/workflows/cicd.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 209dd6a..5f19168 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -64,6 +64,7 @@ jobs: - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId --output tsv) + - run: az cosmosdb update --name $CosmosAccount --resource-group $ResourceGroup --disable-key-based-metadata-write-access true #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 @@ -123,6 +124,7 @@ jobs: - run: az cosmosdb sql container create --account-name $CosmosAccount --database-name $CosmosDatabase --name $CosmosCollection --partition-key-path "/id" --resource-group $ResourceGroup - run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnection__accountEndpoint=https://$CosmosAccount.documents.azure.com:443" --query "[name]" - run: az cosmosdb sql role assignment create --account-name $CosmosAccount --resource-group $ResourceGroup --scope "/" --role-definition-name "Cosmos DB Built-in Data Contributor" --principal-id $(az functionapp identity show --name $FunctionApp --resource-group $ResourceGroup --query principalId --output tsv) + - run: az cosmosdb update --name $CosmosAccount --resource-group $ResourceGroup --disable-key-based-metadata-write-access true #- run: az functionapp config appsettings set --name $FunctionApp --resource-group $ResourceGroup --settings "CosmosDBConnectionString=$(az cosmosdb keys list --type connection-strings --name $CosmosAccount --resource-group $ResourceGroup --query connectionStrings[0].connectionString --output tsv)" --query "[name]" - uses: actions/download-artifact@v3 - uses: Azure/functions-action@v1 From 8d0bf67edfc11e235cea3369c843fe8594c1ac4c Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sun, 22 Jan 2023 11:47:13 +0100 Subject: [PATCH 7/8] Update host.json --- host.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/host.json b/host.json index 9343914..93f42ae 100644 --- a/host.json +++ b/host.json @@ -1,8 +1,8 @@ { "version": "2.0", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle", - "version": "[2.*, 3.0.0)" + "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "version": "[4.0.0, 5.0.0)" }, "customHandler": { "description": { @@ -19,4 +19,4 @@ } } } -} \ No newline at end of file +} From 9ae6a9de685cd26b17131aa2b410294f601fc9e8 Mon Sep 17 00:00:00 2001 From: tcwitte Date: Sun, 22 Jan 2023 12:00:51 +0100 Subject: [PATCH 8/8] Update host.json --- host.json | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/host.json b/host.json index 93f42ae..ddfa0d4 100644 --- a/host.json +++ b/host.json @@ -12,11 +12,7 @@ }, "extensions": { "cosmosDB": { - "connectionMode": "Gateway", - "protocol": "Https", - "leaseOptions": { - "leasePrefix": "prefix1" - } + "connectionMode": "Gateway" } } }