Skip to content

[JDK-Matrix] Testing JDK HttpClient Matrix in AppConfig#35387

Closed
mssfang wants to merge 1 commit into
Azure:mainfrom
mssfang:JDK-TestMatrix
Closed

[JDK-Matrix] Testing JDK HttpClient Matrix in AppConfig#35387
mssfang wants to merge 1 commit into
Azure:mainfrom
mssfang:JDK-TestMatrix

Conversation

@mssfang

@mssfang mssfang commented Jun 8, 2023

Copy link
Copy Markdown
Contributor

A follow up and split PR from #34649

This PR will test JDK HttpClient Matrix Only.

@mssfang mssfang added the Azure.Core azure-core label Jun 8, 2023
@mssfang mssfang self-assigned this Jun 8, 2023
@mssfang mssfang changed the title [JDK-Matrix] Testing in JDK in AppConfig [JDK-Matrix] Testing JDK HttpClient Matrix in AppConfig Jun 8, 2023
@mssfang mssfang added this to the 2023-07 milestone Jun 8, 2023
@azure-sdk

Copy link
Copy Markdown
Collaborator

API change check

API changes are not detected in this pull request.

@alzimmermsft

Copy link
Copy Markdown
Member

/azp run java - appconfiguration - tests

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Comment on lines +47 to +48
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should leave the compiler source and target as Java 11

* Environment values currently supported are: "ALL", "jdk", "netty", "okhttp" which is case insensitive.
* Use comma to separate http clients want to test.
* e.g. {@code set AZURE_TEST_HTTP_CLIENTS = NettyAsyncHttpClient, OkHttpAsyncHttpClient}
* e.g. {@code set AZURE_TEST_HTTP_CLIENTS = JdkHttpClient, NettyAsyncHttpClient, OkHttpAsyncHttpClient}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There needs to be further updates here to actually support JDK HttpClient. The original design isn't very flexible and requires a lot of updating to support different HttpClients.

Let's have a design overhaul here and have AZURE_TEST_HTTP_CLIENTS in the matrix pass the fully qualified HttpProvider class name and then leverage HttpClientOptions.setHttpClientProvider to configure the HttpClient used in testing. This way, if/when we add support for more HttpClients in the future the only change required is adding it as a dependency in azure-core-test and everything will just work. For now, we'll still want to support netty and okhttp as options as removing this would require all SDKs to use from source azure-core-test which we don't want for now.

Additional note, not all Storage SDKs use azure-core-test's logic here for determining which HttpClient to use, we'll need to work with them to update their test code while they transition over to Test Proxy and JUnit instead of local playback tests and Spock.

Comment on lines +59 to +67
"Agent": {
"ubuntu-20.04": { "OSVmImage": "MMSUbuntu20.04", "Pool": "azsdk-pool-mms-ubuntu-2004-general" }
},
"JavaTestVersion": "1.17",
"AZURE_TEST_HTTP_CLIENTS": "jdk",
"TestFromSource": false,
"RunAggregateReports": false,
"TestGoals": "surefire:test",
"TestOptions": ""

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For now, let's leave this change out and just add it into the matrix AppConfiguration is using, this way if the change has issues we don't break all CI runs and only AppConfiguration which we can react to quickly.

@alzimmermsft

Copy link
Copy Markdown
Member

Remember, to validate this change live testing must pass as these configurations don't get used by CI testing, or at least the HttpClient selection doesn't.

@github-actions

Copy link
Copy Markdown
Contributor

Hi @mssfang. Thank you for your interest in helping to improve the Azure SDK experience and for your contribution. We've noticed that there hasn't been recent engagement on this pull request. If this is still an active work stream, please let us know by pushing some changes or leaving a comment. Otherwise, we'll close this out in 7 days.

@github-actions github-actions Bot added the no-recent-activity There has been no recent activity on this issue. label Aug 11, 2023
@github-actions

Copy link
Copy Markdown
Contributor

Hi @mssfang. Thank you for your contribution. Since there hasn't been recent engagement, we're going to close this out. Feel free to respond with a comment containing /reopen if you'd like to continue working on these changes. Please be sure to use the command to reopen or remove the no-recent-activity label; otherwise, this is likely to be closed again with the next cleanup pass.

@github-actions github-actions Bot closed this Aug 18, 2023
@mssfang
mssfang deleted the JDK-TestMatrix branch February 8, 2024 21:41
@mssfang
mssfang restored the JDK-TestMatrix branch February 8, 2024 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Azure.Core azure-core no-recent-activity There has been no recent activity on this issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants