Skip to content

chore: Migrate auth commits#12723

Open
lqiu96 wants to merge 10 commits intomainfrom
migrate-auth-commits
Open

chore: Migrate auth commits#12723
lqiu96 wants to merge 10 commits intomainfrom
migrate-auth-commits

Conversation

@lqiu96
Copy link
Copy Markdown
Member

@lqiu96 lqiu96 commented Apr 8, 2026

No description provided.

lqiu96 and others added 7 commits March 26, 2026 10:45
* chore(oauth2_http): Improve IdTokenCredentials quality and docs

* chore: Fix lint issues

Original-PR: googleapis/google-auth-library-java#1909
)

* chore: Add ObsoleteApi annotation

* chore: Add tests for serializing ImpersonatedCredentials

* chore: Restore old code

* chore: Update error message

* chore: Fix failing test issue

* chore: Remove old tests referecing obsolete api functionality

Original-PR: googleapis/google-auth-library-java#1908
* chore: Enable SSL debug logs for GraalVM image

* chore: Pass SSL debug config to the native image

* chore: Unset the tool options

* chore: Set the native image truststore directly

* chore: Test runtime args for graalvm

* chore: Use the execution-id

* chore: latest runs

* chore: Add comments to explain

Original-PR: googleapis/google-auth-library-java#1914
* chore: migrate tests from JUnit 4 to JUnit 5

* fix: move @test annotations to separate lines

* chore: Fix JUnit annotations being on the same line

* chore: Fix samples imports to use new junit and truth

* chore: Fix sonatype complaints in tests

* chore: Address sonatype complaints

* chore: Address the next batch of complaints

* chore: Fix all the tests

* refactor(TokenVerifierTest): use assertThrows for expected exceptions

* chore: Fix line issues

* chore: Fix remaining sonatype complaints

* chore: Revert Junit5 changes in samples directory

* chore: Revert Junit5 changes in samples directory

* chore: Remove end of file whitespace

* chore: Remove whitespace

* chore: Fix lint issues

Original-PR: googleapis/google-auth-library-java#1870
* fix: allow for ES algorithm in GdchCredentials

* test: partially adapt tests

* test: finish adjusting tests

* chore: format

* fix: restore credential name

* docs: restore license

* fix: restore removed code

* test: increase coverage

* test(gdch): parameterize test

* test: remove unused var

* chore: remove unused throw clause

* test: parameterize more

* fix: remove unused parameter

* fix: make variables final as intended

* fix: remove unused throw clause

* fix: remove unused throw clause

* fix: make OAuth2Credentials clock package private for production code

* fix: use non deprecated base 64 encoder

* test: parameterize flagged tests

* chore: format

* test: fix assertion

* build: remove unused dependency

* test: run linux gce only on linux envs

* fix: sonarqube flags (use java.util.Base64)

* fix: improve error message template

* fix: keep overload of "with audience" that takes an URI

* fix: restore public getter of getApiAudience

* docs: add javadoc for signing logic

* test: test private signature and decode methods

* fix: add null and empty check for audience string

* docs: add javadoc for audience getters

* fix: use enum for possible algorithms

* fix: use obsolete javadoc instead of @deprecated

* refactor: use OAuth2Utils validate methods in GdchCredentials

* fix: restore GoogleAuthException throwing in GdchCredentials

* refactor: downgrade Pkcs8Algorithm and privateKeyFromPkcs8 to package-private

* refactor: split parseBody into parseJson and parseQuery in test utilities

* refactor: remove validation reflection by making signUsingEsSha256 package-private

* test: use hardcoded string literal for gdch api audience in test

* test: refactor to use assertThrows in GdchCredentialsTest and remove host OS check in DefaultCredentialsProviderTest

* fix: add comment about EC algorithm support in GdchCredentials

* fix: update GDCH audience error message to be more descriptive

* refactor: rename getApiAudienceString to getGdchAudience

* fix: Remove unused import

* docs: update GDCH audience getter javadocs

* test: add null-checks to builder and corresponding tests

* refactor: consolidate token type constants using OAuth2Utils

* refactor: throw GoogleAuthException for signing and transcoding errors

* docs: add javadoc to related test utils

* fix: use GoogleAuthException

* test: use assertThrows where applicable

* refactor: replace Preconditions with Strings.isNullOrEmpty for audience checks

* fix: consistent exception message

* chore: format

* test: use lowercase os name

* chore: address review comments for PR #1896

* chore: format

* Finalizing GDCH credentials support by addressing reviewer comments

* chore: format

* fix: parse EC private keys with  SEC1 algorithm

* chore: format

* fix: separate PKCs8 vs SEC1 logic in GdchCredentials

* fix: improved exception message, added comments to extractPrivateKeyValue

Original-PR: googleapis/google-auth-library-java#1896
…1907)

* feat: Refactor X509Provider

* Added back accidentally removed tests.

* Lint fixes

* Addressed the PR comments.

* Test for windows OS cert default path

* lint fixes.

* Added Copyright headers.

* Addressed comments.

* Test fix.

* Added separate test class for mTLS-utils. Added missing cert and malformed cert tests to X509Provider.

* Lint fix.

Original-PR: googleapis/google-auth-library-java#1907
@lqiu96 lqiu96 marked this pull request as ready for review April 8, 2026 21:50
@lqiu96 lqiu96 requested review from a team as code owners April 8, 2026 21:50
@lqiu96
Copy link
Copy Markdown
Member Author

lqiu96 commented Apr 8, 2026

Hmm, wait if this is squash and merged, wouldn't this lose the individual commits? @chingor13 Is there a way to change this to rebase and merge (I think that should preserve the history)? Or is there a better way to port the history over?

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces support for Elliptic Curve (EC) keys in SEC1 format and ES256 signing for GDCH credentials, alongside a refactor of mTLS logic into a centralized utility class. It also enhances testability by introducing EnvironmentProvider and PropertyProvider interfaces and modernizes the test suite with JUnit 5 assertions. Feedback on the new Kokoro build script identifies potential issues with word splitting, recommending the use of arrays for command execution and consistent quoting of directory variables.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants