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

[Feature] Support to override velaux-apiserver #818

Open
nuclearwu opened this issue May 10, 2023 · 1 comment
Open

[Feature] Support to override velaux-apiserver #818

nuclearwu opened this issue May 10, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@nuclearwu
Copy link
Contributor

nuclearwu commented May 10, 2023

Is your feature request related to a problem? Please describe.

Most adopters introduce kubevela without modifying the kubevela(vela-core and vela cli), instead modify velaux to suit our own scenarios. Therefore, we keep some of the interfaces in apiserver, modify some of the interfaces or models, and then add some more. Although #740 adds a backend plugin framework to support developing extended apiserver, but velaux-apiserver itself does not have standardized rewriting or secondary development capabilities.

So, we want velaux-apiserver to open up some rewritten methods or add frameworks to enable adopters to introduce kubevela and velaux as dependencies to build an aggregate apiserver by rewriting and adding parts of the interface or model.

Describe the solution you'd like

open up velaux-apiserver some rewritten methods or frameworks to enable adopters to introduce kubevela and velaux as dependencies to build an aggregate apiserver by rewriting and adding parts of the interface or model.

Refactorpkg/server/config/config.go, pkg/server/server.go, pkg/server/domain/service/service.go, pkg/server/interfaces/api/interfaces.go according to the extensible and rewritable principles.

  1. Override config.go to support add ExtensionServerConfig.
  2. Override the Run method of server.go to support register ExtensionAPIRoute.
  3. Override service.go to support init ExtensionServiceBean.
  4. Override interfaces.go to support init ExtensionAPIBean.
@chivalryq chivalryq added the enhancement New feature or request label May 10, 2023
@nuclearwu
Copy link
Contributor Author

nuclearwu commented May 10, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants