oscerd opened a new pull request, #29249: URL: https://github.com/apache/camel/pull/29249
**Depends on #29229** (CAMEL-26615), which adds the Floci AZ container to the Azure test-infra, and on **#29243** (CAMEL-26637), which the integration tests need: until both are merged, this PR also shows their commits. It stays a draft until then. ## Description The integration tests of camel-azure-cosmosdb ran only against a real account (`-Dendpoint`, `-DaccessKey`). [Floci AZ](https://github.com/floci-io/floci-az) emulates the Cosmos DB NoSQL API. This PR: - adds a `camel-test-infra-azure-cosmosdb` module: a local service on Floci AZ with TLS (`camel infra run azure cosmos-db`, which prints the endpoint and the key), a remote one, and `AzureCosmosDbClientUtils`, which builds the client, in gateway mode and with no endpoint discovery for Floci AZ. The Java SDK requires TLS and has no option for the certificates a client trusts: it loads the default trust store of the JVM when the client is built. So the client is built while the default trust store holds the certificates of the JVM and the certificate authority of Floci AZ, and the settings of the JVM are restored right after; - runs the integration tests against it by default, and against an account, as before, when `endpoint` and `accessKey` are given; - skips the integration tests on ppc64le and s390x, where the Floci AZ image is not available. Remote only, with the Floci AZ 0.16.0 gap in their `disabledReason`: the change feed tests (`CosmosDbConsumerIT` and `testCaptureChangeFeed`), the throughput test (the offers answer 501), and the database and container query tests (a query is taken as a create). `CosmosDbContainerOperationsIT` deletes the lease database only when the change feed test created it. The integration tests found CAMEL-26637 (a partition key path without its leading `/`), which is fixed in its own PR. ## Testing - 22 integration tests: 16 pass against Floci AZ 0.16.0, 6 are remote only; the 59 unit tests pass. - Full reactor build; the test-infra metadata is regenerated. _Claude Code on behalf of Andrea Cosentino_ 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
