Skip to content

Commit 9df04e6

Browse files
Merge branch 'main' into fix/servicebus-batch-size-cap-ICM51000000793879
2 parents 0ba9330 + 09053b7 commit 9df04e6

14 files changed

Lines changed: 964 additions & 0 deletions

File tree

.vscode/cspell.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@
111111
"sdk/cosmos/azure-cosmos-spark_4-1_2-13/**",
112112
"sdk/cosmos/azure-cosmos-spark-account-data-resolver-sample/**",
113113
"sdk/cosmos/fabric-cosmos-spark-auth_3/**",
114+
"sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/**",
114115
"sdk/cosmos/azure-cosmos-encryption/**",
115116
"sdk/cosmos/azure-cosmos-spark_3_2-12/**",
116117
"sdk/spring/azure-spring-data-cosmos/**",

eng/.docsettings.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ known_content_issues:
8383
- ['sdk/cosmos/azure-cosmos-spark_4-1_2-13/README.md', '#3113']
8484
- ['sdk/cosmos/azure-cosmos-spark-account-data-resolver-sample/README.md', '#3113']
8585
- ['sdk/cosmos/fabric-cosmos-spark-auth_3/README.md', '#3113']
86+
- ['sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/README.md', '#3113']
8687
- ['sdk/cosmos/azure-cosmos-spark_3_2-12/dev/README.md', '#3113']
8788
- ['sdk/cosmos/azure-cosmos-spark_3_2-12/docs/catalog-api.md', '#3113']
8889
- ['sdk/cosmos/azure-cosmos-spark_3_2-12/docs/configuration-reference.md', '#3113']

eng/versioning/external_dependencies.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,7 @@ cosmos_com.google.guava:guava;33.0.0-jre
229229
cosmos_io.dropwizard.metrics:metrics-core;4.1.0
230230
cosmos_org.hdrhistogram:HdrHistogram;2.1.12
231231
cosmos_com.microsoft.azure.synapse:synapseutils_2.12;1.5.4
232+
cosmos_com.microsoft.azure.synapse:synapseutils_2.13;1.6.2
232233

233234
## Cosmos Spark connector under sdk\cosmos\azure-cosmos-spark_3-<version>_2-12\pom.xml
234235
# Cosmos Spark connector runtime dependencies - provided by Spark runtime/host

eng/versioning/version_client.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ com.azure.cosmos.spark:azure-cosmos-spark_4;0.0.1-beta.1;0.0.1-beta.1
121121
com.azure.cosmos.spark:azure-cosmos-spark_4-0_2-13;4.48.0;4.49.0-beta.1
122122
com.azure.cosmos.spark:azure-cosmos-spark_4-1_2-13;4.48.0;4.49.0-beta.1
123123
com.azure.cosmos.spark:fabric-cosmos-spark-auth_3;1.1.0;1.2.0-beta.1
124+
com.azure.cosmos.spark:fabric-cosmos-spark-auth_4-0_2-13;1.0.0-beta.1;1.0.0-beta.1
124125
com.azure:azure-cosmos-tests;1.0.0-beta.1;1.0.0-beta.1
125126
com.azure:azure-data-appconfiguration;1.9.2;1.10.0-beta.1
126127
com.azure.cosmos.kafka:azure-cosmos-kafka-connect;2.10.0;2.11.0-beta.1

sdk/cosmos/ci.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ trigger:
2323
- sdk/cosmos/azure-cosmos-spark_4/
2424
- sdk/cosmos/azure-cosmos-spark_4-1_2-13/
2525
- sdk/cosmos/fabric-cosmos-spark-auth_3/
26+
- sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/
2627
- sdk/cosmos/azure-cosmos-test/
2728
- sdk/cosmos/azure-cosmos-tests/
2829
- sdk/cosmos/azure-cosmos-kafka-connect/
@@ -43,6 +44,7 @@ trigger:
4344
- sdk/cosmos/azure-cosmos-spark_4/pom.xml
4445
- sdk/cosmos/azure-cosmos-spark_4-1_2-13/pom.xml
4546
- sdk/cosmos/fabric-cosmos-spark-auth_3/pom.xml
47+
- sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/pom.xml
4648
- sdk/cosmos/azure-cosmos-kafka-connect/pom.xml
4749

