args.go 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. Copyright 2015 The Kubernetes Authors.
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. */
  13. package args
  14. import "k8s.io/kubernetes/pkg/api/unversioned"
  15. // ClientGenArgs is a wrapper for arguments to client-gen.
  16. type Args struct {
  17. // TODO: we should make another type declaration of GroupVersion out of the
  18. // unversioned package, which is part of our API. Tools like client-gen
  19. // shouldn't depend on an API.
  20. GroupVersions []unversioned.GroupVersion
  21. // GroupVersionToInputPath is a map between GroupVersion and the path to
  22. // the respective types.go. We still need GroupVersions in the struct because
  23. // we need an order.
  24. GroupVersionToInputPath map[unversioned.GroupVersion]string
  25. // Overrides for which types should be included in the client.
  26. IncludedTypesOverrides map[unversioned.GroupVersion][]string
  27. // ClientsetName is the name of the clientset to be generated. It's
  28. // populated from command-line arguments.
  29. ClientsetName string
  30. // ClientsetOutputPath is the path the clientset will be generated at. It's
  31. // populated from command-line arguments.
  32. ClientsetOutputPath string
  33. // ClientsetOnly determines if we should generate the clients for groups and
  34. // types along with the clientset. It's populated from command-line
  35. // arguments.
  36. ClientsetOnly bool
  37. // FakeClient determines if client-gen generates the fake clients.
  38. FakeClient bool
  39. // CmdArgs is the command line arguments supplied when the client-gen is called.
  40. CmdArgs string
  41. }