Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve the xDS bootstrap package #7266

Closed
easwars opened this issue May 24, 2024 · 2 comments
Closed

Improve the xDS bootstrap package #7266

easwars opened this issue May 24, 2024 · 2 comments
Assignees
Labels
P2 Type: Feature New features or improvements in behavior

Comments

@easwars
Copy link
Contributor

easwars commented May 24, 2024

We currently have a bunch of xDS bootstrap packages:

  • xds/bootstrap
    • This currently only contains code dealing with channel credentials functionality in the bootstrap file.
      • This should be moved to xds/bootstrap/credentials.
  • internal/xds/bootstrap
    • This currently has the bootstrap parsing code used by production code. The parsing functionality is also used minimally by test code.
    • All types defined here like Config, ServerConfig, Authority, ChannelCreds etc should support the following functionality:
      • A MarshalJSON method to output marshaled JSON bytes
      • A UnmarshalJSON method to read JSON and update the internals of the type
      • A Equal method to avoid implementing custom equality functions in tests
      • A String method to output human readable contents for debugging
    • This should be moved to xds/bootstrap
  • internal/testutils/xds/bootstrap
    • This has bootstrap parsing functionality used by test code
    • This should be removed and we should get the test code to be functionality from xds/bootstrap
@easwars easwars added the Type: Feature New features or improvements in behavior label May 24, 2024
@easwars
Copy link
Contributor Author

easwars commented May 24, 2024

Based on offline discussions, we think it makes sense to keep the bootstrap functionality in internal/xds/bootstrap since it is being used from outside of the xDS tree. Also, putting it in xds/bootstrap will make the API public which is not desirable.

@easwars easwars self-assigned this May 24, 2024
@dfawley dfawley added the P2 label May 28, 2024
@easwars
Copy link
Contributor Author

easwars commented Jun 10, 2024

A bunch of cleanup happened in #7299.

@easwars easwars closed this as completed Jul 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P2 Type: Feature New features or improvements in behavior
Projects
None yet
Development

No branches or pull requests

2 participants