From a0489e8685d210825924cd2a17e0439540247284 Mon Sep 17 00:00:00 2001 From: Chao Xu Date: Thu, 7 Jan 2016 14:01:02 -0800 Subject: [PATCH] add expansion interface --- .../client-gen/generators/client-generator.go | 19 ++++++-- .../generators/generator-for-expansion.go | 48 +++++++++++++++++++ .../generators/generator-for-type.go | 1 + .../unversioned/generated_expansion.go | 17 +++++++ .../testgroup/unversioned/testgroup_test.go | 7 +++ .../testgroup/unversioned/testtype.go | 1 + .../unversioned/testtype_expansion.go | 25 ++++++++++ .../extensions/unversioned/daemonset.go | 1 + .../extensions/unversioned/deployment.go | 1 + .../unversioned/generated_expansion.go | 29 +++++++++++ .../unversioned/horizontalpodautoscaler.go | 1 + .../extensions/unversioned/ingress.go | 1 + .../generated/extensions/unversioned/job.go | 1 + .../unversioned/thirdpartyresource.go | 1 + .../legacy/unversioned/componentstatus.go | 1 + .../generated/legacy/unversioned/endpoints.go | 1 + .../generated/legacy/unversioned/event.go | 1 + .../legacy/unversioned/generated_expansion.go | 47 ++++++++++++++++++ .../legacy/unversioned/limitrange.go | 1 + .../generated/legacy/unversioned/namespace.go | 1 + .../generated/legacy/unversioned/node.go | 1 + .../legacy/unversioned/persistentvolume.go | 1 + .../unversioned/persistentvolumeclaim.go | 1 + .../typed/generated/legacy/unversioned/pod.go | 1 + .../legacy/unversioned/podtemplate.go | 1 + .../unversioned/replicationcontroller.go | 1 + .../legacy/unversioned/resourcequota.go | 1 + .../generated/legacy/unversioned/secret.go | 1 + .../generated/legacy/unversioned/service.go | 1 + .../legacy/unversioned/serviceaccount.go | 1 + 30 files changed, 212 insertions(+), 3 deletions(-) create mode 100644 cmd/libs/go2idl/client-gen/generators/generator-for-expansion.go create mode 100644 cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/generated_expansion.go create mode 100644 cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype_expansion.go create mode 100644 pkg/client/typed/generated/extensions/unversioned/generated_expansion.go create mode 100644 pkg/client/typed/generated/legacy/unversioned/generated_expansion.go diff --git a/cmd/libs/go2idl/client-gen/generators/client-generator.go b/cmd/libs/go2idl/client-gen/generators/client-generator.go index 3526c8f83f1..1c7b9d04742 100644 --- a/cmd/libs/go2idl/client-gen/generators/client-generator.go +++ b/cmd/libs/go2idl/client-gen/generators/client-generator.go @@ -18,6 +18,7 @@ limitations under the License. package generators import ( + "os" "path/filepath" "strings" @@ -50,8 +51,8 @@ func DefaultNameSystem() string { return "public" } -func packageForGroup(group string, version string, typeList []*types.Type, basePath string, boilerplate []byte) generator.Package { - outputPackagePath := filepath.Join(basePath, group, version) +func packageForGroup(group string, version string, typeList []*types.Type, packageBasePath string, srcTreePath string, boilerplate []byte) generator.Package { + outputPackagePath := filepath.Join(packageBasePath, group, version) return &generator.DefaultPackage{ PackageName: version, PackagePath: outputPackagePath, @@ -89,6 +90,18 @@ func packageForGroup(group string, version string, typeList []*types.Type, baseP types: typeList, imports: generator.NewImportTracker(), }) + + expansionFileName := "generated_expansion" + // To avoid overriding user's manual modification, only generate the expansion file if it doesn't exist. + if _, err := os.Stat(filepath.Join(srcTreePath, outputPackagePath, expansionFileName+".go")); os.IsNotExist(err) { + generators = append(generators, &genExpansion{ + DefaultGen: generator.DefaultGen{ + OptionalName: expansionFileName, + }, + types: typeList, + }) + } + return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { @@ -126,7 +139,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat var packageList []generator.Package orderer := namer.Orderer{namer.NewPrivateNamer(0)} for group, types := range groupToTypes { - packageList = append(packageList, packageForGroup(group, "unversioned", orderer.OrderTypes(types), arguments.OutputPackagePath, boilerplate)) + packageList = append(packageList, packageForGroup(group, "unversioned", orderer.OrderTypes(types), arguments.OutputPackagePath, arguments.OutputBase, boilerplate)) } return generator.Packages(packageList) diff --git a/cmd/libs/go2idl/client-gen/generators/generator-for-expansion.go b/cmd/libs/go2idl/client-gen/generators/generator-for-expansion.go new file mode 100644 index 00000000000..d3c980a5ad2 --- /dev/null +++ b/cmd/libs/go2idl/client-gen/generators/generator-for-expansion.go @@ -0,0 +1,48 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package generators + +import ( + "io" + + "k8s.io/kubernetes/cmd/libs/go2idl/generator" + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +// genExpansion produces a file for a group client, e.g. ExtensionsClient for the extension group. +type genExpansion struct { + generator.DefaultGen + // types in a group + types []*types.Type +} + +// We only want to call GenerateType() once per group. +func (g *genExpansion) Filter(c *generator.Context, t *types.Type) bool { + return t == g.types[0] +} + +func (g *genExpansion) GenerateType(c *generator.Context, t *types.Type, w io.Writer) error { + sw := generator.NewSnippetWriter(w, c, "$", "$") + for _, t := range g.types { + sw.Do(expansionInterfaceTemplate, t) + } + return sw.Error() +} + +var expansionInterfaceTemplate = ` +type $.|public$Expansion interface {} +` diff --git a/cmd/libs/go2idl/client-gen/generators/generator-for-type.go b/cmd/libs/go2idl/client-gen/generators/generator-for-type.go index e0e9cac6cff..e83ffabbe84 100644 --- a/cmd/libs/go2idl/client-gen/generators/generator-for-type.go +++ b/cmd/libs/go2idl/client-gen/generators/generator-for-type.go @@ -94,6 +94,7 @@ type $.type|public$Interface interface { Get(name string) (*$.type|raw$, error) List(opts $.apiListOptions|raw$) (*$.type|raw$List, error) Watch(opts $.apiListOptions|raw$) ($.watchInterface|raw$, error) + $.type|public$Expansion } ` diff --git a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/generated_expansion.go b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/generated_expansion.go new file mode 100644 index 00000000000..0d5e357c406 --- /dev/null +++ b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/generated_expansion.go @@ -0,0 +1,17 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package unversioned diff --git a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testgroup_test.go b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testgroup_test.go index f5cf9f870c6..a9939a4ce05 100644 --- a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testgroup_test.go +++ b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testgroup_test.go @@ -214,3 +214,10 @@ func TestListTestTypesLabels(t *testing.T) { receivedTestTypeList, err := c.TestTypes(ns).List(options) c.simpleClient.Validate(t, receivedTestTypeList, err) } + +func TestExpansionInterface(t *testing.T) { + c := New(nil) + if e, a := "hello!", c.TestTypes("").Hello(); e != a { + t.Errorf("expansion failed") + } +} diff --git a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype.go b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype.go index aa928f74eb1..e5079d29968 100644 --- a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype.go +++ b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype.go @@ -36,6 +36,7 @@ type TestTypeInterface interface { Get(name string) (*testgroup.TestType, error) List(opts api.ListOptions) (*testgroup.TestTypeList, error) Watch(opts api.ListOptions) (watch.Interface, error) + TestTypeExpansion } // testTypes implements TestTypeInterface diff --git a/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype_expansion.go b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype_expansion.go new file mode 100644 index 00000000000..5e6f57cd2a9 --- /dev/null +++ b/cmd/libs/go2idl/client-gen/testoutput/testgroup/unversioned/testtype_expansion.go @@ -0,0 +1,25 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package unversioned + +type TestTypeExpansion interface { + Hello() string +} + +func (c *testTypes) Hello() string { + return "hello!" +} diff --git a/pkg/client/typed/generated/extensions/unversioned/daemonset.go b/pkg/client/typed/generated/extensions/unversioned/daemonset.go index 75c00b428d7..b667fe67aad 100644 --- a/pkg/client/typed/generated/extensions/unversioned/daemonset.go +++ b/pkg/client/typed/generated/extensions/unversioned/daemonset.go @@ -36,6 +36,7 @@ type DaemonSetInterface interface { Get(name string) (*extensions.DaemonSet, error) List(opts api.ListOptions) (*extensions.DaemonSetList, error) Watch(opts api.ListOptions) (watch.Interface, error) + DaemonSetExpansion } // daemonSets implements DaemonSetInterface diff --git a/pkg/client/typed/generated/extensions/unversioned/deployment.go b/pkg/client/typed/generated/extensions/unversioned/deployment.go index fba338a68ab..4631d9a7e18 100644 --- a/pkg/client/typed/generated/extensions/unversioned/deployment.go +++ b/pkg/client/typed/generated/extensions/unversioned/deployment.go @@ -36,6 +36,7 @@ type DeploymentInterface interface { Get(name string) (*extensions.Deployment, error) List(opts api.ListOptions) (*extensions.DeploymentList, error) Watch(opts api.ListOptions) (watch.Interface, error) + DeploymentExpansion } // deployments implements DeploymentInterface diff --git a/pkg/client/typed/generated/extensions/unversioned/generated_expansion.go b/pkg/client/typed/generated/extensions/unversioned/generated_expansion.go new file mode 100644 index 00000000000..51c543d9f81 --- /dev/null +++ b/pkg/client/typed/generated/extensions/unversioned/generated_expansion.go @@ -0,0 +1,29 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package unversioned + +type DaemonSetExpansion interface{} + +type DeploymentExpansion interface{} + +type HorizontalPodAutoscalerExpansion interface{} + +type IngressExpansion interface{} + +type JobExpansion interface{} + +type ThirdPartyResourceExpansion interface{} diff --git a/pkg/client/typed/generated/extensions/unversioned/horizontalpodautoscaler.go b/pkg/client/typed/generated/extensions/unversioned/horizontalpodautoscaler.go index 32fee681a66..e155c0df942 100644 --- a/pkg/client/typed/generated/extensions/unversioned/horizontalpodautoscaler.go +++ b/pkg/client/typed/generated/extensions/unversioned/horizontalpodautoscaler.go @@ -36,6 +36,7 @@ type HorizontalPodAutoscalerInterface interface { Get(name string) (*extensions.HorizontalPodAutoscaler, error) List(opts api.ListOptions) (*extensions.HorizontalPodAutoscalerList, error) Watch(opts api.ListOptions) (watch.Interface, error) + HorizontalPodAutoscalerExpansion } // horizontalPodAutoscalers implements HorizontalPodAutoscalerInterface diff --git a/pkg/client/typed/generated/extensions/unversioned/ingress.go b/pkg/client/typed/generated/extensions/unversioned/ingress.go index fb685fc13ec..894064a345b 100644 --- a/pkg/client/typed/generated/extensions/unversioned/ingress.go +++ b/pkg/client/typed/generated/extensions/unversioned/ingress.go @@ -36,6 +36,7 @@ type IngressInterface interface { Get(name string) (*extensions.Ingress, error) List(opts api.ListOptions) (*extensions.IngressList, error) Watch(opts api.ListOptions) (watch.Interface, error) + IngressExpansion } // ingresses implements IngressInterface diff --git a/pkg/client/typed/generated/extensions/unversioned/job.go b/pkg/client/typed/generated/extensions/unversioned/job.go index 9290aa17246..7a22c5572c1 100644 --- a/pkg/client/typed/generated/extensions/unversioned/job.go +++ b/pkg/client/typed/generated/extensions/unversioned/job.go @@ -36,6 +36,7 @@ type JobInterface interface { Get(name string) (*extensions.Job, error) List(opts api.ListOptions) (*extensions.JobList, error) Watch(opts api.ListOptions) (watch.Interface, error) + JobExpansion } // jobs implements JobInterface diff --git a/pkg/client/typed/generated/extensions/unversioned/thirdpartyresource.go b/pkg/client/typed/generated/extensions/unversioned/thirdpartyresource.go index cfe776af2d9..959644b3a7b 100644 --- a/pkg/client/typed/generated/extensions/unversioned/thirdpartyresource.go +++ b/pkg/client/typed/generated/extensions/unversioned/thirdpartyresource.go @@ -36,6 +36,7 @@ type ThirdPartyResourceInterface interface { Get(name string) (*extensions.ThirdPartyResource, error) List(opts api.ListOptions) (*extensions.ThirdPartyResourceList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ThirdPartyResourceExpansion } // thirdPartyResources implements ThirdPartyResourceInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/componentstatus.go b/pkg/client/typed/generated/legacy/unversioned/componentstatus.go index ba6396c27bb..b87d8a090fe 100644 --- a/pkg/client/typed/generated/legacy/unversioned/componentstatus.go +++ b/pkg/client/typed/generated/legacy/unversioned/componentstatus.go @@ -35,6 +35,7 @@ type ComponentStatusInterface interface { Get(name string) (*api.ComponentStatus, error) List(opts api.ListOptions) (*api.ComponentStatusList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ComponentStatusExpansion } // componentStatus implements ComponentStatusInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/endpoints.go b/pkg/client/typed/generated/legacy/unversioned/endpoints.go index 9a132f0677c..08ef35f7fd1 100644 --- a/pkg/client/typed/generated/legacy/unversioned/endpoints.go +++ b/pkg/client/typed/generated/legacy/unversioned/endpoints.go @@ -35,6 +35,7 @@ type EndpointsInterface interface { Get(name string) (*api.Endpoints, error) List(opts api.ListOptions) (*api.EndpointsList, error) Watch(opts api.ListOptions) (watch.Interface, error) + EndpointsExpansion } // endpoints implements EndpointsInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/event.go b/pkg/client/typed/generated/legacy/unversioned/event.go index d092362cd53..12ea22e92b5 100644 --- a/pkg/client/typed/generated/legacy/unversioned/event.go +++ b/pkg/client/typed/generated/legacy/unversioned/event.go @@ -35,6 +35,7 @@ type EventInterface interface { Get(name string) (*api.Event, error) List(opts api.ListOptions) (*api.EventList, error) Watch(opts api.ListOptions) (watch.Interface, error) + EventExpansion } // events implements EventInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/generated_expansion.go b/pkg/client/typed/generated/legacy/unversioned/generated_expansion.go new file mode 100644 index 00000000000..9483d1fa198 --- /dev/null +++ b/pkg/client/typed/generated/legacy/unversioned/generated_expansion.go @@ -0,0 +1,47 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package unversioned + +type ComponentStatusExpansion interface{} + +type EndpointsExpansion interface{} + +type EventExpansion interface{} + +type LimitRangeExpansion interface{} + +type NamespaceExpansion interface{} + +type NodeExpansion interface{} + +type PersistentVolumeExpansion interface{} + +type PersistentVolumeClaimExpansion interface{} + +type PodExpansion interface{} + +type PodTemplateExpansion interface{} + +type ReplicationControllerExpansion interface{} + +type ResourceQuotaExpansion interface{} + +type SecretExpansion interface{} + +type ServiceExpansion interface{} + +type ServiceAccountExpansion interface{} diff --git a/pkg/client/typed/generated/legacy/unversioned/limitrange.go b/pkg/client/typed/generated/legacy/unversioned/limitrange.go index d12546c8877..f7b5c7a417b 100644 --- a/pkg/client/typed/generated/legacy/unversioned/limitrange.go +++ b/pkg/client/typed/generated/legacy/unversioned/limitrange.go @@ -35,6 +35,7 @@ type LimitRangeInterface interface { Get(name string) (*api.LimitRange, error) List(opts api.ListOptions) (*api.LimitRangeList, error) Watch(opts api.ListOptions) (watch.Interface, error) + LimitRangeExpansion } // limitRanges implements LimitRangeInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/namespace.go b/pkg/client/typed/generated/legacy/unversioned/namespace.go index cd06f099884..f2340d36ddc 100644 --- a/pkg/client/typed/generated/legacy/unversioned/namespace.go +++ b/pkg/client/typed/generated/legacy/unversioned/namespace.go @@ -35,6 +35,7 @@ type NamespaceInterface interface { Get(name string) (*api.Namespace, error) List(opts api.ListOptions) (*api.NamespaceList, error) Watch(opts api.ListOptions) (watch.Interface, error) + NamespaceExpansion } // namespaces implements NamespaceInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/node.go b/pkg/client/typed/generated/legacy/unversioned/node.go index 5b93edb9b1c..af0f81cc0a8 100644 --- a/pkg/client/typed/generated/legacy/unversioned/node.go +++ b/pkg/client/typed/generated/legacy/unversioned/node.go @@ -35,6 +35,7 @@ type NodeInterface interface { Get(name string) (*api.Node, error) List(opts api.ListOptions) (*api.NodeList, error) Watch(opts api.ListOptions) (watch.Interface, error) + NodeExpansion } // nodes implements NodeInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/persistentvolume.go b/pkg/client/typed/generated/legacy/unversioned/persistentvolume.go index 4c2fb3916ec..f562a6f43e8 100644 --- a/pkg/client/typed/generated/legacy/unversioned/persistentvolume.go +++ b/pkg/client/typed/generated/legacy/unversioned/persistentvolume.go @@ -35,6 +35,7 @@ type PersistentVolumeInterface interface { Get(name string) (*api.PersistentVolume, error) List(opts api.ListOptions) (*api.PersistentVolumeList, error) Watch(opts api.ListOptions) (watch.Interface, error) + PersistentVolumeExpansion } // persistentVolumes implements PersistentVolumeInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/persistentvolumeclaim.go b/pkg/client/typed/generated/legacy/unversioned/persistentvolumeclaim.go index 66f08bda09b..ceca8f80a9f 100644 --- a/pkg/client/typed/generated/legacy/unversioned/persistentvolumeclaim.go +++ b/pkg/client/typed/generated/legacy/unversioned/persistentvolumeclaim.go @@ -35,6 +35,7 @@ type PersistentVolumeClaimInterface interface { Get(name string) (*api.PersistentVolumeClaim, error) List(opts api.ListOptions) (*api.PersistentVolumeClaimList, error) Watch(opts api.ListOptions) (watch.Interface, error) + PersistentVolumeClaimExpansion } // persistentVolumeClaims implements PersistentVolumeClaimInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/pod.go b/pkg/client/typed/generated/legacy/unversioned/pod.go index 4ca35e66da0..26d9257d732 100644 --- a/pkg/client/typed/generated/legacy/unversioned/pod.go +++ b/pkg/client/typed/generated/legacy/unversioned/pod.go @@ -35,6 +35,7 @@ type PodInterface interface { Get(name string) (*api.Pod, error) List(opts api.ListOptions) (*api.PodList, error) Watch(opts api.ListOptions) (watch.Interface, error) + PodExpansion } // pods implements PodInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/podtemplate.go b/pkg/client/typed/generated/legacy/unversioned/podtemplate.go index d2db58b0e3c..e6f326f04a2 100644 --- a/pkg/client/typed/generated/legacy/unversioned/podtemplate.go +++ b/pkg/client/typed/generated/legacy/unversioned/podtemplate.go @@ -35,6 +35,7 @@ type PodTemplateInterface interface { Get(name string) (*api.PodTemplate, error) List(opts api.ListOptions) (*api.PodTemplateList, error) Watch(opts api.ListOptions) (watch.Interface, error) + PodTemplateExpansion } // podTemplates implements PodTemplateInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/replicationcontroller.go b/pkg/client/typed/generated/legacy/unversioned/replicationcontroller.go index 9b3fadb21c1..1283dbf77cf 100644 --- a/pkg/client/typed/generated/legacy/unversioned/replicationcontroller.go +++ b/pkg/client/typed/generated/legacy/unversioned/replicationcontroller.go @@ -35,6 +35,7 @@ type ReplicationControllerInterface interface { Get(name string) (*api.ReplicationController, error) List(opts api.ListOptions) (*api.ReplicationControllerList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ReplicationControllerExpansion } // replicationControllers implements ReplicationControllerInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/resourcequota.go b/pkg/client/typed/generated/legacy/unversioned/resourcequota.go index 961af46fbc9..4a2a0c7db76 100644 --- a/pkg/client/typed/generated/legacy/unversioned/resourcequota.go +++ b/pkg/client/typed/generated/legacy/unversioned/resourcequota.go @@ -35,6 +35,7 @@ type ResourceQuotaInterface interface { Get(name string) (*api.ResourceQuota, error) List(opts api.ListOptions) (*api.ResourceQuotaList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ResourceQuotaExpansion } // resourceQuotas implements ResourceQuotaInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/secret.go b/pkg/client/typed/generated/legacy/unversioned/secret.go index 96113138681..e13b3934ce7 100644 --- a/pkg/client/typed/generated/legacy/unversioned/secret.go +++ b/pkg/client/typed/generated/legacy/unversioned/secret.go @@ -35,6 +35,7 @@ type SecretInterface interface { Get(name string) (*api.Secret, error) List(opts api.ListOptions) (*api.SecretList, error) Watch(opts api.ListOptions) (watch.Interface, error) + SecretExpansion } // secrets implements SecretInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/service.go b/pkg/client/typed/generated/legacy/unversioned/service.go index 9d14a9e3a69..db1966bfd0a 100644 --- a/pkg/client/typed/generated/legacy/unversioned/service.go +++ b/pkg/client/typed/generated/legacy/unversioned/service.go @@ -35,6 +35,7 @@ type ServiceInterface interface { Get(name string) (*api.Service, error) List(opts api.ListOptions) (*api.ServiceList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ServiceExpansion } // services implements ServiceInterface diff --git a/pkg/client/typed/generated/legacy/unversioned/serviceaccount.go b/pkg/client/typed/generated/legacy/unversioned/serviceaccount.go index c283cd1ef04..bec41c910ad 100644 --- a/pkg/client/typed/generated/legacy/unversioned/serviceaccount.go +++ b/pkg/client/typed/generated/legacy/unversioned/serviceaccount.go @@ -35,6 +35,7 @@ type ServiceAccountInterface interface { Get(name string) (*api.ServiceAccount, error) List(opts api.ListOptions) (*api.ServiceAccountList, error) Watch(opts api.ListOptions) (watch.Interface, error) + ServiceAccountExpansion } // serviceAccounts implements ServiceAccountInterface