Skip to content

Implement missing features for multi-cluster client-go #110

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

Open
xrstf opened this issue May 15, 2025 · 0 comments
Open

Implement missing features for multi-cluster client-go #110

xrstf opened this issue May 15, 2025 · 0 comments

Comments

@xrstf
Copy link
Contributor

xrstf commented May 15, 2025

Since refactoring the code-generator to v3, we lost some CLI flags that kcp's client-go is using to generate code: https://github.com/kcp-dev/client-go/blob/kcp-1.32.3/hack/update-codegen.sh effectively does (formatted for readability):

${CODE_GENERATOR} \
client
  externalOnly=true
  standalone=true
  outputPackagePath=github.com/kcp-dev/client-go
  name=kubernetes
  apiPackagePath=k8s.io/api
  singleClusterClientPackagePath=k8s.io/client-go/kubernetes
  singleClusterApplyConfigurationsPackagePath=k8s.io/client-go/applyconfigurations
  headerFile=./hack/boilerplate/boilerplate.go.txt
lister
  apiPackagePath=k8s.io/api
  singleClusterListerPackagePath=k8s.io/client-go/listers
  headerFile=./hack/boilerplate/boilerplate.go.txt
informer
  clientsetName=kubernetes
  externalOnly=true
  standalone=true
  outputPackagePath=github.com/kcp-dev/client-go
  apiPackagePath=k8s.io/api
  singleClusterClientPackagePath=k8s.io/client-go/kubernetes
  singleClusterListerPackagePath=k8s.io/client-go/listers
  singleClusterInformerPackagePath=k8s.io/client-go/informers
  headerFile=./hack/boilerplate/boilerplate.go.txt
"paths=$( go list -m -json k8s.io/api | jq --raw-output .Dir )/..." \
  "output:dir=./"

I only got so far that client.externalOnly, client.standalone and client.apiPackagePath are probably features/flags we do not yet support in v3. This means in our client-go repository we currently still have to use the v2 generator.

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

No branches or pull requests

1 participant