4850
pr:
@@ -72,6 +74,7 @@ pr:
7274
- sdk/cosmos/azure-cosmos-spark_4/
7375
- sdk/cosmos/azure-cosmos-spark_4-1_2-13/
7476
- sdk/cosmos/fabric-cosmos-spark-auth_3/
77+
- sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/
7578
- sdk/cosmos/faq/
7679
- sdk/cosmos/azure-cosmos-kafka-connect/
7780
exclude:
@@ -89,6 +92,7 @@ pr:
8992
- sdk/cosmos/azure-cosmos-spark_4/pom.xml
9093
- sdk/cosmos/azure-cosmos-spark_4-1_2-13/pom.xml
9194
- sdk/cosmos/fabric-cosmos-spark-auth_3/pom.xml
95+
- sdk/cosmos/fabric-cosmos-spark-auth_4-0_2-13/pom.xml
9296
- sdk/cosmos/azure-cosmos-test/pom.xml
9397
- sdk/cosmos/azure-cosmos-tests/pom.xml
9498
- sdk/cosmos/azure-cosmos-kafka-connect/pom.xml
@@ -129,6 +133,10 @@ parameters:
129133
displayName: 'fabric-cosmos-spark-auth_3'
130134
type: boolean
131135
default: true
136+
- name: release_fabriccosmossparkauth4
137+
displayName: 'fabric-cosmos-spark-auth_4-0_2-13'
138+
type: boolean
139+
default: true
132140
- name: release_azurecosmostest
133141
displayName: 'azure-cosmos-test'
134142
type: boolean
@@ -201,6 +209,13 @@ extends:
201209
skipPublishDocGithubIo: true
202210
skipPublishDocMs: true
203211
releaseInBatch: ${{ parameters.release_fabriccosmossparkauth3 }}
212+
- name: fabric-cosmos-spark-auth_4-0_2-13
213+
groupId: com.azure.cosmos.spark
214+
safeName: fabriccosmossparkauth4
215+
uberJar: true
216+
skipPublishDocGithubIo: true
217+
skipPublishDocMs: true
218+
releaseInBatch: ${{ parameters.release_fabriccosmossparkauth4 }}
204219
- name: azure-cosmos-test
205220
groupId: com.azure
206221
safeName: azurecosmostest
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
## Release History
2+
3+
### 1.0.0-beta.1 (Unreleased)
4+
5+
#### Features Added
6+
* Added Spark 4.0 / Scala 2.13 variant of the Fabric account data resolver for Azure Cosmos DB Spark Connector. This allows signed-in users in Fabric Runtime 2.0 to authenticate to CosmosDB using Microsoft Entra ID.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
## Azure Cosmos DB OLTP Spark 4 Connector Fabric Account Data Resolver
2+
3+
This project provides an implementation of the `AccountDataResolver` interface for the Azure Cosmos DB Spark Connector, specifically designed to work with Azure Fabric accounts.
4+
It allows a signed-in user to authenticate with Microsoft Entra ID within the Azure Fabric environment. To use this implementation, you have to upload the jar file for this project to your fabric environment. It is also necessary to grant the signed-in user's
5+
identity with the correct permissions to perform data plane operations. Follow the instructions [here](https://learn.microsoft.com/azure/cosmos-db/nosql/how-to-grant-data-plane-access?tabs=built-in-definition%2Ccsharp&pivots=azure-interface-cli) to grant the relevant permissions.
6+
To learn more about Microsoft Entra ID (AAD) authentication using the Azure Cosmos DB Spark Connector, see the
7+
[AAD Auth Documentation](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/cosmos/azure-cosmos-spark_3/docs/AAD-Auth.md). Fabric Native accounts only support gateway mode, so the `spark.cosmos.useGatewayMode` must be set to `true` in the Spark configuration for these accounts.
8+
9+
### Configuration options
10+
11+
| Config Property Name | Default | Description |
12+
|:----------------------------------------------|:--------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------|
13+
| `spark.cosmos.accountDataResolverServiceName` | None | Set this value to `com.azure.cosmos.spark.fabric.FabricAccountDataResolver` to use this implementation of the `AccountDataResolver` |
14+
| `spark.cosmos.auth.aad.audience` | `https://cosmos.azure.com/.default` | Set this value to change the audience used to obtain the Entra Id token. |
15+
16+
### Current Limitations
17+
18+
* There is no support for the [catalog api](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/cosmos/azure-cosmos-spark_3/docs/catalog-api.md) operations using this implementation of the `AccountDataResolver` with a CosmosDB Fabric Native Account.
19+
* Only Spark 4.0 is supported with this implementation of the `AccountDataResolver`.

0 commit comments

Comments
 (0)