diff --git a/cmd/kube-controller-manager/app/controllermanager.go b/cmd/kube-controller-manager/app/controllermanager.go index 3a60fccffdf..6736efd5bf2 100644 --- a/cmd/kube-controller-manager/app/controllermanager.go +++ b/cmd/kube-controller-manager/app/controllermanager.go @@ -406,7 +406,7 @@ func StartControllers(s *options.CMServer, kubeconfig *restclient.Config, rootCl if containsResource(resources, "jobs") { glog.Infof("Starting job controller") - go job.NewJobController(sharedInformers.Pods().Informer(), client("job-controller")). + go job.NewJobController(sharedInformers.Pods().Informer(), sharedInformers.Jobs(), client("job-controller")). Run(int(s.ConcurrentJobSyncs), wait.NeverStop) time.Sleep(wait.Jitter(s.ControllerStartInterval.Duration, ControllerStartJitter)) } diff --git a/cmd/libs/go2idl/lister-gen/generators/BUILD b/cmd/libs/go2idl/lister-gen/generators/BUILD index 1659606a4fa..560651bdedd 100644 --- a/cmd/libs/go2idl/lister-gen/generators/BUILD +++ b/cmd/libs/go2idl/lister-gen/generators/BUILD @@ -13,6 +13,7 @@ load( go_library( name = "go_default_library", srcs = [ + "expansion.go", "lister.go", "tags.go", ], diff --git a/cmd/libs/go2idl/lister-gen/generators/expansion.go b/cmd/libs/go2idl/lister-gen/generators/expansion.go new file mode 100644 index 00000000000..de21f84af56 --- /dev/null +++ b/cmd/libs/go2idl/lister-gen/generators/expansion.go @@ -0,0 +1,65 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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" + "os" + "path/filepath" + "strings" + + "k8s.io/gengo/generator" + "k8s.io/gengo/types" +) + +// expansionGenerator produces a file for a expansion interfaces. +type expansionGenerator struct { + generator.DefaultGen + packagePath string + types []*types.Type +} + +// We only want to call GenerateType() once per group. +func (g *expansionGenerator) Filter(c *generator.Context, t *types.Type) bool { + return t == g.types[0] +} + +func (g *expansionGenerator) GenerateType(c *generator.Context, t *types.Type, w io.Writer) error { + sw := generator.NewSnippetWriter(w, c, "$", "$") + for _, t := range g.types { + if _, err := os.Stat(filepath.Join(g.packagePath, strings.ToLower(t.Name.Name+"_expansion.go"))); os.IsNotExist(err) { + sw.Do(expansionInterfaceTemplate, t) + namespaced := !extractBoolTagOrDie("nonNamespaced", t.SecondClosestCommentLines) + if namespaced { + sw.Do(namespacedExpansionInterfaceTemplate, t) + } + } + } + return sw.Error() +} + +var expansionInterfaceTemplate = ` +// $.|public$ListerExpansion allows custom methods to be added to +// $.|public$Lister. +type $.|public$ListerExpansion interface {} +` + +var namespacedExpansionInterfaceTemplate = ` +// $.|public$NamespaceListerExpansion allows custom methods to be added to +// $.|public$NamespaeLister. +type $.|public$NamespaceListerExpansion interface {} +` diff --git a/cmd/libs/go2idl/lister-gen/generators/lister.go b/cmd/libs/go2idl/lister-gen/generators/lister.go index 47d8cb931b6..1685094dbf6 100644 --- a/cmd/libs/go2idl/lister-gen/generators/lister.go +++ b/cmd/libs/go2idl/lister-gen/generators/lister.go @@ -114,19 +114,35 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat internalGVPkg = strings.Join(parts[0:len(parts)-1], "/") } + var typesToGenerate []*types.Type + for _, t := range p.Types { + // filter out types which dont have genclient=true. + if extractBoolTagOrDie("genclient", t.SecondClosestCommentLines) == false { + continue + } + typesToGenerate = append(typesToGenerate, t) + } + orderer := namer.Orderer{Namer: namer.NewPrivateNamer(0)} + typesToGenerate = orderer.OrderTypes(typesToGenerate) + + packagePath := filepath.Join(arguments.OutputPackagePath, strings.ToLower(gv.Group.NonEmpty()), strings.ToLower(gv.Version.NonEmpty())) packageList = append(packageList, &generator.DefaultPackage{ PackageName: strings.ToLower(gv.Version.NonEmpty()), - PackagePath: filepath.Join(arguments.OutputPackagePath, strings.ToLower(gv.Group.NonEmpty()), strings.ToLower(gv.Version.NonEmpty())), + PackagePath: packagePath, HeaderText: boilerplate, GeneratorFunc: func(c *generator.Context) (generators []generator.Generator) { - for _, t := range p.Types { - // filter out types which dont have genclient=true. - if extractBoolTagOrDie("genclient", t.SecondClosestCommentLines) == false { - continue - } + generators = append(generators, &expansionGenerator{ + DefaultGen: generator.DefaultGen{ + OptionalName: "expansion_generated", + }, + packagePath: filepath.Join(arguments.OutputBase, packagePath), + types: typesToGenerate, + }) + + for _, t := range typesToGenerate { generators = append(generators, &listerGenerator{ DefaultGen: generator.DefaultGen{ - OptionalName: arguments.OutputFileBaseName + "." + strings.ToLower(t.Name.Name), + OptionalName: strings.ToLower(t.Name.Name), }, outputPackage: arguments.OutputPackagePath, groupVersion: gv, @@ -248,6 +264,7 @@ type $.type|public$Lister interface { List(selector labels.Selector) (ret []*$.type|raw$, err error) // $.type|publicPlural$ returns an object that can list and get $.type|publicPlural$. $.type|publicPlural$(namespace string) $.type|public$NamespaceLister + $.type|public$ListerExpansion } ` @@ -258,6 +275,7 @@ type $.type|public$Lister interface { List(selector labels.Selector) (ret []*$.type|raw$, err error) // Get retrieves the $.type|public$ from the index for a given name. Get(name string) (*$.type|raw$, error) + $.type|public$ListerExpansion } ` @@ -314,6 +332,7 @@ type $.type|public$NamespaceLister interface { List(selector labels.Selector) (ret []*$.type|raw$, err error) // Get retrieves the $.type|public$ from the indexer for a given namespace and name. Get(name string) (*$.type|raw$, error) + $.type|public$NamespaceListerExpansion } ` diff --git a/cmd/libs/go2idl/lister-gen/main.go b/cmd/libs/go2idl/lister-gen/main.go index 8bddb161d69..88ba462acd7 100644 --- a/cmd/libs/go2idl/lister-gen/main.go +++ b/cmd/libs/go2idl/lister-gen/main.go @@ -28,11 +28,10 @@ import ( func main() { arguments := &args.GeneratorArgs{ - OutputBase: args.DefaultSourceTree(), - GoHeaderFilePath: filepath.Join(args.DefaultSourceTree(), "k8s.io/kubernetes/hack/boilerplate/boilerplate.go.txt"), - GeneratedBuildTag: "ignore_autogenerated", - OutputFileBaseName: "zz_generated", - OutputPackagePath: "k8s.io/kubernetes/pkg/client/listers", + OutputBase: args.DefaultSourceTree(), + GoHeaderFilePath: filepath.Join(args.DefaultSourceTree(), "k8s.io/kubernetes/hack/boilerplate/boilerplate.go.txt"), + GeneratedBuildTag: "ignore_autogenerated", + OutputPackagePath: "k8s.io/kubernetes/pkg/client/listers", } arguments.AddFlags(pflag.CommandLine) diff --git a/pkg/client/cache/BUILD b/pkg/client/cache/BUILD index a706defb161..eba219a415d 100644 --- a/pkg/client/cache/BUILD +++ b/pkg/client/cache/BUILD @@ -40,7 +40,6 @@ go_library( "//pkg/api/meta:go_default_library", "//pkg/api/unversioned:go_default_library", "//pkg/apis/apps:go_default_library", - "//pkg/apis/batch:go_default_library", "//pkg/apis/certificates:go_default_library", "//pkg/apis/extensions:go_default_library", "//pkg/apis/policy:go_default_library", @@ -84,7 +83,6 @@ go_test( "//pkg/api/testapi:go_default_library", "//pkg/api/unversioned:go_default_library", "//pkg/apimachinery/registered:go_default_library", - "//pkg/apis/batch:go_default_library", "//pkg/apis/extensions:go_default_library", "//pkg/client/clientset_generated/internalclientset:go_default_library", "//pkg/client/restclient:go_default_library", diff --git a/pkg/client/cache/listers.go b/pkg/client/cache/listers.go index 3b818d7e024..bc65876e036 100644 --- a/pkg/client/cache/listers.go +++ b/pkg/client/cache/listers.go @@ -25,7 +25,6 @@ import ( "k8s.io/kubernetes/pkg/api/meta" "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/apis/apps" - "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/certificates" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/policy" @@ -294,56 +293,6 @@ func (s *StoreToEndpointsLister) GetServiceEndpoints(svc *api.Service) (ep api.E return } -// StoreToJobLister gives a store List and Exists methods. The store must contain only Jobs. -type StoreToJobLister struct { - Store -} - -// Exists checks if the given job exists in the store. -func (s *StoreToJobLister) Exists(job *batch.Job) (bool, error) { - _, exists, err := s.Store.Get(job) - if err != nil { - return false, err - } - return exists, nil -} - -// StoreToJobLister lists all jobs in the store. -func (s *StoreToJobLister) List() (jobs batch.JobList, err error) { - for _, c := range s.Store.List() { - jobs.Items = append(jobs.Items, *(c.(*batch.Job))) - } - return jobs, nil -} - -// GetPodJobs returns a list of jobs managing a pod. Returns an error only if no matching jobs are found. -func (s *StoreToJobLister) GetPodJobs(pod *api.Pod) (jobs []batch.Job, err error) { - var selector labels.Selector - var job batch.Job - - if len(pod.Labels) == 0 { - err = fmt.Errorf("no jobs found for pod %v because it has no labels", pod.Name) - return - } - - for _, m := range s.Store.List() { - job = *m.(*batch.Job) - if job.Namespace != pod.Namespace { - continue - } - - selector, _ = unversioned.LabelSelectorAsSelector(job.Spec.Selector) - if !selector.Matches(labels.Set(pod.Labels)) { - continue - } - jobs = append(jobs, job) - } - if len(jobs) == 0 { - err = fmt.Errorf("could not find jobs for pod %s in namespace %s with labels: %v", pod.Name, pod.Namespace, pod.Labels) - } - return -} - // Typed wrapper around a store of PersistentVolumes type StoreToPVFetcher struct { Store diff --git a/pkg/client/cache/listers_test.go b/pkg/client/cache/listers_test.go index 597362eb800..6b7e5937478 100644 --- a/pkg/client/cache/listers_test.go +++ b/pkg/client/cache/listers_test.go @@ -22,7 +22,6 @@ import ( "k8s.io/kubernetes/pkg/api" apierrors "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/unversioned" - "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/labels" "k8s.io/kubernetes/pkg/util/sets" @@ -517,177 +516,6 @@ func TestStoreToDaemonSetLister(t *testing.T) { } } -func TestStoreToJobLister(t *testing.T) { - store := NewStore(MetaNamespaceKeyFunc) - lister := StoreToJobLister{store} - testCases := []struct { - inJobs []*batch.Job - list func() ([]batch.Job, error) - outJobNames sets.String - expectErr bool - msg string - }{ - // Basic listing - { - inJobs: []*batch.Job{ - {ObjectMeta: api.ObjectMeta{Name: "basic"}}, - }, - list: func() ([]batch.Job, error) { - list, err := lister.List() - return list.Items, err - }, - outJobNames: sets.NewString("basic"), - msg: "basic listing failed", - }, - // Listing multiple jobs - { - inJobs: []*batch.Job{ - {ObjectMeta: api.ObjectMeta{Name: "basic"}}, - {ObjectMeta: api.ObjectMeta{Name: "complex"}}, - {ObjectMeta: api.ObjectMeta{Name: "complex2"}}, - }, - list: func() ([]batch.Job, error) { - list, err := lister.List() - return list.Items, err - }, - outJobNames: sets.NewString("basic", "complex", "complex2"), - msg: "listing multiple jobs failed", - }, - // No pod labels - { - inJobs: []*batch.Job{ - { - ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, - Spec: batch.JobSpec{ - Selector: &unversioned.LabelSelector{ - MatchLabels: map[string]string{"foo": "baz"}, - }, - }, - }, - }, - list: func() ([]batch.Job, error) { - pod := &api.Pod{ - ObjectMeta: api.ObjectMeta{Name: "pod", Namespace: "ns"}, - } - return lister.GetPodJobs(pod) - }, - outJobNames: sets.NewString(), - expectErr: true, - msg: "listing jobs failed when pod has no labels: expected error, got none", - }, - // No Job selectors - { - inJobs: []*batch.Job{ - { - ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, - }, - }, - list: func() ([]batch.Job, error) { - pod := &api.Pod{ - ObjectMeta: api.ObjectMeta{ - Name: "pod", - Namespace: "ns", - Labels: map[string]string{"foo": "bar"}, - }, - } - return lister.GetPodJobs(pod) - }, - outJobNames: sets.NewString(), - expectErr: true, - msg: "listing jobs failed when job has no selector: expected error, got none", - }, - // Matching labels to selectors and namespace - { - inJobs: []*batch.Job{ - { - ObjectMeta: api.ObjectMeta{Name: "foo"}, - Spec: batch.JobSpec{ - Selector: &unversioned.LabelSelector{ - MatchLabels: map[string]string{"foo": "bar"}, - }, - }, - }, - { - ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "ns"}, - Spec: batch.JobSpec{ - Selector: &unversioned.LabelSelector{ - MatchLabels: map[string]string{"foo": "bar"}, - }, - }, - }, - }, - list: func() ([]batch.Job, error) { - pod := &api.Pod{ - ObjectMeta: api.ObjectMeta{ - Name: "pod", - Labels: map[string]string{"foo": "bar"}, - Namespace: "ns", - }, - } - return lister.GetPodJobs(pod) - }, - outJobNames: sets.NewString("bar"), - msg: "listing jobs with namespace and selector failed", - }, - // Matching labels to selectors and namespace, error case - { - inJobs: []*batch.Job{ - { - ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: "foo"}, - Spec: batch.JobSpec{ - Selector: &unversioned.LabelSelector{ - MatchLabels: map[string]string{"foo": "bar"}, - }, - }, - }, - { - ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "bar"}, - Spec: batch.JobSpec{ - Selector: &unversioned.LabelSelector{ - MatchLabels: map[string]string{"foo": "bar"}, - }, - }, - }, - }, - list: func() ([]batch.Job, error) { - pod := &api.Pod{ - ObjectMeta: api.ObjectMeta{ - Name: "pod", - Labels: map[string]string{"foo": "bar"}, - Namespace: "baz", - }, - } - return lister.GetPodJobs(pod) - }, - expectErr: true, - msg: "listing jobs with namespace and selector failed: expected error, got none", - }, - } - for _, c := range testCases { - for _, r := range c.inJobs { - store.Add(r) - } - - Jobs, err := c.list() - if err != nil && c.expectErr { - continue - } else if c.expectErr { - t.Errorf("%v", c.msg) - continue - } else if err != nil { - t.Errorf("Unexpected error %#v", err) - continue - } - JobNames := make([]string, len(Jobs)) - for ix := range Jobs { - JobNames[ix] = Jobs[ix].Name - } - if !c.outJobNames.HasAll(JobNames...) || len(JobNames) != len(c.outJobNames) { - t.Errorf("%v : expected %v, got %v", c.msg, JobNames, c.outJobNames) - } - } -} - func TestStoreToPodLister(t *testing.T) { // We test with and without a namespace index, because StoreToPodLister has // special logic to work on namespaces even when no namespace index is diff --git a/pkg/client/listers/apps/internalversion/BUILD b/pkg/client/listers/apps/internalversion/BUILD index 6df300e9dd1..98d07b56663 100644 --- a/pkg/client/listers/apps/internalversion/BUILD +++ b/pkg/client/listers/apps/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.statefulset.go"], + srcs = [ + "expansion_generated.go", + "statefulset.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/apps/internalversion/expansion_generated.go b/pkg/client/listers/apps/internalversion/expansion_generated.go new file mode 100644 index 00000000000..1966973aaf8 --- /dev/null +++ b/pkg/client/listers/apps/internalversion/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// StatefulSetListerExpansion allows custom methods to be added to +// StatefulSetLister. +type StatefulSetListerExpansion interface{} + +// StatefulSetNamespaceListerExpansion allows custom methods to be added to +// StatefulSetNamespaeLister. +type StatefulSetNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/apps/internalversion/zz_generated.statefulset.go b/pkg/client/listers/apps/internalversion/statefulset.go similarity index 98% rename from pkg/client/listers/apps/internalversion/zz_generated.statefulset.go rename to pkg/client/listers/apps/internalversion/statefulset.go index cc577a32056..3b80ebdd019 100644 --- a/pkg/client/listers/apps/internalversion/zz_generated.statefulset.go +++ b/pkg/client/listers/apps/internalversion/statefulset.go @@ -31,6 +31,7 @@ type StatefulSetLister interface { List(selector labels.Selector) (ret []*apps.StatefulSet, err error) // StatefulSets returns an object that can list and get StatefulSets. StatefulSets(namespace string) StatefulSetNamespaceLister + StatefulSetListerExpansion } // statefulSetLister implements the StatefulSetLister interface. @@ -62,6 +63,7 @@ type StatefulSetNamespaceLister interface { List(selector labels.Selector) (ret []*apps.StatefulSet, err error) // Get retrieves the StatefulSet from the indexer for a given namespace and name. Get(name string) (*apps.StatefulSet, error) + StatefulSetNamespaceListerExpansion } // statefulSetNamespaceLister implements the StatefulSetNamespaceLister diff --git a/pkg/client/listers/apps/v1beta1/BUILD b/pkg/client/listers/apps/v1beta1/BUILD index e8065c1a7fa..021075b6d17 100644 --- a/pkg/client/listers/apps/v1beta1/BUILD +++ b/pkg/client/listers/apps/v1beta1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.statefulset.go"], + srcs = [ + "expansion_generated.go", + "statefulset.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/apps/v1beta1/expansion_generated.go b/pkg/client/listers/apps/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..19807bcc8fa --- /dev/null +++ b/pkg/client/listers/apps/v1beta1/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// StatefulSetListerExpansion allows custom methods to be added to +// StatefulSetLister. +type StatefulSetListerExpansion interface{} + +// StatefulSetNamespaceListerExpansion allows custom methods to be added to +// StatefulSetNamespaeLister. +type StatefulSetNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/apps/v1beta1/zz_generated.statefulset.go b/pkg/client/listers/apps/v1beta1/statefulset.go similarity index 98% rename from pkg/client/listers/apps/v1beta1/zz_generated.statefulset.go rename to pkg/client/listers/apps/v1beta1/statefulset.go index 18974b643fe..8102da4fe8d 100644 --- a/pkg/client/listers/apps/v1beta1/zz_generated.statefulset.go +++ b/pkg/client/listers/apps/v1beta1/statefulset.go @@ -32,6 +32,7 @@ type StatefulSetLister interface { List(selector labels.Selector) (ret []*v1beta1.StatefulSet, err error) // StatefulSets returns an object that can list and get StatefulSets. StatefulSets(namespace string) StatefulSetNamespaceLister + StatefulSetListerExpansion } // statefulSetLister implements the StatefulSetLister interface. @@ -63,6 +64,7 @@ type StatefulSetNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.StatefulSet, err error) // Get retrieves the StatefulSet from the indexer for a given namespace and name. Get(name string) (*v1beta1.StatefulSet, error) + StatefulSetNamespaceListerExpansion } // statefulSetNamespaceLister implements the StatefulSetNamespaceLister diff --git a/pkg/client/listers/authentication/internalversion/BUILD b/pkg/client/listers/authentication/internalversion/BUILD index 70e4ac6bd5a..57e796f1eda 100644 --- a/pkg/client/listers/authentication/internalversion/BUILD +++ b/pkg/client/listers/authentication/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.tokenreview.go"], + srcs = [ + "expansion_generated.go", + "tokenreview.go", + ], tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", diff --git a/pkg/client/listers/authentication/internalversion/expansion_generated.go b/pkg/client/listers/authentication/internalversion/expansion_generated.go new file mode 100644 index 00000000000..07467692987 --- /dev/null +++ b/pkg/client/listers/authentication/internalversion/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// TokenReviewListerExpansion allows custom methods to be added to +// TokenReviewLister. +type TokenReviewListerExpansion interface{} diff --git a/pkg/client/listers/authentication/internalversion/zz_generated.tokenreview.go b/pkg/client/listers/authentication/internalversion/tokenreview.go similarity index 99% rename from pkg/client/listers/authentication/internalversion/zz_generated.tokenreview.go rename to pkg/client/listers/authentication/internalversion/tokenreview.go index 19d845138d2..db0a798f6f9 100644 --- a/pkg/client/listers/authentication/internalversion/zz_generated.tokenreview.go +++ b/pkg/client/listers/authentication/internalversion/tokenreview.go @@ -32,6 +32,7 @@ type TokenReviewLister interface { List(selector labels.Selector) (ret []*authentication.TokenReview, err error) // Get retrieves the TokenReview from the index for a given name. Get(name string) (*authentication.TokenReview, error) + TokenReviewListerExpansion } // tokenReviewLister implements the TokenReviewLister interface. diff --git a/pkg/client/listers/authentication/v1beta1/BUILD b/pkg/client/listers/authentication/v1beta1/BUILD index 87e1eb2cb02..ac85690541f 100644 --- a/pkg/client/listers/authentication/v1beta1/BUILD +++ b/pkg/client/listers/authentication/v1beta1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.tokenreview.go"], + srcs = [ + "expansion_generated.go", + "tokenreview.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/authentication/v1beta1/expansion_generated.go b/pkg/client/listers/authentication/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..e767592edc5 --- /dev/null +++ b/pkg/client/listers/authentication/v1beta1/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// TokenReviewListerExpansion allows custom methods to be added to +// TokenReviewLister. +type TokenReviewListerExpansion interface{} diff --git a/pkg/client/listers/authentication/v1beta1/zz_generated.tokenreview.go b/pkg/client/listers/authentication/v1beta1/tokenreview.go similarity index 99% rename from pkg/client/listers/authentication/v1beta1/zz_generated.tokenreview.go rename to pkg/client/listers/authentication/v1beta1/tokenreview.go index 16523a5b543..7a399c6e956 100644 --- a/pkg/client/listers/authentication/v1beta1/zz_generated.tokenreview.go +++ b/pkg/client/listers/authentication/v1beta1/tokenreview.go @@ -33,6 +33,7 @@ type TokenReviewLister interface { List(selector labels.Selector) (ret []*v1beta1.TokenReview, err error) // Get retrieves the TokenReview from the index for a given name. Get(name string) (*v1beta1.TokenReview, error) + TokenReviewListerExpansion } // tokenReviewLister implements the TokenReviewLister interface. diff --git a/pkg/client/listers/authorization/internalversion/BUILD b/pkg/client/listers/authorization/internalversion/BUILD index 49006870b0d..50344ebbbc2 100644 --- a/pkg/client/listers/authorization/internalversion/BUILD +++ b/pkg/client/listers/authorization/internalversion/BUILD @@ -13,9 +13,10 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.localsubjectaccessreview.go", - "zz_generated.selfsubjectaccessreview.go", - "zz_generated.subjectaccessreview.go", + "expansion_generated.go", + "localsubjectaccessreview.go", + "selfsubjectaccessreview.go", + "subjectaccessreview.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/authorization/internalversion/expansion_generated.go b/pkg/client/listers/authorization/internalversion/expansion_generated.go new file mode 100644 index 00000000000..3f3822cb70a --- /dev/null +++ b/pkg/client/listers/authorization/internalversion/expansion_generated.go @@ -0,0 +1,35 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// LocalSubjectAccessReviewListerExpansion allows custom methods to be added to +// LocalSubjectAccessReviewLister. +type LocalSubjectAccessReviewListerExpansion interface{} + +// LocalSubjectAccessReviewNamespaceListerExpansion allows custom methods to be added to +// LocalSubjectAccessReviewNamespaeLister. +type LocalSubjectAccessReviewNamespaceListerExpansion interface{} + +// SelfSubjectAccessReviewListerExpansion allows custom methods to be added to +// SelfSubjectAccessReviewLister. +type SelfSubjectAccessReviewListerExpansion interface{} + +// SubjectAccessReviewListerExpansion allows custom methods to be added to +// SubjectAccessReviewLister. +type SubjectAccessReviewListerExpansion interface{} diff --git a/pkg/client/listers/authorization/internalversion/zz_generated.localsubjectaccessreview.go b/pkg/client/listers/authorization/internalversion/localsubjectaccessreview.go similarity index 98% rename from pkg/client/listers/authorization/internalversion/zz_generated.localsubjectaccessreview.go rename to pkg/client/listers/authorization/internalversion/localsubjectaccessreview.go index 0cf9c381c5a..20a74eadd14 100644 --- a/pkg/client/listers/authorization/internalversion/zz_generated.localsubjectaccessreview.go +++ b/pkg/client/listers/authorization/internalversion/localsubjectaccessreview.go @@ -31,6 +31,7 @@ type LocalSubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*authorization.LocalSubjectAccessReview, err error) // LocalSubjectAccessReviews returns an object that can list and get LocalSubjectAccessReviews. LocalSubjectAccessReviews(namespace string) LocalSubjectAccessReviewNamespaceLister + LocalSubjectAccessReviewListerExpansion } // localSubjectAccessReviewLister implements the LocalSubjectAccessReviewLister interface. @@ -62,6 +63,7 @@ type LocalSubjectAccessReviewNamespaceLister interface { List(selector labels.Selector) (ret []*authorization.LocalSubjectAccessReview, err error) // Get retrieves the LocalSubjectAccessReview from the indexer for a given namespace and name. Get(name string) (*authorization.LocalSubjectAccessReview, error) + LocalSubjectAccessReviewNamespaceListerExpansion } // localSubjectAccessReviewNamespaceLister implements the LocalSubjectAccessReviewNamespaceLister diff --git a/pkg/client/listers/authorization/internalversion/zz_generated.selfsubjectaccessreview.go b/pkg/client/listers/authorization/internalversion/selfsubjectaccessreview.go similarity index 98% rename from pkg/client/listers/authorization/internalversion/zz_generated.selfsubjectaccessreview.go rename to pkg/client/listers/authorization/internalversion/selfsubjectaccessreview.go index 6639be30c7a..7c6d7a088fa 100644 --- a/pkg/client/listers/authorization/internalversion/zz_generated.selfsubjectaccessreview.go +++ b/pkg/client/listers/authorization/internalversion/selfsubjectaccessreview.go @@ -32,6 +32,7 @@ type SelfSubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*authorization.SelfSubjectAccessReview, err error) // Get retrieves the SelfSubjectAccessReview from the index for a given name. Get(name string) (*authorization.SelfSubjectAccessReview, error) + SelfSubjectAccessReviewListerExpansion } // selfSubjectAccessReviewLister implements the SelfSubjectAccessReviewLister interface. diff --git a/pkg/client/listers/authorization/internalversion/zz_generated.subjectaccessreview.go b/pkg/client/listers/authorization/internalversion/subjectaccessreview.go similarity index 99% rename from pkg/client/listers/authorization/internalversion/zz_generated.subjectaccessreview.go rename to pkg/client/listers/authorization/internalversion/subjectaccessreview.go index 3163c456e8b..e7c59143394 100644 --- a/pkg/client/listers/authorization/internalversion/zz_generated.subjectaccessreview.go +++ b/pkg/client/listers/authorization/internalversion/subjectaccessreview.go @@ -32,6 +32,7 @@ type SubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*authorization.SubjectAccessReview, err error) // Get retrieves the SubjectAccessReview from the index for a given name. Get(name string) (*authorization.SubjectAccessReview, error) + SubjectAccessReviewListerExpansion } // subjectAccessReviewLister implements the SubjectAccessReviewLister interface. diff --git a/pkg/client/listers/authorization/v1beta1/BUILD b/pkg/client/listers/authorization/v1beta1/BUILD index a1b6ad2f6fa..fa2305a8272 100644 --- a/pkg/client/listers/authorization/v1beta1/BUILD +++ b/pkg/client/listers/authorization/v1beta1/BUILD @@ -13,9 +13,10 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.localsubjectaccessreview.go", - "zz_generated.selfsubjectaccessreview.go", - "zz_generated.subjectaccessreview.go", + "expansion_generated.go", + "localsubjectaccessreview.go", + "selfsubjectaccessreview.go", + "subjectaccessreview.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/authorization/v1beta1/expansion_generated.go b/pkg/client/listers/authorization/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..a5c226e85e0 --- /dev/null +++ b/pkg/client/listers/authorization/v1beta1/expansion_generated.go @@ -0,0 +1,35 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// LocalSubjectAccessReviewListerExpansion allows custom methods to be added to +// LocalSubjectAccessReviewLister. +type LocalSubjectAccessReviewListerExpansion interface{} + +// LocalSubjectAccessReviewNamespaceListerExpansion allows custom methods to be added to +// LocalSubjectAccessReviewNamespaeLister. +type LocalSubjectAccessReviewNamespaceListerExpansion interface{} + +// SelfSubjectAccessReviewListerExpansion allows custom methods to be added to +// SelfSubjectAccessReviewLister. +type SelfSubjectAccessReviewListerExpansion interface{} + +// SubjectAccessReviewListerExpansion allows custom methods to be added to +// SubjectAccessReviewLister. +type SubjectAccessReviewListerExpansion interface{} diff --git a/pkg/client/listers/authorization/v1beta1/zz_generated.localsubjectaccessreview.go b/pkg/client/listers/authorization/v1beta1/localsubjectaccessreview.go similarity index 98% rename from pkg/client/listers/authorization/v1beta1/zz_generated.localsubjectaccessreview.go rename to pkg/client/listers/authorization/v1beta1/localsubjectaccessreview.go index ef3aef39a15..9d799e85f4d 100644 --- a/pkg/client/listers/authorization/v1beta1/zz_generated.localsubjectaccessreview.go +++ b/pkg/client/listers/authorization/v1beta1/localsubjectaccessreview.go @@ -32,6 +32,7 @@ type LocalSubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*v1beta1.LocalSubjectAccessReview, err error) // LocalSubjectAccessReviews returns an object that can list and get LocalSubjectAccessReviews. LocalSubjectAccessReviews(namespace string) LocalSubjectAccessReviewNamespaceLister + LocalSubjectAccessReviewListerExpansion } // localSubjectAccessReviewLister implements the LocalSubjectAccessReviewLister interface. @@ -63,6 +64,7 @@ type LocalSubjectAccessReviewNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.LocalSubjectAccessReview, err error) // Get retrieves the LocalSubjectAccessReview from the indexer for a given namespace and name. Get(name string) (*v1beta1.LocalSubjectAccessReview, error) + LocalSubjectAccessReviewNamespaceListerExpansion } // localSubjectAccessReviewNamespaceLister implements the LocalSubjectAccessReviewNamespaceLister diff --git a/pkg/client/listers/authorization/v1beta1/zz_generated.selfsubjectaccessreview.go b/pkg/client/listers/authorization/v1beta1/selfsubjectaccessreview.go similarity index 98% rename from pkg/client/listers/authorization/v1beta1/zz_generated.selfsubjectaccessreview.go rename to pkg/client/listers/authorization/v1beta1/selfsubjectaccessreview.go index 57c44cef5e5..ecd1cd8bcd8 100644 --- a/pkg/client/listers/authorization/v1beta1/zz_generated.selfsubjectaccessreview.go +++ b/pkg/client/listers/authorization/v1beta1/selfsubjectaccessreview.go @@ -33,6 +33,7 @@ type SelfSubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*v1beta1.SelfSubjectAccessReview, err error) // Get retrieves the SelfSubjectAccessReview from the index for a given name. Get(name string) (*v1beta1.SelfSubjectAccessReview, error) + SelfSubjectAccessReviewListerExpansion } // selfSubjectAccessReviewLister implements the SelfSubjectAccessReviewLister interface. diff --git a/pkg/client/listers/authorization/v1beta1/zz_generated.subjectaccessreview.go b/pkg/client/listers/authorization/v1beta1/subjectaccessreview.go similarity index 99% rename from pkg/client/listers/authorization/v1beta1/zz_generated.subjectaccessreview.go rename to pkg/client/listers/authorization/v1beta1/subjectaccessreview.go index 7b34c58150e..a9511568137 100644 --- a/pkg/client/listers/authorization/v1beta1/zz_generated.subjectaccessreview.go +++ b/pkg/client/listers/authorization/v1beta1/subjectaccessreview.go @@ -33,6 +33,7 @@ type SubjectAccessReviewLister interface { List(selector labels.Selector) (ret []*v1beta1.SubjectAccessReview, err error) // Get retrieves the SubjectAccessReview from the index for a given name. Get(name string) (*v1beta1.SubjectAccessReview, error) + SubjectAccessReviewListerExpansion } // subjectAccessReviewLister implements the SubjectAccessReviewLister interface. diff --git a/pkg/client/listers/autoscaling/internalversion/BUILD b/pkg/client/listers/autoscaling/internalversion/BUILD index 9559c7e2433..072fee29c14 100644 --- a/pkg/client/listers/autoscaling/internalversion/BUILD +++ b/pkg/client/listers/autoscaling/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.horizontalpodautoscaler.go"], + srcs = [ + "expansion_generated.go", + "horizontalpodautoscaler.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/autoscaling/internalversion/expansion_generated.go b/pkg/client/listers/autoscaling/internalversion/expansion_generated.go new file mode 100644 index 00000000000..027effe3209 --- /dev/null +++ b/pkg/client/listers/autoscaling/internalversion/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// HorizontalPodAutoscalerListerExpansion allows custom methods to be added to +// HorizontalPodAutoscalerLister. +type HorizontalPodAutoscalerListerExpansion interface{} + +// HorizontalPodAutoscalerNamespaceListerExpansion allows custom methods to be added to +// HorizontalPodAutoscalerNamespaeLister. +type HorizontalPodAutoscalerNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/autoscaling/internalversion/zz_generated.horizontalpodautoscaler.go b/pkg/client/listers/autoscaling/internalversion/horizontalpodautoscaler.go similarity index 98% rename from pkg/client/listers/autoscaling/internalversion/zz_generated.horizontalpodautoscaler.go rename to pkg/client/listers/autoscaling/internalversion/horizontalpodautoscaler.go index cabc43ed6af..4b73982d6e0 100644 --- a/pkg/client/listers/autoscaling/internalversion/zz_generated.horizontalpodautoscaler.go +++ b/pkg/client/listers/autoscaling/internalversion/horizontalpodautoscaler.go @@ -31,6 +31,7 @@ type HorizontalPodAutoscalerLister interface { List(selector labels.Selector) (ret []*autoscaling.HorizontalPodAutoscaler, err error) // HorizontalPodAutoscalers returns an object that can list and get HorizontalPodAutoscalers. HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerNamespaceLister + HorizontalPodAutoscalerListerExpansion } // horizontalPodAutoscalerLister implements the HorizontalPodAutoscalerLister interface. @@ -62,6 +63,7 @@ type HorizontalPodAutoscalerNamespaceLister interface { List(selector labels.Selector) (ret []*autoscaling.HorizontalPodAutoscaler, err error) // Get retrieves the HorizontalPodAutoscaler from the indexer for a given namespace and name. Get(name string) (*autoscaling.HorizontalPodAutoscaler, error) + HorizontalPodAutoscalerNamespaceListerExpansion } // horizontalPodAutoscalerNamespaceLister implements the HorizontalPodAutoscalerNamespaceLister diff --git a/pkg/client/listers/autoscaling/v1/BUILD b/pkg/client/listers/autoscaling/v1/BUILD index 724aa4b760d..db51223d8f9 100644 --- a/pkg/client/listers/autoscaling/v1/BUILD +++ b/pkg/client/listers/autoscaling/v1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.horizontalpodautoscaler.go"], + srcs = [ + "expansion_generated.go", + "horizontalpodautoscaler.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/autoscaling/v1/expansion_generated.go b/pkg/client/listers/autoscaling/v1/expansion_generated.go new file mode 100644 index 00000000000..60a34c19231 --- /dev/null +++ b/pkg/client/listers/autoscaling/v1/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1 + +// HorizontalPodAutoscalerListerExpansion allows custom methods to be added to +// HorizontalPodAutoscalerLister. +type HorizontalPodAutoscalerListerExpansion interface{} + +// HorizontalPodAutoscalerNamespaceListerExpansion allows custom methods to be added to +// HorizontalPodAutoscalerNamespaeLister. +type HorizontalPodAutoscalerNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/autoscaling/v1/zz_generated.horizontalpodautoscaler.go b/pkg/client/listers/autoscaling/v1/horizontalpodautoscaler.go similarity index 98% rename from pkg/client/listers/autoscaling/v1/zz_generated.horizontalpodautoscaler.go rename to pkg/client/listers/autoscaling/v1/horizontalpodautoscaler.go index 7477aea95ed..a6c7e3f0c84 100644 --- a/pkg/client/listers/autoscaling/v1/zz_generated.horizontalpodautoscaler.go +++ b/pkg/client/listers/autoscaling/v1/horizontalpodautoscaler.go @@ -32,6 +32,7 @@ type HorizontalPodAutoscalerLister interface { List(selector labels.Selector) (ret []*v1.HorizontalPodAutoscaler, err error) // HorizontalPodAutoscalers returns an object that can list and get HorizontalPodAutoscalers. HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerNamespaceLister + HorizontalPodAutoscalerListerExpansion } // horizontalPodAutoscalerLister implements the HorizontalPodAutoscalerLister interface. @@ -63,6 +64,7 @@ type HorizontalPodAutoscalerNamespaceLister interface { List(selector labels.Selector) (ret []*v1.HorizontalPodAutoscaler, err error) // Get retrieves the HorizontalPodAutoscaler from the indexer for a given namespace and name. Get(name string) (*v1.HorizontalPodAutoscaler, error) + HorizontalPodAutoscalerNamespaceListerExpansion } // horizontalPodAutoscalerNamespaceLister implements the HorizontalPodAutoscalerNamespaceLister diff --git a/pkg/client/listers/batch/internalversion/BUILD b/pkg/client/listers/batch/internalversion/BUILD index 77c94ef4c56..3a4eacba3d1 100644 --- a/pkg/client/listers/batch/internalversion/BUILD +++ b/pkg/client/listers/batch/internalversion/BUILD @@ -13,14 +13,33 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.job.go", - "zz_generated.scheduledjob.go", + "expansion_generated.go", + "job.go", + "job_expansion.go", + "scheduledjob.go", ], tags = ["automanaged"], deps = [ + "//pkg/api:go_default_library", "//pkg/api/errors:go_default_library", + "//pkg/api/unversioned:go_default_library", "//pkg/apis/batch:go_default_library", "//pkg/client/cache:go_default_library", "//pkg/labels:go_default_library", ], ) + +go_test( + name = "go_default_test", + srcs = ["job_test.go"], + library = "go_default_library", + tags = ["automanaged"], + deps = [ + "//pkg/api:go_default_library", + "//pkg/api/unversioned:go_default_library", + "//pkg/apis/batch:go_default_library", + "//pkg/client/cache:go_default_library", + "//pkg/labels:go_default_library", + "//pkg/util/sets:go_default_library", + ], +) diff --git a/pkg/client/listers/batch/internalversion/expansion_generated.go b/pkg/client/listers/batch/internalversion/expansion_generated.go new file mode 100644 index 00000000000..de9fc938b73 --- /dev/null +++ b/pkg/client/listers/batch/internalversion/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// ScheduledJobListerExpansion allows custom methods to be added to +// ScheduledJobLister. +type ScheduledJobListerExpansion interface{} + +// ScheduledJobNamespaceListerExpansion allows custom methods to be added to +// ScheduledJobNamespaeLister. +type ScheduledJobNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/batch/internalversion/zz_generated.job.go b/pkg/client/listers/batch/internalversion/job.go similarity index 98% rename from pkg/client/listers/batch/internalversion/zz_generated.job.go rename to pkg/client/listers/batch/internalversion/job.go index 7807012668c..49e02f8ae68 100644 --- a/pkg/client/listers/batch/internalversion/zz_generated.job.go +++ b/pkg/client/listers/batch/internalversion/job.go @@ -31,6 +31,7 @@ type JobLister interface { List(selector labels.Selector) (ret []*batch.Job, err error) // Jobs returns an object that can list and get Jobs. Jobs(namespace string) JobNamespaceLister + JobListerExpansion } // jobLister implements the JobLister interface. @@ -62,6 +63,7 @@ type JobNamespaceLister interface { List(selector labels.Selector) (ret []*batch.Job, err error) // Get retrieves the Job from the indexer for a given namespace and name. Get(name string) (*batch.Job, error) + JobNamespaceListerExpansion } // jobNamespaceLister implements the JobNamespaceLister diff --git a/pkg/client/listers/batch/internalversion/job_expansion.go b/pkg/client/listers/batch/internalversion/job_expansion.go new file mode 100644 index 00000000000..e73ce519219 --- /dev/null +++ b/pkg/client/listers/batch/internalversion/job_expansion.go @@ -0,0 +1,64 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 internalversion + +import ( + "fmt" + + "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/api/unversioned" + "k8s.io/kubernetes/pkg/apis/batch" + "k8s.io/kubernetes/pkg/labels" +) + +// JobListerExpansion allows custom methods to be added to +// JobLister. +type JobListerExpansion interface { + // GetPodJobs returns a list of jobs managing a pod. An error is returned only + // if no matching jobs are found. + GetPodJobs(pod *api.Pod) (jobs []batch.Job, err error) +} + +// GetPodJobs returns a list of jobs managing a pod. An error is returned only +// if no matching jobs are found. +func (l *jobLister) GetPodJobs(pod *api.Pod) (jobs []batch.Job, err error) { + if len(pod.Labels) == 0 { + err = fmt.Errorf("no jobs found for pod %v because it has no labels", pod.Name) + return + } + + var list []*batch.Job + list, err = l.Jobs(pod.Namespace).List(labels.Everything()) + if err != nil { + return + } + for _, job := range list { + selector, _ := unversioned.LabelSelectorAsSelector(job.Spec.Selector) + if !selector.Matches(labels.Set(pod.Labels)) { + continue + } + jobs = append(jobs, *job) + } + if len(jobs) == 0 { + err = fmt.Errorf("could not find jobs for pod %s in namespace %s with labels: %v", pod.Name, pod.Namespace, pod.Labels) + } + return +} + +// JobNamespaceListerExpansion allows custom methods to be added to +// JobNamespaceLister. +type JobNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/batch/internalversion/job_test.go b/pkg/client/listers/batch/internalversion/job_test.go new file mode 100644 index 00000000000..f0d99b3184b --- /dev/null +++ b/pkg/client/listers/batch/internalversion/job_test.go @@ -0,0 +1,219 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 internalversion + +import ( + "testing" + + "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/api/unversioned" + "k8s.io/kubernetes/pkg/apis/batch" + "k8s.io/kubernetes/pkg/client/cache" + "k8s.io/kubernetes/pkg/labels" + "k8s.io/kubernetes/pkg/util/sets" +) + +func TestJobLister(t *testing.T) { + indexer := cache.NewIndexer(cache.MetaNamespaceKeyFunc, cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc}) + lister := NewJobLister(indexer) + testCases := []struct { + inJobs []*batch.Job + list func() ([]*batch.Job, error) + outJobNames sets.String + expectErr bool + msg string + }{ + // Basic listing + { + inJobs: []*batch.Job{ + {ObjectMeta: api.ObjectMeta{Name: "basic"}}, + }, + list: func() ([]*batch.Job, error) { + list, err := lister.List(labels.Everything()) + return list, err + }, + outJobNames: sets.NewString("basic"), + msg: "basic listing failed", + }, + // Listing multiple jobs + { + inJobs: []*batch.Job{ + {ObjectMeta: api.ObjectMeta{Name: "basic"}}, + {ObjectMeta: api.ObjectMeta{Name: "complex"}}, + {ObjectMeta: api.ObjectMeta{Name: "complex2"}}, + }, + list: func() ([]*batch.Job, error) { + list, err := lister.List(labels.Everything()) + return list, err + }, + outJobNames: sets.NewString("basic", "complex", "complex2"), + msg: "listing multiple jobs failed", + }, + // No pod labels + { + inJobs: []*batch.Job{ + { + ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, + Spec: batch.JobSpec{ + Selector: &unversioned.LabelSelector{ + MatchLabels: map[string]string{"foo": "baz"}, + }, + }, + }, + }, + list: func() ([]*batch.Job, error) { + pod := &api.Pod{ + ObjectMeta: api.ObjectMeta{Name: "pod", Namespace: "ns"}, + } + podJobs, err := lister.GetPodJobs(pod) + jobs := make([]*batch.Job, 0, len(podJobs)) + for i := range podJobs { + jobs = append(jobs, &podJobs[i]) + } + return jobs, err + }, + outJobNames: sets.NewString(), + expectErr: true, + msg: "listing jobs failed when pod has no labels: expected error, got none", + }, + // No Job selectors + { + inJobs: []*batch.Job{ + { + ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, + }, + }, + list: func() ([]*batch.Job, error) { + pod := &api.Pod{ + ObjectMeta: api.ObjectMeta{ + Name: "pod", + Namespace: "ns", + Labels: map[string]string{"foo": "bar"}, + }, + } + podJobs, err := lister.GetPodJobs(pod) + jobs := make([]*batch.Job, 0, len(podJobs)) + for i := range podJobs { + jobs = append(jobs, &podJobs[i]) + } + return jobs, err + }, + outJobNames: sets.NewString(), + expectErr: true, + msg: "listing jobs failed when job has no selector: expected error, got none", + }, + // Matching labels to selectors and namespace + { + inJobs: []*batch.Job{ + { + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Spec: batch.JobSpec{ + Selector: &unversioned.LabelSelector{ + MatchLabels: map[string]string{"foo": "bar"}, + }, + }, + }, + { + ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "ns"}, + Spec: batch.JobSpec{ + Selector: &unversioned.LabelSelector{ + MatchLabels: map[string]string{"foo": "bar"}, + }, + }, + }, + }, + list: func() ([]*batch.Job, error) { + pod := &api.Pod{ + ObjectMeta: api.ObjectMeta{ + Name: "pod", + Labels: map[string]string{"foo": "bar"}, + Namespace: "ns", + }, + } + podJobs, err := lister.GetPodJobs(pod) + jobs := make([]*batch.Job, 0, len(podJobs)) + for i := range podJobs { + jobs = append(jobs, &podJobs[i]) + } + return jobs, err + }, + outJobNames: sets.NewString("bar"), + msg: "listing jobs with namespace and selector failed", + }, + // Matching labels to selectors and namespace, error case + { + inJobs: []*batch.Job{ + { + ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: "foo"}, + Spec: batch.JobSpec{ + Selector: &unversioned.LabelSelector{ + MatchLabels: map[string]string{"foo": "bar"}, + }, + }, + }, + { + ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "bar"}, + Spec: batch.JobSpec{ + Selector: &unversioned.LabelSelector{ + MatchLabels: map[string]string{"foo": "bar"}, + }, + }, + }, + }, + list: func() ([]*batch.Job, error) { + pod := &api.Pod{ + ObjectMeta: api.ObjectMeta{ + Name: "pod", + Labels: map[string]string{"foo": "bar"}, + Namespace: "baz", + }, + } + podJobs, err := lister.GetPodJobs(pod) + jobs := make([]*batch.Job, 0, len(podJobs)) + for i := range podJobs { + jobs = append(jobs, &podJobs[i]) + } + return jobs, err + }, + expectErr: true, + msg: "listing jobs with namespace and selector failed: expected error, got none", + }, + } + for _, c := range testCases { + for _, r := range c.inJobs { + indexer.Add(r) + } + + Jobs, err := c.list() + if err != nil && c.expectErr { + continue + } else if c.expectErr { + t.Errorf("%v", c.msg) + continue + } else if err != nil { + t.Errorf("Unexpected error %#v", err) + continue + } + JobNames := make([]string, len(Jobs)) + for ix := range Jobs { + JobNames[ix] = Jobs[ix].Name + } + if !c.outJobNames.HasAll(JobNames...) || len(JobNames) != len(c.outJobNames) { + t.Errorf("%v : expected %v, got %v", c.msg, JobNames, c.outJobNames) + } + } +} diff --git a/pkg/client/listers/batch/internalversion/zz_generated.scheduledjob.go b/pkg/client/listers/batch/internalversion/scheduledjob.go similarity index 98% rename from pkg/client/listers/batch/internalversion/zz_generated.scheduledjob.go rename to pkg/client/listers/batch/internalversion/scheduledjob.go index 2beb58595f6..9d7a320a0be 100644 --- a/pkg/client/listers/batch/internalversion/zz_generated.scheduledjob.go +++ b/pkg/client/listers/batch/internalversion/scheduledjob.go @@ -31,6 +31,7 @@ type ScheduledJobLister interface { List(selector labels.Selector) (ret []*batch.ScheduledJob, err error) // ScheduledJobs returns an object that can list and get ScheduledJobs. ScheduledJobs(namespace string) ScheduledJobNamespaceLister + ScheduledJobListerExpansion } // scheduledJobLister implements the ScheduledJobLister interface. @@ -62,6 +63,7 @@ type ScheduledJobNamespaceLister interface { List(selector labels.Selector) (ret []*batch.ScheduledJob, err error) // Get retrieves the ScheduledJob from the indexer for a given namespace and name. Get(name string) (*batch.ScheduledJob, error) + ScheduledJobNamespaceListerExpansion } // scheduledJobNamespaceLister implements the ScheduledJobNamespaceLister diff --git a/pkg/client/listers/batch/v1/BUILD b/pkg/client/listers/batch/v1/BUILD index 1a981ba9051..b7174eafc61 100644 --- a/pkg/client/listers/batch/v1/BUILD +++ b/pkg/client/listers/batch/v1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.job.go"], + srcs = [ + "expansion_generated.go", + "job.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/batch/v1/expansion_generated.go b/pkg/client/listers/batch/v1/expansion_generated.go new file mode 100644 index 00000000000..14ac2777652 --- /dev/null +++ b/pkg/client/listers/batch/v1/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1 + +// JobListerExpansion allows custom methods to be added to +// JobLister. +type JobListerExpansion interface{} + +// JobNamespaceListerExpansion allows custom methods to be added to +// JobNamespaeLister. +type JobNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/batch/v1/zz_generated.job.go b/pkg/client/listers/batch/v1/job.go similarity index 98% rename from pkg/client/listers/batch/v1/zz_generated.job.go rename to pkg/client/listers/batch/v1/job.go index b6507f1144f..dc8d4ae7bef 100644 --- a/pkg/client/listers/batch/v1/zz_generated.job.go +++ b/pkg/client/listers/batch/v1/job.go @@ -32,6 +32,7 @@ type JobLister interface { List(selector labels.Selector) (ret []*v1.Job, err error) // Jobs returns an object that can list and get Jobs. Jobs(namespace string) JobNamespaceLister + JobListerExpansion } // jobLister implements the JobLister interface. @@ -63,6 +64,7 @@ type JobNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Job, err error) // Get retrieves the Job from the indexer for a given namespace and name. Get(name string) (*v1.Job, error) + JobNamespaceListerExpansion } // jobNamespaceLister implements the JobNamespaceLister diff --git a/pkg/client/listers/batch/v2alpha1/BUILD b/pkg/client/listers/batch/v2alpha1/BUILD index fad4c9a7d20..e9c4f39fb80 100644 --- a/pkg/client/listers/batch/v2alpha1/BUILD +++ b/pkg/client/listers/batch/v2alpha1/BUILD @@ -13,8 +13,9 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.job.go", - "zz_generated.scheduledjob.go", + "expansion_generated.go", + "job.go", + "scheduledjob.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/batch/v2alpha1/expansion_generated.go b/pkg/client/listers/batch/v2alpha1/expansion_generated.go new file mode 100644 index 00000000000..0c6d9597ac1 --- /dev/null +++ b/pkg/client/listers/batch/v2alpha1/expansion_generated.go @@ -0,0 +1,35 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v2alpha1 + +// JobListerExpansion allows custom methods to be added to +// JobLister. +type JobListerExpansion interface{} + +// JobNamespaceListerExpansion allows custom methods to be added to +// JobNamespaeLister. +type JobNamespaceListerExpansion interface{} + +// ScheduledJobListerExpansion allows custom methods to be added to +// ScheduledJobLister. +type ScheduledJobListerExpansion interface{} + +// ScheduledJobNamespaceListerExpansion allows custom methods to be added to +// ScheduledJobNamespaeLister. +type ScheduledJobNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/batch/v2alpha1/zz_generated.job.go b/pkg/client/listers/batch/v2alpha1/job.go similarity index 98% rename from pkg/client/listers/batch/v2alpha1/zz_generated.job.go rename to pkg/client/listers/batch/v2alpha1/job.go index 91deb14e0cd..a66e5632d47 100644 --- a/pkg/client/listers/batch/v2alpha1/zz_generated.job.go +++ b/pkg/client/listers/batch/v2alpha1/job.go @@ -32,6 +32,7 @@ type JobLister interface { List(selector labels.Selector) (ret []*v2alpha1.Job, err error) // Jobs returns an object that can list and get Jobs. Jobs(namespace string) JobNamespaceLister + JobListerExpansion } // jobLister implements the JobLister interface. @@ -63,6 +64,7 @@ type JobNamespaceLister interface { List(selector labels.Selector) (ret []*v2alpha1.Job, err error) // Get retrieves the Job from the indexer for a given namespace and name. Get(name string) (*v2alpha1.Job, error) + JobNamespaceListerExpansion } // jobNamespaceLister implements the JobNamespaceLister diff --git a/pkg/client/listers/batch/v2alpha1/zz_generated.scheduledjob.go b/pkg/client/listers/batch/v2alpha1/scheduledjob.go similarity index 98% rename from pkg/client/listers/batch/v2alpha1/zz_generated.scheduledjob.go rename to pkg/client/listers/batch/v2alpha1/scheduledjob.go index b210a4e25e5..ff2e3d08976 100644 --- a/pkg/client/listers/batch/v2alpha1/zz_generated.scheduledjob.go +++ b/pkg/client/listers/batch/v2alpha1/scheduledjob.go @@ -32,6 +32,7 @@ type ScheduledJobLister interface { List(selector labels.Selector) (ret []*v2alpha1.ScheduledJob, err error) // ScheduledJobs returns an object that can list and get ScheduledJobs. ScheduledJobs(namespace string) ScheduledJobNamespaceLister + ScheduledJobListerExpansion } // scheduledJobLister implements the ScheduledJobLister interface. @@ -63,6 +64,7 @@ type ScheduledJobNamespaceLister interface { List(selector labels.Selector) (ret []*v2alpha1.ScheduledJob, err error) // Get retrieves the ScheduledJob from the indexer for a given namespace and name. Get(name string) (*v2alpha1.ScheduledJob, error) + ScheduledJobNamespaceListerExpansion } // scheduledJobNamespaceLister implements the ScheduledJobNamespaceLister diff --git a/pkg/client/listers/certificates/internalversion/BUILD b/pkg/client/listers/certificates/internalversion/BUILD index f566d70d7eb..d92aa928671 100644 --- a/pkg/client/listers/certificates/internalversion/BUILD +++ b/pkg/client/listers/certificates/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.certificatesigningrequest.go"], + srcs = [ + "certificatesigningrequest.go", + "expansion_generated.go", + ], tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", diff --git a/pkg/client/listers/certificates/internalversion/zz_generated.certificatesigningrequest.go b/pkg/client/listers/certificates/internalversion/certificatesigningrequest.go similarity index 98% rename from pkg/client/listers/certificates/internalversion/zz_generated.certificatesigningrequest.go rename to pkg/client/listers/certificates/internalversion/certificatesigningrequest.go index c0c1da0b62d..72ff6635608 100644 --- a/pkg/client/listers/certificates/internalversion/zz_generated.certificatesigningrequest.go +++ b/pkg/client/listers/certificates/internalversion/certificatesigningrequest.go @@ -32,6 +32,7 @@ type CertificateSigningRequestLister interface { List(selector labels.Selector) (ret []*certificates.CertificateSigningRequest, err error) // Get retrieves the CertificateSigningRequest from the index for a given name. Get(name string) (*certificates.CertificateSigningRequest, error) + CertificateSigningRequestListerExpansion } // certificateSigningRequestLister implements the CertificateSigningRequestLister interface. diff --git a/pkg/client/listers/certificates/internalversion/expansion_generated.go b/pkg/client/listers/certificates/internalversion/expansion_generated.go new file mode 100644 index 00000000000..1b28f5c34c4 --- /dev/null +++ b/pkg/client/listers/certificates/internalversion/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// CertificateSigningRequestListerExpansion allows custom methods to be added to +// CertificateSigningRequestLister. +type CertificateSigningRequestListerExpansion interface{} diff --git a/pkg/client/listers/certificates/v1alpha1/BUILD b/pkg/client/listers/certificates/v1alpha1/BUILD index b254fe0f638..c0a84986360 100644 --- a/pkg/client/listers/certificates/v1alpha1/BUILD +++ b/pkg/client/listers/certificates/v1alpha1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.certificatesigningrequest.go"], + srcs = [ + "certificatesigningrequest.go", + "expansion_generated.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/certificates/v1alpha1/zz_generated.certificatesigningrequest.go b/pkg/client/listers/certificates/v1alpha1/certificatesigningrequest.go similarity index 98% rename from pkg/client/listers/certificates/v1alpha1/zz_generated.certificatesigningrequest.go rename to pkg/client/listers/certificates/v1alpha1/certificatesigningrequest.go index d04846a6fbe..ffc58abab26 100644 --- a/pkg/client/listers/certificates/v1alpha1/zz_generated.certificatesigningrequest.go +++ b/pkg/client/listers/certificates/v1alpha1/certificatesigningrequest.go @@ -33,6 +33,7 @@ type CertificateSigningRequestLister interface { List(selector labels.Selector) (ret []*v1alpha1.CertificateSigningRequest, err error) // Get retrieves the CertificateSigningRequest from the index for a given name. Get(name string) (*v1alpha1.CertificateSigningRequest, error) + CertificateSigningRequestListerExpansion } // certificateSigningRequestLister implements the CertificateSigningRequestLister interface. diff --git a/pkg/client/listers/certificates/v1alpha1/expansion_generated.go b/pkg/client/listers/certificates/v1alpha1/expansion_generated.go new file mode 100644 index 00000000000..dfbd823c4bf --- /dev/null +++ b/pkg/client/listers/certificates/v1alpha1/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1alpha1 + +// CertificateSigningRequestListerExpansion allows custom methods to be added to +// CertificateSigningRequestLister. +type CertificateSigningRequestListerExpansion interface{} diff --git a/pkg/client/listers/core/internalversion/BUILD b/pkg/client/listers/core/internalversion/BUILD index d50ad0a8bd9..a592cefd7ea 100644 --- a/pkg/client/listers/core/internalversion/BUILD +++ b/pkg/client/listers/core/internalversion/BUILD @@ -13,22 +13,23 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.componentstatus.go", - "zz_generated.configmap.go", - "zz_generated.endpoints.go", - "zz_generated.event.go", - "zz_generated.limitrange.go", - "zz_generated.namespace.go", - "zz_generated.node.go", - "zz_generated.persistentvolume.go", - "zz_generated.persistentvolumeclaim.go", - "zz_generated.pod.go", - "zz_generated.podtemplate.go", - "zz_generated.replicationcontroller.go", - "zz_generated.resourcequota.go", - "zz_generated.secret.go", - "zz_generated.service.go", - "zz_generated.serviceaccount.go", + "componentstatus.go", + "configmap.go", + "endpoints.go", + "event.go", + "expansion_generated.go", + "limitrange.go", + "namespace.go", + "node.go", + "persistentvolume.go", + "persistentvolumeclaim.go", + "pod.go", + "podtemplate.go", + "replicationcontroller.go", + "resourcequota.go", + "secret.go", + "service.go", + "serviceaccount.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/core/internalversion/zz_generated.componentstatus.go b/pkg/client/listers/core/internalversion/componentstatus.go similarity index 99% rename from pkg/client/listers/core/internalversion/zz_generated.componentstatus.go rename to pkg/client/listers/core/internalversion/componentstatus.go index aee1ba4de53..711cba1e757 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.componentstatus.go +++ b/pkg/client/listers/core/internalversion/componentstatus.go @@ -31,6 +31,7 @@ type ComponentStatusLister interface { List(selector labels.Selector) (ret []*api.ComponentStatus, err error) // Get retrieves the ComponentStatus from the index for a given name. Get(name string) (*api.ComponentStatus, error) + ComponentStatusListerExpansion } // componentStatusLister implements the ComponentStatusLister interface. diff --git a/pkg/client/listers/core/internalversion/zz_generated.configmap.go b/pkg/client/listers/core/internalversion/configmap.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.configmap.go rename to pkg/client/listers/core/internalversion/configmap.go index 0e94e9d9cdd..6de8d43ccf1 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.configmap.go +++ b/pkg/client/listers/core/internalversion/configmap.go @@ -31,6 +31,7 @@ type ConfigMapLister interface { List(selector labels.Selector) (ret []*api.ConfigMap, err error) // ConfigMaps returns an object that can list and get ConfigMaps. ConfigMaps(namespace string) ConfigMapNamespaceLister + ConfigMapListerExpansion } // configMapLister implements the ConfigMapLister interface. @@ -62,6 +63,7 @@ type ConfigMapNamespaceLister interface { List(selector labels.Selector) (ret []*api.ConfigMap, err error) // Get retrieves the ConfigMap from the indexer for a given namespace and name. Get(name string) (*api.ConfigMap, error) + ConfigMapNamespaceListerExpansion } // configMapNamespaceLister implements the ConfigMapNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.endpoints.go b/pkg/client/listers/core/internalversion/endpoints.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.endpoints.go rename to pkg/client/listers/core/internalversion/endpoints.go index 7e08792a2f0..881b4873c6b 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.endpoints.go +++ b/pkg/client/listers/core/internalversion/endpoints.go @@ -31,6 +31,7 @@ type EndpointsLister interface { List(selector labels.Selector) (ret []*api.Endpoints, err error) // Endpoints returns an object that can list and get Endpoints. Endpoints(namespace string) EndpointsNamespaceLister + EndpointsListerExpansion } // endpointsLister implements the EndpointsLister interface. @@ -62,6 +63,7 @@ type EndpointsNamespaceLister interface { List(selector labels.Selector) (ret []*api.Endpoints, err error) // Get retrieves the Endpoints from the indexer for a given namespace and name. Get(name string) (*api.Endpoints, error) + EndpointsNamespaceListerExpansion } // endpointsNamespaceLister implements the EndpointsNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.event.go b/pkg/client/listers/core/internalversion/event.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.event.go rename to pkg/client/listers/core/internalversion/event.go index 14d51cdf17e..b1ec8289b77 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.event.go +++ b/pkg/client/listers/core/internalversion/event.go @@ -31,6 +31,7 @@ type EventLister interface { List(selector labels.Selector) (ret []*api.Event, err error) // Events returns an object that can list and get Events. Events(namespace string) EventNamespaceLister + EventListerExpansion } // eventLister implements the EventLister interface. @@ -62,6 +63,7 @@ type EventNamespaceLister interface { List(selector labels.Selector) (ret []*api.Event, err error) // Get retrieves the Event from the indexer for a given namespace and name. Get(name string) (*api.Event, error) + EventNamespaceListerExpansion } // eventNamespaceLister implements the EventNamespaceLister diff --git a/pkg/client/listers/core/internalversion/expansion_generated.go b/pkg/client/listers/core/internalversion/expansion_generated.go new file mode 100644 index 00000000000..0fa7a1efeef --- /dev/null +++ b/pkg/client/listers/core/internalversion/expansion_generated.go @@ -0,0 +1,131 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// ComponentStatusListerExpansion allows custom methods to be added to +// ComponentStatusLister. +type ComponentStatusListerExpansion interface{} + +// ConfigMapListerExpansion allows custom methods to be added to +// ConfigMapLister. +type ConfigMapListerExpansion interface{} + +// ConfigMapNamespaceListerExpansion allows custom methods to be added to +// ConfigMapNamespaeLister. +type ConfigMapNamespaceListerExpansion interface{} + +// EndpointsListerExpansion allows custom methods to be added to +// EndpointsLister. +type EndpointsListerExpansion interface{} + +// EndpointsNamespaceListerExpansion allows custom methods to be added to +// EndpointsNamespaeLister. +type EndpointsNamespaceListerExpansion interface{} + +// EventListerExpansion allows custom methods to be added to +// EventLister. +type EventListerExpansion interface{} + +// EventNamespaceListerExpansion allows custom methods to be added to +// EventNamespaeLister. +type EventNamespaceListerExpansion interface{} + +// LimitRangeListerExpansion allows custom methods to be added to +// LimitRangeLister. +type LimitRangeListerExpansion interface{} + +// LimitRangeNamespaceListerExpansion allows custom methods to be added to +// LimitRangeNamespaeLister. +type LimitRangeNamespaceListerExpansion interface{} + +// NamespaceListerExpansion allows custom methods to be added to +// NamespaceLister. +type NamespaceListerExpansion interface{} + +// NodeListerExpansion allows custom methods to be added to +// NodeLister. +type NodeListerExpansion interface{} + +// PersistentVolumeListerExpansion allows custom methods to be added to +// PersistentVolumeLister. +type PersistentVolumeListerExpansion interface{} + +// PersistentVolumeClaimListerExpansion allows custom methods to be added to +// PersistentVolumeClaimLister. +type PersistentVolumeClaimListerExpansion interface{} + +// PersistentVolumeClaimNamespaceListerExpansion allows custom methods to be added to +// PersistentVolumeClaimNamespaeLister. +type PersistentVolumeClaimNamespaceListerExpansion interface{} + +// PodListerExpansion allows custom methods to be added to +// PodLister. +type PodListerExpansion interface{} + +// PodNamespaceListerExpansion allows custom methods to be added to +// PodNamespaeLister. +type PodNamespaceListerExpansion interface{} + +// PodTemplateListerExpansion allows custom methods to be added to +// PodTemplateLister. +type PodTemplateListerExpansion interface{} + +// PodTemplateNamespaceListerExpansion allows custom methods to be added to +// PodTemplateNamespaeLister. +type PodTemplateNamespaceListerExpansion interface{} + +// ReplicationControllerListerExpansion allows custom methods to be added to +// ReplicationControllerLister. +type ReplicationControllerListerExpansion interface{} + +// ReplicationControllerNamespaceListerExpansion allows custom methods to be added to +// ReplicationControllerNamespaeLister. +type ReplicationControllerNamespaceListerExpansion interface{} + +// ResourceQuotaListerExpansion allows custom methods to be added to +// ResourceQuotaLister. +type ResourceQuotaListerExpansion interface{} + +// ResourceQuotaNamespaceListerExpansion allows custom methods to be added to +// ResourceQuotaNamespaeLister. +type ResourceQuotaNamespaceListerExpansion interface{} + +// SecretListerExpansion allows custom methods to be added to +// SecretLister. +type SecretListerExpansion interface{} + +// SecretNamespaceListerExpansion allows custom methods to be added to +// SecretNamespaeLister. +type SecretNamespaceListerExpansion interface{} + +// ServiceListerExpansion allows custom methods to be added to +// ServiceLister. +type ServiceListerExpansion interface{} + +// ServiceNamespaceListerExpansion allows custom methods to be added to +// ServiceNamespaeLister. +type ServiceNamespaceListerExpansion interface{} + +// ServiceAccountListerExpansion allows custom methods to be added to +// ServiceAccountLister. +type ServiceAccountListerExpansion interface{} + +// ServiceAccountNamespaceListerExpansion allows custom methods to be added to +// ServiceAccountNamespaeLister. +type ServiceAccountNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/core/internalversion/zz_generated.limitrange.go b/pkg/client/listers/core/internalversion/limitrange.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.limitrange.go rename to pkg/client/listers/core/internalversion/limitrange.go index af37c955606..60868afec07 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.limitrange.go +++ b/pkg/client/listers/core/internalversion/limitrange.go @@ -31,6 +31,7 @@ type LimitRangeLister interface { List(selector labels.Selector) (ret []*api.LimitRange, err error) // LimitRanges returns an object that can list and get LimitRanges. LimitRanges(namespace string) LimitRangeNamespaceLister + LimitRangeListerExpansion } // limitRangeLister implements the LimitRangeLister interface. @@ -62,6 +63,7 @@ type LimitRangeNamespaceLister interface { List(selector labels.Selector) (ret []*api.LimitRange, err error) // Get retrieves the LimitRange from the indexer for a given namespace and name. Get(name string) (*api.LimitRange, error) + LimitRangeNamespaceListerExpansion } // limitRangeNamespaceLister implements the LimitRangeNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.namespace.go b/pkg/client/listers/core/internalversion/namespace.go similarity index 99% rename from pkg/client/listers/core/internalversion/zz_generated.namespace.go rename to pkg/client/listers/core/internalversion/namespace.go index fc012081509..9fe35bbbe6e 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.namespace.go +++ b/pkg/client/listers/core/internalversion/namespace.go @@ -31,6 +31,7 @@ type NamespaceLister interface { List(selector labels.Selector) (ret []*api.Namespace, err error) // Get retrieves the Namespace from the index for a given name. Get(name string) (*api.Namespace, error) + NamespaceListerExpansion } // namespaceLister implements the NamespaceLister interface. diff --git a/pkg/client/listers/core/internalversion/zz_generated.node.go b/pkg/client/listers/core/internalversion/node.go similarity index 99% rename from pkg/client/listers/core/internalversion/zz_generated.node.go rename to pkg/client/listers/core/internalversion/node.go index f02fd06dbec..a0289ad1392 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.node.go +++ b/pkg/client/listers/core/internalversion/node.go @@ -31,6 +31,7 @@ type NodeLister interface { List(selector labels.Selector) (ret []*api.Node, err error) // Get retrieves the Node from the index for a given name. Get(name string) (*api.Node, error) + NodeListerExpansion } // nodeLister implements the NodeLister interface. diff --git a/pkg/client/listers/core/internalversion/zz_generated.persistentvolume.go b/pkg/client/listers/core/internalversion/persistentvolume.go similarity index 99% rename from pkg/client/listers/core/internalversion/zz_generated.persistentvolume.go rename to pkg/client/listers/core/internalversion/persistentvolume.go index 995205a9563..2aca397e4f9 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.persistentvolume.go +++ b/pkg/client/listers/core/internalversion/persistentvolume.go @@ -31,6 +31,7 @@ type PersistentVolumeLister interface { List(selector labels.Selector) (ret []*api.PersistentVolume, err error) // Get retrieves the PersistentVolume from the index for a given name. Get(name string) (*api.PersistentVolume, error) + PersistentVolumeListerExpansion } // persistentVolumeLister implements the PersistentVolumeLister interface. diff --git a/pkg/client/listers/core/internalversion/zz_generated.persistentvolumeclaim.go b/pkg/client/listers/core/internalversion/persistentvolumeclaim.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.persistentvolumeclaim.go rename to pkg/client/listers/core/internalversion/persistentvolumeclaim.go index e7d6a447998..b46fdc2912e 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.persistentvolumeclaim.go +++ b/pkg/client/listers/core/internalversion/persistentvolumeclaim.go @@ -31,6 +31,7 @@ type PersistentVolumeClaimLister interface { List(selector labels.Selector) (ret []*api.PersistentVolumeClaim, err error) // PersistentVolumeClaims returns an object that can list and get PersistentVolumeClaims. PersistentVolumeClaims(namespace string) PersistentVolumeClaimNamespaceLister + PersistentVolumeClaimListerExpansion } // persistentVolumeClaimLister implements the PersistentVolumeClaimLister interface. @@ -62,6 +63,7 @@ type PersistentVolumeClaimNamespaceLister interface { List(selector labels.Selector) (ret []*api.PersistentVolumeClaim, err error) // Get retrieves the PersistentVolumeClaim from the indexer for a given namespace and name. Get(name string) (*api.PersistentVolumeClaim, error) + PersistentVolumeClaimNamespaceListerExpansion } // persistentVolumeClaimNamespaceLister implements the PersistentVolumeClaimNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.pod.go b/pkg/client/listers/core/internalversion/pod.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.pod.go rename to pkg/client/listers/core/internalversion/pod.go index 0cbaf6d2b9d..b5fd25cff07 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.pod.go +++ b/pkg/client/listers/core/internalversion/pod.go @@ -31,6 +31,7 @@ type PodLister interface { List(selector labels.Selector) (ret []*api.Pod, err error) // Pods returns an object that can list and get Pods. Pods(namespace string) PodNamespaceLister + PodListerExpansion } // podLister implements the PodLister interface. @@ -62,6 +63,7 @@ type PodNamespaceLister interface { List(selector labels.Selector) (ret []*api.Pod, err error) // Get retrieves the Pod from the indexer for a given namespace and name. Get(name string) (*api.Pod, error) + PodNamespaceListerExpansion } // podNamespaceLister implements the PodNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.podtemplate.go b/pkg/client/listers/core/internalversion/podtemplate.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.podtemplate.go rename to pkg/client/listers/core/internalversion/podtemplate.go index cc5411b17a0..1a0091f1c02 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.podtemplate.go +++ b/pkg/client/listers/core/internalversion/podtemplate.go @@ -31,6 +31,7 @@ type PodTemplateLister interface { List(selector labels.Selector) (ret []*api.PodTemplate, err error) // PodTemplates returns an object that can list and get PodTemplates. PodTemplates(namespace string) PodTemplateNamespaceLister + PodTemplateListerExpansion } // podTemplateLister implements the PodTemplateLister interface. @@ -62,6 +63,7 @@ type PodTemplateNamespaceLister interface { List(selector labels.Selector) (ret []*api.PodTemplate, err error) // Get retrieves the PodTemplate from the indexer for a given namespace and name. Get(name string) (*api.PodTemplate, error) + PodTemplateNamespaceListerExpansion } // podTemplateNamespaceLister implements the PodTemplateNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.replicationcontroller.go b/pkg/client/listers/core/internalversion/replicationcontroller.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.replicationcontroller.go rename to pkg/client/listers/core/internalversion/replicationcontroller.go index 0827194c241..c9b475bd14c 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.replicationcontroller.go +++ b/pkg/client/listers/core/internalversion/replicationcontroller.go @@ -31,6 +31,7 @@ type ReplicationControllerLister interface { List(selector labels.Selector) (ret []*api.ReplicationController, err error) // ReplicationControllers returns an object that can list and get ReplicationControllers. ReplicationControllers(namespace string) ReplicationControllerNamespaceLister + ReplicationControllerListerExpansion } // replicationControllerLister implements the ReplicationControllerLister interface. @@ -62,6 +63,7 @@ type ReplicationControllerNamespaceLister interface { List(selector labels.Selector) (ret []*api.ReplicationController, err error) // Get retrieves the ReplicationController from the indexer for a given namespace and name. Get(name string) (*api.ReplicationController, error) + ReplicationControllerNamespaceListerExpansion } // replicationControllerNamespaceLister implements the ReplicationControllerNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.resourcequota.go b/pkg/client/listers/core/internalversion/resourcequota.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.resourcequota.go rename to pkg/client/listers/core/internalversion/resourcequota.go index 341aa873c3c..3d6ed077c67 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.resourcequota.go +++ b/pkg/client/listers/core/internalversion/resourcequota.go @@ -31,6 +31,7 @@ type ResourceQuotaLister interface { List(selector labels.Selector) (ret []*api.ResourceQuota, err error) // ResourceQuotas returns an object that can list and get ResourceQuotas. ResourceQuotas(namespace string) ResourceQuotaNamespaceLister + ResourceQuotaListerExpansion } // resourceQuotaLister implements the ResourceQuotaLister interface. @@ -62,6 +63,7 @@ type ResourceQuotaNamespaceLister interface { List(selector labels.Selector) (ret []*api.ResourceQuota, err error) // Get retrieves the ResourceQuota from the indexer for a given namespace and name. Get(name string) (*api.ResourceQuota, error) + ResourceQuotaNamespaceListerExpansion } // resourceQuotaNamespaceLister implements the ResourceQuotaNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.secret.go b/pkg/client/listers/core/internalversion/secret.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.secret.go rename to pkg/client/listers/core/internalversion/secret.go index 5b0c252f1ff..cc6563fbabd 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.secret.go +++ b/pkg/client/listers/core/internalversion/secret.go @@ -31,6 +31,7 @@ type SecretLister interface { List(selector labels.Selector) (ret []*api.Secret, err error) // Secrets returns an object that can list and get Secrets. Secrets(namespace string) SecretNamespaceLister + SecretListerExpansion } // secretLister implements the SecretLister interface. @@ -62,6 +63,7 @@ type SecretNamespaceLister interface { List(selector labels.Selector) (ret []*api.Secret, err error) // Get retrieves the Secret from the indexer for a given namespace and name. Get(name string) (*api.Secret, error) + SecretNamespaceListerExpansion } // secretNamespaceLister implements the SecretNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.service.go b/pkg/client/listers/core/internalversion/service.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.service.go rename to pkg/client/listers/core/internalversion/service.go index 9138402bf05..2c0e69408e1 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.service.go +++ b/pkg/client/listers/core/internalversion/service.go @@ -31,6 +31,7 @@ type ServiceLister interface { List(selector labels.Selector) (ret []*api.Service, err error) // Services returns an object that can list and get Services. Services(namespace string) ServiceNamespaceLister + ServiceListerExpansion } // serviceLister implements the ServiceLister interface. @@ -62,6 +63,7 @@ type ServiceNamespaceLister interface { List(selector labels.Selector) (ret []*api.Service, err error) // Get retrieves the Service from the indexer for a given namespace and name. Get(name string) (*api.Service, error) + ServiceNamespaceListerExpansion } // serviceNamespaceLister implements the ServiceNamespaceLister diff --git a/pkg/client/listers/core/internalversion/zz_generated.serviceaccount.go b/pkg/client/listers/core/internalversion/serviceaccount.go similarity index 98% rename from pkg/client/listers/core/internalversion/zz_generated.serviceaccount.go rename to pkg/client/listers/core/internalversion/serviceaccount.go index e2e6d306439..91c700d1381 100644 --- a/pkg/client/listers/core/internalversion/zz_generated.serviceaccount.go +++ b/pkg/client/listers/core/internalversion/serviceaccount.go @@ -31,6 +31,7 @@ type ServiceAccountLister interface { List(selector labels.Selector) (ret []*api.ServiceAccount, err error) // ServiceAccounts returns an object that can list and get ServiceAccounts. ServiceAccounts(namespace string) ServiceAccountNamespaceLister + ServiceAccountListerExpansion } // serviceAccountLister implements the ServiceAccountLister interface. @@ -62,6 +63,7 @@ type ServiceAccountNamespaceLister interface { List(selector labels.Selector) (ret []*api.ServiceAccount, err error) // Get retrieves the ServiceAccount from the indexer for a given namespace and name. Get(name string) (*api.ServiceAccount, error) + ServiceAccountNamespaceListerExpansion } // serviceAccountNamespaceLister implements the ServiceAccountNamespaceLister diff --git a/pkg/client/listers/core/v1/BUILD b/pkg/client/listers/core/v1/BUILD index 9fdb961b74d..8b1e4ab2b37 100644 --- a/pkg/client/listers/core/v1/BUILD +++ b/pkg/client/listers/core/v1/BUILD @@ -13,22 +13,23 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.componentstatus.go", - "zz_generated.configmap.go", - "zz_generated.endpoints.go", - "zz_generated.event.go", - "zz_generated.limitrange.go", - "zz_generated.namespace.go", - "zz_generated.node.go", - "zz_generated.persistentvolume.go", - "zz_generated.persistentvolumeclaim.go", - "zz_generated.pod.go", - "zz_generated.podtemplate.go", - "zz_generated.replicationcontroller.go", - "zz_generated.resourcequota.go", - "zz_generated.secret.go", - "zz_generated.service.go", - "zz_generated.serviceaccount.go", + "componentstatus.go", + "configmap.go", + "endpoints.go", + "event.go", + "expansion_generated.go", + "limitrange.go", + "namespace.go", + "node.go", + "persistentvolume.go", + "persistentvolumeclaim.go", + "pod.go", + "podtemplate.go", + "replicationcontroller.go", + "resourcequota.go", + "secret.go", + "service.go", + "serviceaccount.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/core/v1/zz_generated.componentstatus.go b/pkg/client/listers/core/v1/componentstatus.go similarity index 99% rename from pkg/client/listers/core/v1/zz_generated.componentstatus.go rename to pkg/client/listers/core/v1/componentstatus.go index 3f5f7a5815b..02e656aaacf 100644 --- a/pkg/client/listers/core/v1/zz_generated.componentstatus.go +++ b/pkg/client/listers/core/v1/componentstatus.go @@ -32,6 +32,7 @@ type ComponentStatusLister interface { List(selector labels.Selector) (ret []*v1.ComponentStatus, err error) // Get retrieves the ComponentStatus from the index for a given name. Get(name string) (*v1.ComponentStatus, error) + ComponentStatusListerExpansion } // componentStatusLister implements the ComponentStatusLister interface. diff --git a/pkg/client/listers/core/v1/zz_generated.configmap.go b/pkg/client/listers/core/v1/configmap.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.configmap.go rename to pkg/client/listers/core/v1/configmap.go index f3fd21e0b74..343ecb32c23 100644 --- a/pkg/client/listers/core/v1/zz_generated.configmap.go +++ b/pkg/client/listers/core/v1/configmap.go @@ -32,6 +32,7 @@ type ConfigMapLister interface { List(selector labels.Selector) (ret []*v1.ConfigMap, err error) // ConfigMaps returns an object that can list and get ConfigMaps. ConfigMaps(namespace string) ConfigMapNamespaceLister + ConfigMapListerExpansion } // configMapLister implements the ConfigMapLister interface. @@ -63,6 +64,7 @@ type ConfigMapNamespaceLister interface { List(selector labels.Selector) (ret []*v1.ConfigMap, err error) // Get retrieves the ConfigMap from the indexer for a given namespace and name. Get(name string) (*v1.ConfigMap, error) + ConfigMapNamespaceListerExpansion } // configMapNamespaceLister implements the ConfigMapNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.endpoints.go b/pkg/client/listers/core/v1/endpoints.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.endpoints.go rename to pkg/client/listers/core/v1/endpoints.go index 96f932028a7..f19326eed07 100644 --- a/pkg/client/listers/core/v1/zz_generated.endpoints.go +++ b/pkg/client/listers/core/v1/endpoints.go @@ -32,6 +32,7 @@ type EndpointsLister interface { List(selector labels.Selector) (ret []*v1.Endpoints, err error) // Endpoints returns an object that can list and get Endpoints. Endpoints(namespace string) EndpointsNamespaceLister + EndpointsListerExpansion } // endpointsLister implements the EndpointsLister interface. @@ -63,6 +64,7 @@ type EndpointsNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Endpoints, err error) // Get retrieves the Endpoints from the indexer for a given namespace and name. Get(name string) (*v1.Endpoints, error) + EndpointsNamespaceListerExpansion } // endpointsNamespaceLister implements the EndpointsNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.event.go b/pkg/client/listers/core/v1/event.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.event.go rename to pkg/client/listers/core/v1/event.go index ee2ad15a05e..93a5b4959d3 100644 --- a/pkg/client/listers/core/v1/zz_generated.event.go +++ b/pkg/client/listers/core/v1/event.go @@ -32,6 +32,7 @@ type EventLister interface { List(selector labels.Selector) (ret []*v1.Event, err error) // Events returns an object that can list and get Events. Events(namespace string) EventNamespaceLister + EventListerExpansion } // eventLister implements the EventLister interface. @@ -63,6 +64,7 @@ type EventNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Event, err error) // Get retrieves the Event from the indexer for a given namespace and name. Get(name string) (*v1.Event, error) + EventNamespaceListerExpansion } // eventNamespaceLister implements the EventNamespaceLister diff --git a/pkg/client/listers/core/v1/expansion_generated.go b/pkg/client/listers/core/v1/expansion_generated.go new file mode 100644 index 00000000000..fa8b872e3cb --- /dev/null +++ b/pkg/client/listers/core/v1/expansion_generated.go @@ -0,0 +1,131 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1 + +// ComponentStatusListerExpansion allows custom methods to be added to +// ComponentStatusLister. +type ComponentStatusListerExpansion interface{} + +// ConfigMapListerExpansion allows custom methods to be added to +// ConfigMapLister. +type ConfigMapListerExpansion interface{} + +// ConfigMapNamespaceListerExpansion allows custom methods to be added to +// ConfigMapNamespaeLister. +type ConfigMapNamespaceListerExpansion interface{} + +// EndpointsListerExpansion allows custom methods to be added to +// EndpointsLister. +type EndpointsListerExpansion interface{} + +// EndpointsNamespaceListerExpansion allows custom methods to be added to +// EndpointsNamespaeLister. +type EndpointsNamespaceListerExpansion interface{} + +// EventListerExpansion allows custom methods to be added to +// EventLister. +type EventListerExpansion interface{} + +// EventNamespaceListerExpansion allows custom methods to be added to +// EventNamespaeLister. +type EventNamespaceListerExpansion interface{} + +// LimitRangeListerExpansion allows custom methods to be added to +// LimitRangeLister. +type LimitRangeListerExpansion interface{} + +// LimitRangeNamespaceListerExpansion allows custom methods to be added to +// LimitRangeNamespaeLister. +type LimitRangeNamespaceListerExpansion interface{} + +// NamespaceListerExpansion allows custom methods to be added to +// NamespaceLister. +type NamespaceListerExpansion interface{} + +// NodeListerExpansion allows custom methods to be added to +// NodeLister. +type NodeListerExpansion interface{} + +// PersistentVolumeListerExpansion allows custom methods to be added to +// PersistentVolumeLister. +type PersistentVolumeListerExpansion interface{} + +// PersistentVolumeClaimListerExpansion allows custom methods to be added to +// PersistentVolumeClaimLister. +type PersistentVolumeClaimListerExpansion interface{} + +// PersistentVolumeClaimNamespaceListerExpansion allows custom methods to be added to +// PersistentVolumeClaimNamespaeLister. +type PersistentVolumeClaimNamespaceListerExpansion interface{} + +// PodListerExpansion allows custom methods to be added to +// PodLister. +type PodListerExpansion interface{} + +// PodNamespaceListerExpansion allows custom methods to be added to +// PodNamespaeLister. +type PodNamespaceListerExpansion interface{} + +// PodTemplateListerExpansion allows custom methods to be added to +// PodTemplateLister. +type PodTemplateListerExpansion interface{} + +// PodTemplateNamespaceListerExpansion allows custom methods to be added to +// PodTemplateNamespaeLister. +type PodTemplateNamespaceListerExpansion interface{} + +// ReplicationControllerListerExpansion allows custom methods to be added to +// ReplicationControllerLister. +type ReplicationControllerListerExpansion interface{} + +// ReplicationControllerNamespaceListerExpansion allows custom methods to be added to +// ReplicationControllerNamespaeLister. +type ReplicationControllerNamespaceListerExpansion interface{} + +// ResourceQuotaListerExpansion allows custom methods to be added to +// ResourceQuotaLister. +type ResourceQuotaListerExpansion interface{} + +// ResourceQuotaNamespaceListerExpansion allows custom methods to be added to +// ResourceQuotaNamespaeLister. +type ResourceQuotaNamespaceListerExpansion interface{} + +// SecretListerExpansion allows custom methods to be added to +// SecretLister. +type SecretListerExpansion interface{} + +// SecretNamespaceListerExpansion allows custom methods to be added to +// SecretNamespaeLister. +type SecretNamespaceListerExpansion interface{} + +// ServiceListerExpansion allows custom methods to be added to +// ServiceLister. +type ServiceListerExpansion interface{} + +// ServiceNamespaceListerExpansion allows custom methods to be added to +// ServiceNamespaeLister. +type ServiceNamespaceListerExpansion interface{} + +// ServiceAccountListerExpansion allows custom methods to be added to +// ServiceAccountLister. +type ServiceAccountListerExpansion interface{} + +// ServiceAccountNamespaceListerExpansion allows custom methods to be added to +// ServiceAccountNamespaeLister. +type ServiceAccountNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/core/v1/zz_generated.limitrange.go b/pkg/client/listers/core/v1/limitrange.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.limitrange.go rename to pkg/client/listers/core/v1/limitrange.go index f13ac1f25b8..fa1e3582fcc 100644 --- a/pkg/client/listers/core/v1/zz_generated.limitrange.go +++ b/pkg/client/listers/core/v1/limitrange.go @@ -32,6 +32,7 @@ type LimitRangeLister interface { List(selector labels.Selector) (ret []*v1.LimitRange, err error) // LimitRanges returns an object that can list and get LimitRanges. LimitRanges(namespace string) LimitRangeNamespaceLister + LimitRangeListerExpansion } // limitRangeLister implements the LimitRangeLister interface. @@ -63,6 +64,7 @@ type LimitRangeNamespaceLister interface { List(selector labels.Selector) (ret []*v1.LimitRange, err error) // Get retrieves the LimitRange from the indexer for a given namespace and name. Get(name string) (*v1.LimitRange, error) + LimitRangeNamespaceListerExpansion } // limitRangeNamespaceLister implements the LimitRangeNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.namespace.go b/pkg/client/listers/core/v1/namespace.go similarity index 99% rename from pkg/client/listers/core/v1/zz_generated.namespace.go rename to pkg/client/listers/core/v1/namespace.go index 6b7f8d491ce..85fbc985ce2 100644 --- a/pkg/client/listers/core/v1/zz_generated.namespace.go +++ b/pkg/client/listers/core/v1/namespace.go @@ -32,6 +32,7 @@ type NamespaceLister interface { List(selector labels.Selector) (ret []*v1.Namespace, err error) // Get retrieves the Namespace from the index for a given name. Get(name string) (*v1.Namespace, error) + NamespaceListerExpansion } // namespaceLister implements the NamespaceLister interface. diff --git a/pkg/client/listers/core/v1/zz_generated.node.go b/pkg/client/listers/core/v1/node.go similarity index 99% rename from pkg/client/listers/core/v1/zz_generated.node.go rename to pkg/client/listers/core/v1/node.go index 3f8fe1c040e..85bb71fecd7 100644 --- a/pkg/client/listers/core/v1/zz_generated.node.go +++ b/pkg/client/listers/core/v1/node.go @@ -32,6 +32,7 @@ type NodeLister interface { List(selector labels.Selector) (ret []*v1.Node, err error) // Get retrieves the Node from the index for a given name. Get(name string) (*v1.Node, error) + NodeListerExpansion } // nodeLister implements the NodeLister interface. diff --git a/pkg/client/listers/core/v1/zz_generated.persistentvolume.go b/pkg/client/listers/core/v1/persistentvolume.go similarity index 99% rename from pkg/client/listers/core/v1/zz_generated.persistentvolume.go rename to pkg/client/listers/core/v1/persistentvolume.go index 12d52f67f7f..3a1e63bd56c 100644 --- a/pkg/client/listers/core/v1/zz_generated.persistentvolume.go +++ b/pkg/client/listers/core/v1/persistentvolume.go @@ -32,6 +32,7 @@ type PersistentVolumeLister interface { List(selector labels.Selector) (ret []*v1.PersistentVolume, err error) // Get retrieves the PersistentVolume from the index for a given name. Get(name string) (*v1.PersistentVolume, error) + PersistentVolumeListerExpansion } // persistentVolumeLister implements the PersistentVolumeLister interface. diff --git a/pkg/client/listers/core/v1/zz_generated.persistentvolumeclaim.go b/pkg/client/listers/core/v1/persistentvolumeclaim.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.persistentvolumeclaim.go rename to pkg/client/listers/core/v1/persistentvolumeclaim.go index fe1568f520a..08fc4928b1c 100644 --- a/pkg/client/listers/core/v1/zz_generated.persistentvolumeclaim.go +++ b/pkg/client/listers/core/v1/persistentvolumeclaim.go @@ -32,6 +32,7 @@ type PersistentVolumeClaimLister interface { List(selector labels.Selector) (ret []*v1.PersistentVolumeClaim, err error) // PersistentVolumeClaims returns an object that can list and get PersistentVolumeClaims. PersistentVolumeClaims(namespace string) PersistentVolumeClaimNamespaceLister + PersistentVolumeClaimListerExpansion } // persistentVolumeClaimLister implements the PersistentVolumeClaimLister interface. @@ -63,6 +64,7 @@ type PersistentVolumeClaimNamespaceLister interface { List(selector labels.Selector) (ret []*v1.PersistentVolumeClaim, err error) // Get retrieves the PersistentVolumeClaim from the indexer for a given namespace and name. Get(name string) (*v1.PersistentVolumeClaim, error) + PersistentVolumeClaimNamespaceListerExpansion } // persistentVolumeClaimNamespaceLister implements the PersistentVolumeClaimNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.pod.go b/pkg/client/listers/core/v1/pod.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.pod.go rename to pkg/client/listers/core/v1/pod.go index a88d83d8662..34c387a6c66 100644 --- a/pkg/client/listers/core/v1/zz_generated.pod.go +++ b/pkg/client/listers/core/v1/pod.go @@ -32,6 +32,7 @@ type PodLister interface { List(selector labels.Selector) (ret []*v1.Pod, err error) // Pods returns an object that can list and get Pods. Pods(namespace string) PodNamespaceLister + PodListerExpansion } // podLister implements the PodLister interface. @@ -63,6 +64,7 @@ type PodNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Pod, err error) // Get retrieves the Pod from the indexer for a given namespace and name. Get(name string) (*v1.Pod, error) + PodNamespaceListerExpansion } // podNamespaceLister implements the PodNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.podtemplate.go b/pkg/client/listers/core/v1/podtemplate.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.podtemplate.go rename to pkg/client/listers/core/v1/podtemplate.go index f30fd8f96a7..8583b26ad19 100644 --- a/pkg/client/listers/core/v1/zz_generated.podtemplate.go +++ b/pkg/client/listers/core/v1/podtemplate.go @@ -32,6 +32,7 @@ type PodTemplateLister interface { List(selector labels.Selector) (ret []*v1.PodTemplate, err error) // PodTemplates returns an object that can list and get PodTemplates. PodTemplates(namespace string) PodTemplateNamespaceLister + PodTemplateListerExpansion } // podTemplateLister implements the PodTemplateLister interface. @@ -63,6 +64,7 @@ type PodTemplateNamespaceLister interface { List(selector labels.Selector) (ret []*v1.PodTemplate, err error) // Get retrieves the PodTemplate from the indexer for a given namespace and name. Get(name string) (*v1.PodTemplate, error) + PodTemplateNamespaceListerExpansion } // podTemplateNamespaceLister implements the PodTemplateNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.replicationcontroller.go b/pkg/client/listers/core/v1/replicationcontroller.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.replicationcontroller.go rename to pkg/client/listers/core/v1/replicationcontroller.go index 620eadea9ac..83c8e7b0d17 100644 --- a/pkg/client/listers/core/v1/zz_generated.replicationcontroller.go +++ b/pkg/client/listers/core/v1/replicationcontroller.go @@ -32,6 +32,7 @@ type ReplicationControllerLister interface { List(selector labels.Selector) (ret []*v1.ReplicationController, err error) // ReplicationControllers returns an object that can list and get ReplicationControllers. ReplicationControllers(namespace string) ReplicationControllerNamespaceLister + ReplicationControllerListerExpansion } // replicationControllerLister implements the ReplicationControllerLister interface. @@ -63,6 +64,7 @@ type ReplicationControllerNamespaceLister interface { List(selector labels.Selector) (ret []*v1.ReplicationController, err error) // Get retrieves the ReplicationController from the indexer for a given namespace and name. Get(name string) (*v1.ReplicationController, error) + ReplicationControllerNamespaceListerExpansion } // replicationControllerNamespaceLister implements the ReplicationControllerNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.resourcequota.go b/pkg/client/listers/core/v1/resourcequota.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.resourcequota.go rename to pkg/client/listers/core/v1/resourcequota.go index 4fca2aa281b..a0f34d1540a 100644 --- a/pkg/client/listers/core/v1/zz_generated.resourcequota.go +++ b/pkg/client/listers/core/v1/resourcequota.go @@ -32,6 +32,7 @@ type ResourceQuotaLister interface { List(selector labels.Selector) (ret []*v1.ResourceQuota, err error) // ResourceQuotas returns an object that can list and get ResourceQuotas. ResourceQuotas(namespace string) ResourceQuotaNamespaceLister + ResourceQuotaListerExpansion } // resourceQuotaLister implements the ResourceQuotaLister interface. @@ -63,6 +64,7 @@ type ResourceQuotaNamespaceLister interface { List(selector labels.Selector) (ret []*v1.ResourceQuota, err error) // Get retrieves the ResourceQuota from the indexer for a given namespace and name. Get(name string) (*v1.ResourceQuota, error) + ResourceQuotaNamespaceListerExpansion } // resourceQuotaNamespaceLister implements the ResourceQuotaNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.secret.go b/pkg/client/listers/core/v1/secret.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.secret.go rename to pkg/client/listers/core/v1/secret.go index 1937d0bb04f..c57872538ec 100644 --- a/pkg/client/listers/core/v1/zz_generated.secret.go +++ b/pkg/client/listers/core/v1/secret.go @@ -32,6 +32,7 @@ type SecretLister interface { List(selector labels.Selector) (ret []*v1.Secret, err error) // Secrets returns an object that can list and get Secrets. Secrets(namespace string) SecretNamespaceLister + SecretListerExpansion } // secretLister implements the SecretLister interface. @@ -63,6 +64,7 @@ type SecretNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Secret, err error) // Get retrieves the Secret from the indexer for a given namespace and name. Get(name string) (*v1.Secret, error) + SecretNamespaceListerExpansion } // secretNamespaceLister implements the SecretNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.service.go b/pkg/client/listers/core/v1/service.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.service.go rename to pkg/client/listers/core/v1/service.go index 764d98f05c1..77e8795a459 100644 --- a/pkg/client/listers/core/v1/zz_generated.service.go +++ b/pkg/client/listers/core/v1/service.go @@ -32,6 +32,7 @@ type ServiceLister interface { List(selector labels.Selector) (ret []*v1.Service, err error) // Services returns an object that can list and get Services. Services(namespace string) ServiceNamespaceLister + ServiceListerExpansion } // serviceLister implements the ServiceLister interface. @@ -63,6 +64,7 @@ type ServiceNamespaceLister interface { List(selector labels.Selector) (ret []*v1.Service, err error) // Get retrieves the Service from the indexer for a given namespace and name. Get(name string) (*v1.Service, error) + ServiceNamespaceListerExpansion } // serviceNamespaceLister implements the ServiceNamespaceLister diff --git a/pkg/client/listers/core/v1/zz_generated.serviceaccount.go b/pkg/client/listers/core/v1/serviceaccount.go similarity index 98% rename from pkg/client/listers/core/v1/zz_generated.serviceaccount.go rename to pkg/client/listers/core/v1/serviceaccount.go index bb1169b076e..5128b089a26 100644 --- a/pkg/client/listers/core/v1/zz_generated.serviceaccount.go +++ b/pkg/client/listers/core/v1/serviceaccount.go @@ -32,6 +32,7 @@ type ServiceAccountLister interface { List(selector labels.Selector) (ret []*v1.ServiceAccount, err error) // ServiceAccounts returns an object that can list and get ServiceAccounts. ServiceAccounts(namespace string) ServiceAccountNamespaceLister + ServiceAccountListerExpansion } // serviceAccountLister implements the ServiceAccountLister interface. @@ -63,6 +64,7 @@ type ServiceAccountNamespaceLister interface { List(selector labels.Selector) (ret []*v1.ServiceAccount, err error) // Get retrieves the ServiceAccount from the indexer for a given namespace and name. Get(name string) (*v1.ServiceAccount, error) + ServiceAccountNamespaceListerExpansion } // serviceAccountNamespaceLister implements the ServiceAccountNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/BUILD b/pkg/client/listers/extensions/internalversion/BUILD index 13ed4031362..82106c64ee8 100644 --- a/pkg/client/listers/extensions/internalversion/BUILD +++ b/pkg/client/listers/extensions/internalversion/BUILD @@ -13,14 +13,15 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.daemonset.go", - "zz_generated.deployment.go", - "zz_generated.ingress.go", - "zz_generated.networkpolicy.go", - "zz_generated.podsecuritypolicy.go", - "zz_generated.replicaset.go", - "zz_generated.scale.go", - "zz_generated.thirdpartyresource.go", + "daemonset.go", + "deployment.go", + "expansion_generated.go", + "ingress.go", + "networkpolicy.go", + "podsecuritypolicy.go", + "replicaset.go", + "scale.go", + "thirdpartyresource.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.daemonset.go b/pkg/client/listers/extensions/internalversion/daemonset.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.daemonset.go rename to pkg/client/listers/extensions/internalversion/daemonset.go index f77daf0f237..9911980bdf4 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.daemonset.go +++ b/pkg/client/listers/extensions/internalversion/daemonset.go @@ -31,6 +31,7 @@ type DaemonSetLister interface { List(selector labels.Selector) (ret []*extensions.DaemonSet, err error) // DaemonSets returns an object that can list and get DaemonSets. DaemonSets(namespace string) DaemonSetNamespaceLister + DaemonSetListerExpansion } // daemonSetLister implements the DaemonSetLister interface. @@ -62,6 +63,7 @@ type DaemonSetNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.DaemonSet, err error) // Get retrieves the DaemonSet from the indexer for a given namespace and name. Get(name string) (*extensions.DaemonSet, error) + DaemonSetNamespaceListerExpansion } // daemonSetNamespaceLister implements the DaemonSetNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.deployment.go b/pkg/client/listers/extensions/internalversion/deployment.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.deployment.go rename to pkg/client/listers/extensions/internalversion/deployment.go index e35123620cf..fff232a4a71 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.deployment.go +++ b/pkg/client/listers/extensions/internalversion/deployment.go @@ -31,6 +31,7 @@ type DeploymentLister interface { List(selector labels.Selector) (ret []*extensions.Deployment, err error) // Deployments returns an object that can list and get Deployments. Deployments(namespace string) DeploymentNamespaceLister + DeploymentListerExpansion } // deploymentLister implements the DeploymentLister interface. @@ -62,6 +63,7 @@ type DeploymentNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.Deployment, err error) // Get retrieves the Deployment from the indexer for a given namespace and name. Get(name string) (*extensions.Deployment, error) + DeploymentNamespaceListerExpansion } // deploymentNamespaceLister implements the DeploymentNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/expansion_generated.go b/pkg/client/listers/extensions/internalversion/expansion_generated.go new file mode 100644 index 00000000000..35565e2a28c --- /dev/null +++ b/pkg/client/listers/extensions/internalversion/expansion_generated.go @@ -0,0 +1,75 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// DaemonSetListerExpansion allows custom methods to be added to +// DaemonSetLister. +type DaemonSetListerExpansion interface{} + +// DaemonSetNamespaceListerExpansion allows custom methods to be added to +// DaemonSetNamespaeLister. +type DaemonSetNamespaceListerExpansion interface{} + +// DeploymentListerExpansion allows custom methods to be added to +// DeploymentLister. +type DeploymentListerExpansion interface{} + +// DeploymentNamespaceListerExpansion allows custom methods to be added to +// DeploymentNamespaeLister. +type DeploymentNamespaceListerExpansion interface{} + +// IngressListerExpansion allows custom methods to be added to +// IngressLister. +type IngressListerExpansion interface{} + +// IngressNamespaceListerExpansion allows custom methods to be added to +// IngressNamespaeLister. +type IngressNamespaceListerExpansion interface{} + +// NetworkPolicyListerExpansion allows custom methods to be added to +// NetworkPolicyLister. +type NetworkPolicyListerExpansion interface{} + +// NetworkPolicyNamespaceListerExpansion allows custom methods to be added to +// NetworkPolicyNamespaeLister. +type NetworkPolicyNamespaceListerExpansion interface{} + +// PodSecurityPolicyListerExpansion allows custom methods to be added to +// PodSecurityPolicyLister. +type PodSecurityPolicyListerExpansion interface{} + +// ReplicaSetListerExpansion allows custom methods to be added to +// ReplicaSetLister. +type ReplicaSetListerExpansion interface{} + +// ReplicaSetNamespaceListerExpansion allows custom methods to be added to +// ReplicaSetNamespaeLister. +type ReplicaSetNamespaceListerExpansion interface{} + +// ScaleListerExpansion allows custom methods to be added to +// ScaleLister. +type ScaleListerExpansion interface{} + +// ScaleNamespaceListerExpansion allows custom methods to be added to +// ScaleNamespaeLister. +type ScaleNamespaceListerExpansion interface{} + +// ThirdPartyResourceListerExpansion allows custom methods to be added to +// ThirdPartyResourceLister. +type ThirdPartyResourceListerExpansion interface{} diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.ingress.go b/pkg/client/listers/extensions/internalversion/ingress.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.ingress.go rename to pkg/client/listers/extensions/internalversion/ingress.go index cb4f05eabaa..c71fd3fe212 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.ingress.go +++ b/pkg/client/listers/extensions/internalversion/ingress.go @@ -31,6 +31,7 @@ type IngressLister interface { List(selector labels.Selector) (ret []*extensions.Ingress, err error) // Ingresses returns an object that can list and get Ingresses. Ingresses(namespace string) IngressNamespaceLister + IngressListerExpansion } // ingressLister implements the IngressLister interface. @@ -62,6 +63,7 @@ type IngressNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.Ingress, err error) // Get retrieves the Ingress from the indexer for a given namespace and name. Get(name string) (*extensions.Ingress, error) + IngressNamespaceListerExpansion } // ingressNamespaceLister implements the IngressNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.networkpolicy.go b/pkg/client/listers/extensions/internalversion/networkpolicy.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.networkpolicy.go rename to pkg/client/listers/extensions/internalversion/networkpolicy.go index 11293fc650b..bf81b258710 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.networkpolicy.go +++ b/pkg/client/listers/extensions/internalversion/networkpolicy.go @@ -31,6 +31,7 @@ type NetworkPolicyLister interface { List(selector labels.Selector) (ret []*extensions.NetworkPolicy, err error) // NetworkPolicies returns an object that can list and get NetworkPolicies. NetworkPolicies(namespace string) NetworkPolicyNamespaceLister + NetworkPolicyListerExpansion } // networkPolicyLister implements the NetworkPolicyLister interface. @@ -62,6 +63,7 @@ type NetworkPolicyNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.NetworkPolicy, err error) // Get retrieves the NetworkPolicy from the indexer for a given namespace and name. Get(name string) (*extensions.NetworkPolicy, error) + NetworkPolicyNamespaceListerExpansion } // networkPolicyNamespaceLister implements the NetworkPolicyNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.podsecuritypolicy.go b/pkg/client/listers/extensions/internalversion/podsecuritypolicy.go similarity index 99% rename from pkg/client/listers/extensions/internalversion/zz_generated.podsecuritypolicy.go rename to pkg/client/listers/extensions/internalversion/podsecuritypolicy.go index 1abff2a9798..894ad8c5aef 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.podsecuritypolicy.go +++ b/pkg/client/listers/extensions/internalversion/podsecuritypolicy.go @@ -32,6 +32,7 @@ type PodSecurityPolicyLister interface { List(selector labels.Selector) (ret []*extensions.PodSecurityPolicy, err error) // Get retrieves the PodSecurityPolicy from the index for a given name. Get(name string) (*extensions.PodSecurityPolicy, error) + PodSecurityPolicyListerExpansion } // podSecurityPolicyLister implements the PodSecurityPolicyLister interface. diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.replicaset.go b/pkg/client/listers/extensions/internalversion/replicaset.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.replicaset.go rename to pkg/client/listers/extensions/internalversion/replicaset.go index e0b1697922f..be321f90658 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.replicaset.go +++ b/pkg/client/listers/extensions/internalversion/replicaset.go @@ -31,6 +31,7 @@ type ReplicaSetLister interface { List(selector labels.Selector) (ret []*extensions.ReplicaSet, err error) // ReplicaSets returns an object that can list and get ReplicaSets. ReplicaSets(namespace string) ReplicaSetNamespaceLister + ReplicaSetListerExpansion } // replicaSetLister implements the ReplicaSetLister interface. @@ -62,6 +63,7 @@ type ReplicaSetNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.ReplicaSet, err error) // Get retrieves the ReplicaSet from the indexer for a given namespace and name. Get(name string) (*extensions.ReplicaSet, error) + ReplicaSetNamespaceListerExpansion } // replicaSetNamespaceLister implements the ReplicaSetNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.scale.go b/pkg/client/listers/extensions/internalversion/scale.go similarity index 98% rename from pkg/client/listers/extensions/internalversion/zz_generated.scale.go rename to pkg/client/listers/extensions/internalversion/scale.go index 5090901da72..61b6cafff80 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.scale.go +++ b/pkg/client/listers/extensions/internalversion/scale.go @@ -31,6 +31,7 @@ type ScaleLister interface { List(selector labels.Selector) (ret []*extensions.Scale, err error) // Scales returns an object that can list and get Scales. Scales(namespace string) ScaleNamespaceLister + ScaleListerExpansion } // scaleLister implements the ScaleLister interface. @@ -62,6 +63,7 @@ type ScaleNamespaceLister interface { List(selector labels.Selector) (ret []*extensions.Scale, err error) // Get retrieves the Scale from the indexer for a given namespace and name. Get(name string) (*extensions.Scale, error) + ScaleNamespaceListerExpansion } // scaleNamespaceLister implements the ScaleNamespaceLister diff --git a/pkg/client/listers/extensions/internalversion/zz_generated.thirdpartyresource.go b/pkg/client/listers/extensions/internalversion/thirdpartyresource.go similarity index 99% rename from pkg/client/listers/extensions/internalversion/zz_generated.thirdpartyresource.go rename to pkg/client/listers/extensions/internalversion/thirdpartyresource.go index ddf084f0023..8898100fb83 100644 --- a/pkg/client/listers/extensions/internalversion/zz_generated.thirdpartyresource.go +++ b/pkg/client/listers/extensions/internalversion/thirdpartyresource.go @@ -32,6 +32,7 @@ type ThirdPartyResourceLister interface { List(selector labels.Selector) (ret []*extensions.ThirdPartyResource, err error) // Get retrieves the ThirdPartyResource from the index for a given name. Get(name string) (*extensions.ThirdPartyResource, error) + ThirdPartyResourceListerExpansion } // thirdPartyResourceLister implements the ThirdPartyResourceLister interface. diff --git a/pkg/client/listers/extensions/v1beta1/BUILD b/pkg/client/listers/extensions/v1beta1/BUILD index 8899e9e99d6..c40dcfdb45e 100644 --- a/pkg/client/listers/extensions/v1beta1/BUILD +++ b/pkg/client/listers/extensions/v1beta1/BUILD @@ -13,14 +13,15 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.daemonset.go", - "zz_generated.deployment.go", - "zz_generated.ingress.go", - "zz_generated.job.go", - "zz_generated.podsecuritypolicy.go", - "zz_generated.replicaset.go", - "zz_generated.scale.go", - "zz_generated.thirdpartyresource.go", + "daemonset.go", + "deployment.go", + "expansion_generated.go", + "ingress.go", + "job.go", + "podsecuritypolicy.go", + "replicaset.go", + "scale.go", + "thirdpartyresource.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.daemonset.go b/pkg/client/listers/extensions/v1beta1/daemonset.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.daemonset.go rename to pkg/client/listers/extensions/v1beta1/daemonset.go index c4cd771f1f7..5183449d22e 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.daemonset.go +++ b/pkg/client/listers/extensions/v1beta1/daemonset.go @@ -32,6 +32,7 @@ type DaemonSetLister interface { List(selector labels.Selector) (ret []*v1beta1.DaemonSet, err error) // DaemonSets returns an object that can list and get DaemonSets. DaemonSets(namespace string) DaemonSetNamespaceLister + DaemonSetListerExpansion } // daemonSetLister implements the DaemonSetLister interface. @@ -63,6 +64,7 @@ type DaemonSetNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.DaemonSet, err error) // Get retrieves the DaemonSet from the indexer for a given namespace and name. Get(name string) (*v1beta1.DaemonSet, error) + DaemonSetNamespaceListerExpansion } // daemonSetNamespaceLister implements the DaemonSetNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.deployment.go b/pkg/client/listers/extensions/v1beta1/deployment.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.deployment.go rename to pkg/client/listers/extensions/v1beta1/deployment.go index 4fd0d1be149..332659fa0e2 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.deployment.go +++ b/pkg/client/listers/extensions/v1beta1/deployment.go @@ -32,6 +32,7 @@ type DeploymentLister interface { List(selector labels.Selector) (ret []*v1beta1.Deployment, err error) // Deployments returns an object that can list and get Deployments. Deployments(namespace string) DeploymentNamespaceLister + DeploymentListerExpansion } // deploymentLister implements the DeploymentLister interface. @@ -63,6 +64,7 @@ type DeploymentNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.Deployment, err error) // Get retrieves the Deployment from the indexer for a given namespace and name. Get(name string) (*v1beta1.Deployment, error) + DeploymentNamespaceListerExpansion } // deploymentNamespaceLister implements the DeploymentNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/expansion_generated.go b/pkg/client/listers/extensions/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..57a96bed233 --- /dev/null +++ b/pkg/client/listers/extensions/v1beta1/expansion_generated.go @@ -0,0 +1,75 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// DaemonSetListerExpansion allows custom methods to be added to +// DaemonSetLister. +type DaemonSetListerExpansion interface{} + +// DaemonSetNamespaceListerExpansion allows custom methods to be added to +// DaemonSetNamespaeLister. +type DaemonSetNamespaceListerExpansion interface{} + +// DeploymentListerExpansion allows custom methods to be added to +// DeploymentLister. +type DeploymentListerExpansion interface{} + +// DeploymentNamespaceListerExpansion allows custom methods to be added to +// DeploymentNamespaeLister. +type DeploymentNamespaceListerExpansion interface{} + +// IngressListerExpansion allows custom methods to be added to +// IngressLister. +type IngressListerExpansion interface{} + +// IngressNamespaceListerExpansion allows custom methods to be added to +// IngressNamespaeLister. +type IngressNamespaceListerExpansion interface{} + +// JobListerExpansion allows custom methods to be added to +// JobLister. +type JobListerExpansion interface{} + +// JobNamespaceListerExpansion allows custom methods to be added to +// JobNamespaeLister. +type JobNamespaceListerExpansion interface{} + +// PodSecurityPolicyListerExpansion allows custom methods to be added to +// PodSecurityPolicyLister. +type PodSecurityPolicyListerExpansion interface{} + +// ReplicaSetListerExpansion allows custom methods to be added to +// ReplicaSetLister. +type ReplicaSetListerExpansion interface{} + +// ReplicaSetNamespaceListerExpansion allows custom methods to be added to +// ReplicaSetNamespaeLister. +type ReplicaSetNamespaceListerExpansion interface{} + +// ScaleListerExpansion allows custom methods to be added to +// ScaleLister. +type ScaleListerExpansion interface{} + +// ScaleNamespaceListerExpansion allows custom methods to be added to +// ScaleNamespaeLister. +type ScaleNamespaceListerExpansion interface{} + +// ThirdPartyResourceListerExpansion allows custom methods to be added to +// ThirdPartyResourceLister. +type ThirdPartyResourceListerExpansion interface{} diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.ingress.go b/pkg/client/listers/extensions/v1beta1/ingress.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.ingress.go rename to pkg/client/listers/extensions/v1beta1/ingress.go index 618113e4f52..01009134a8f 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.ingress.go +++ b/pkg/client/listers/extensions/v1beta1/ingress.go @@ -32,6 +32,7 @@ type IngressLister interface { List(selector labels.Selector) (ret []*v1beta1.Ingress, err error) // Ingresses returns an object that can list and get Ingresses. Ingresses(namespace string) IngressNamespaceLister + IngressListerExpansion } // ingressLister implements the IngressLister interface. @@ -63,6 +64,7 @@ type IngressNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.Ingress, err error) // Get retrieves the Ingress from the indexer for a given namespace and name. Get(name string) (*v1beta1.Ingress, error) + IngressNamespaceListerExpansion } // ingressNamespaceLister implements the IngressNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.job.go b/pkg/client/listers/extensions/v1beta1/job.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.job.go rename to pkg/client/listers/extensions/v1beta1/job.go index 27fbf97e05a..25bc78f854b 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.job.go +++ b/pkg/client/listers/extensions/v1beta1/job.go @@ -32,6 +32,7 @@ type JobLister interface { List(selector labels.Selector) (ret []*v1beta1.Job, err error) // Jobs returns an object that can list and get Jobs. Jobs(namespace string) JobNamespaceLister + JobListerExpansion } // jobLister implements the JobLister interface. @@ -63,6 +64,7 @@ type JobNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.Job, err error) // Get retrieves the Job from the indexer for a given namespace and name. Get(name string) (*v1beta1.Job, error) + JobNamespaceListerExpansion } // jobNamespaceLister implements the JobNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.podsecuritypolicy.go b/pkg/client/listers/extensions/v1beta1/podsecuritypolicy.go similarity index 99% rename from pkg/client/listers/extensions/v1beta1/zz_generated.podsecuritypolicy.go rename to pkg/client/listers/extensions/v1beta1/podsecuritypolicy.go index e707bae6324..eadf28fcc56 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.podsecuritypolicy.go +++ b/pkg/client/listers/extensions/v1beta1/podsecuritypolicy.go @@ -33,6 +33,7 @@ type PodSecurityPolicyLister interface { List(selector labels.Selector) (ret []*v1beta1.PodSecurityPolicy, err error) // Get retrieves the PodSecurityPolicy from the index for a given name. Get(name string) (*v1beta1.PodSecurityPolicy, error) + PodSecurityPolicyListerExpansion } // podSecurityPolicyLister implements the PodSecurityPolicyLister interface. diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.replicaset.go b/pkg/client/listers/extensions/v1beta1/replicaset.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.replicaset.go rename to pkg/client/listers/extensions/v1beta1/replicaset.go index d0c406db5c3..9c82c3b3acf 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.replicaset.go +++ b/pkg/client/listers/extensions/v1beta1/replicaset.go @@ -32,6 +32,7 @@ type ReplicaSetLister interface { List(selector labels.Selector) (ret []*v1beta1.ReplicaSet, err error) // ReplicaSets returns an object that can list and get ReplicaSets. ReplicaSets(namespace string) ReplicaSetNamespaceLister + ReplicaSetListerExpansion } // replicaSetLister implements the ReplicaSetLister interface. @@ -63,6 +64,7 @@ type ReplicaSetNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.ReplicaSet, err error) // Get retrieves the ReplicaSet from the indexer for a given namespace and name. Get(name string) (*v1beta1.ReplicaSet, error) + ReplicaSetNamespaceListerExpansion } // replicaSetNamespaceLister implements the ReplicaSetNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.scale.go b/pkg/client/listers/extensions/v1beta1/scale.go similarity index 98% rename from pkg/client/listers/extensions/v1beta1/zz_generated.scale.go rename to pkg/client/listers/extensions/v1beta1/scale.go index 319c3634784..9045ab6148b 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.scale.go +++ b/pkg/client/listers/extensions/v1beta1/scale.go @@ -32,6 +32,7 @@ type ScaleLister interface { List(selector labels.Selector) (ret []*v1beta1.Scale, err error) // Scales returns an object that can list and get Scales. Scales(namespace string) ScaleNamespaceLister + ScaleListerExpansion } // scaleLister implements the ScaleLister interface. @@ -63,6 +64,7 @@ type ScaleNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.Scale, err error) // Get retrieves the Scale from the indexer for a given namespace and name. Get(name string) (*v1beta1.Scale, error) + ScaleNamespaceListerExpansion } // scaleNamespaceLister implements the ScaleNamespaceLister diff --git a/pkg/client/listers/extensions/v1beta1/zz_generated.thirdpartyresource.go b/pkg/client/listers/extensions/v1beta1/thirdpartyresource.go similarity index 99% rename from pkg/client/listers/extensions/v1beta1/zz_generated.thirdpartyresource.go rename to pkg/client/listers/extensions/v1beta1/thirdpartyresource.go index 992914b11e2..10a066a5579 100644 --- a/pkg/client/listers/extensions/v1beta1/zz_generated.thirdpartyresource.go +++ b/pkg/client/listers/extensions/v1beta1/thirdpartyresource.go @@ -33,6 +33,7 @@ type ThirdPartyResourceLister interface { List(selector labels.Selector) (ret []*v1beta1.ThirdPartyResource, err error) // Get retrieves the ThirdPartyResource from the index for a given name. Get(name string) (*v1beta1.ThirdPartyResource, error) + ThirdPartyResourceListerExpansion } // thirdPartyResourceLister implements the ThirdPartyResourceLister interface. diff --git a/pkg/client/listers/imagepolicy/internalversion/BUILD b/pkg/client/listers/imagepolicy/internalversion/BUILD index 414c484bec9..b2eb79ba429 100644 --- a/pkg/client/listers/imagepolicy/internalversion/BUILD +++ b/pkg/client/listers/imagepolicy/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.imagereview.go"], + srcs = [ + "expansion_generated.go", + "imagereview.go", + ], tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", diff --git a/pkg/client/listers/imagepolicy/internalversion/expansion_generated.go b/pkg/client/listers/imagepolicy/internalversion/expansion_generated.go new file mode 100644 index 00000000000..e31647644c2 --- /dev/null +++ b/pkg/client/listers/imagepolicy/internalversion/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// ImageReviewListerExpansion allows custom methods to be added to +// ImageReviewLister. +type ImageReviewListerExpansion interface{} diff --git a/pkg/client/listers/imagepolicy/internalversion/zz_generated.imagereview.go b/pkg/client/listers/imagepolicy/internalversion/imagereview.go similarity index 99% rename from pkg/client/listers/imagepolicy/internalversion/zz_generated.imagereview.go rename to pkg/client/listers/imagepolicy/internalversion/imagereview.go index abb746c0659..4ee9d8388d5 100644 --- a/pkg/client/listers/imagepolicy/internalversion/zz_generated.imagereview.go +++ b/pkg/client/listers/imagepolicy/internalversion/imagereview.go @@ -32,6 +32,7 @@ type ImageReviewLister interface { List(selector labels.Selector) (ret []*imagepolicy.ImageReview, err error) // Get retrieves the ImageReview from the index for a given name. Get(name string) (*imagepolicy.ImageReview, error) + ImageReviewListerExpansion } // imageReviewLister implements the ImageReviewLister interface. diff --git a/pkg/client/listers/imagepolicy/v1alpha1/BUILD b/pkg/client/listers/imagepolicy/v1alpha1/BUILD index 59ffe0b7da7..de3b8bb65ca 100644 --- a/pkg/client/listers/imagepolicy/v1alpha1/BUILD +++ b/pkg/client/listers/imagepolicy/v1alpha1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.imagereview.go"], + srcs = [ + "expansion_generated.go", + "imagereview.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/imagepolicy/v1alpha1/expansion_generated.go b/pkg/client/listers/imagepolicy/v1alpha1/expansion_generated.go new file mode 100644 index 00000000000..2f6afd4c7e9 --- /dev/null +++ b/pkg/client/listers/imagepolicy/v1alpha1/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1alpha1 + +// ImageReviewListerExpansion allows custom methods to be added to +// ImageReviewLister. +type ImageReviewListerExpansion interface{} diff --git a/pkg/client/listers/imagepolicy/v1alpha1/zz_generated.imagereview.go b/pkg/client/listers/imagepolicy/v1alpha1/imagereview.go similarity index 99% rename from pkg/client/listers/imagepolicy/v1alpha1/zz_generated.imagereview.go rename to pkg/client/listers/imagepolicy/v1alpha1/imagereview.go index 3bf87566912..49d8a68edbf 100644 --- a/pkg/client/listers/imagepolicy/v1alpha1/zz_generated.imagereview.go +++ b/pkg/client/listers/imagepolicy/v1alpha1/imagereview.go @@ -33,6 +33,7 @@ type ImageReviewLister interface { List(selector labels.Selector) (ret []*v1alpha1.ImageReview, err error) // Get retrieves the ImageReview from the index for a given name. Get(name string) (*v1alpha1.ImageReview, error) + ImageReviewListerExpansion } // imageReviewLister implements the ImageReviewLister interface. diff --git a/pkg/client/listers/policy/internalversion/BUILD b/pkg/client/listers/policy/internalversion/BUILD index 63bbe4d3372..7deeda77654 100644 --- a/pkg/client/listers/policy/internalversion/BUILD +++ b/pkg/client/listers/policy/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.poddisruptionbudget.go"], + srcs = [ + "expansion_generated.go", + "poddisruptionbudget.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/policy/internalversion/expansion_generated.go b/pkg/client/listers/policy/internalversion/expansion_generated.go new file mode 100644 index 00000000000..cbf579c93ce --- /dev/null +++ b/pkg/client/listers/policy/internalversion/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// PodDisruptionBudgetListerExpansion allows custom methods to be added to +// PodDisruptionBudgetLister. +type PodDisruptionBudgetListerExpansion interface{} + +// PodDisruptionBudgetNamespaceListerExpansion allows custom methods to be added to +// PodDisruptionBudgetNamespaeLister. +type PodDisruptionBudgetNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/policy/internalversion/zz_generated.poddisruptionbudget.go b/pkg/client/listers/policy/internalversion/poddisruptionbudget.go similarity index 98% rename from pkg/client/listers/policy/internalversion/zz_generated.poddisruptionbudget.go rename to pkg/client/listers/policy/internalversion/poddisruptionbudget.go index 02f00dbf9ea..cf352f12527 100644 --- a/pkg/client/listers/policy/internalversion/zz_generated.poddisruptionbudget.go +++ b/pkg/client/listers/policy/internalversion/poddisruptionbudget.go @@ -31,6 +31,7 @@ type PodDisruptionBudgetLister interface { List(selector labels.Selector) (ret []*policy.PodDisruptionBudget, err error) // PodDisruptionBudgets returns an object that can list and get PodDisruptionBudgets. PodDisruptionBudgets(namespace string) PodDisruptionBudgetNamespaceLister + PodDisruptionBudgetListerExpansion } // podDisruptionBudgetLister implements the PodDisruptionBudgetLister interface. @@ -62,6 +63,7 @@ type PodDisruptionBudgetNamespaceLister interface { List(selector labels.Selector) (ret []*policy.PodDisruptionBudget, err error) // Get retrieves the PodDisruptionBudget from the indexer for a given namespace and name. Get(name string) (*policy.PodDisruptionBudget, error) + PodDisruptionBudgetNamespaceListerExpansion } // podDisruptionBudgetNamespaceLister implements the PodDisruptionBudgetNamespaceLister diff --git a/pkg/client/listers/policy/v1alpha1/BUILD b/pkg/client/listers/policy/v1alpha1/BUILD index 26c6e7b1384..449290d6000 100644 --- a/pkg/client/listers/policy/v1alpha1/BUILD +++ b/pkg/client/listers/policy/v1alpha1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.poddisruptionbudget.go"], + srcs = [ + "expansion_generated.go", + "poddisruptionbudget.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/policy/v1alpha1/expansion_generated.go b/pkg/client/listers/policy/v1alpha1/expansion_generated.go new file mode 100644 index 00000000000..11c9a40ddde --- /dev/null +++ b/pkg/client/listers/policy/v1alpha1/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1alpha1 + +// PodDisruptionBudgetListerExpansion allows custom methods to be added to +// PodDisruptionBudgetLister. +type PodDisruptionBudgetListerExpansion interface{} + +// PodDisruptionBudgetNamespaceListerExpansion allows custom methods to be added to +// PodDisruptionBudgetNamespaeLister. +type PodDisruptionBudgetNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/policy/v1alpha1/zz_generated.poddisruptionbudget.go b/pkg/client/listers/policy/v1alpha1/poddisruptionbudget.go similarity index 98% rename from pkg/client/listers/policy/v1alpha1/zz_generated.poddisruptionbudget.go rename to pkg/client/listers/policy/v1alpha1/poddisruptionbudget.go index 6b095aac5e6..26dbfbdf1db 100644 --- a/pkg/client/listers/policy/v1alpha1/zz_generated.poddisruptionbudget.go +++ b/pkg/client/listers/policy/v1alpha1/poddisruptionbudget.go @@ -32,6 +32,7 @@ type PodDisruptionBudgetLister interface { List(selector labels.Selector) (ret []*v1alpha1.PodDisruptionBudget, err error) // PodDisruptionBudgets returns an object that can list and get PodDisruptionBudgets. PodDisruptionBudgets(namespace string) PodDisruptionBudgetNamespaceLister + PodDisruptionBudgetListerExpansion } // podDisruptionBudgetLister implements the PodDisruptionBudgetLister interface. @@ -63,6 +64,7 @@ type PodDisruptionBudgetNamespaceLister interface { List(selector labels.Selector) (ret []*v1alpha1.PodDisruptionBudget, err error) // Get retrieves the PodDisruptionBudget from the indexer for a given namespace and name. Get(name string) (*v1alpha1.PodDisruptionBudget, error) + PodDisruptionBudgetNamespaceListerExpansion } // podDisruptionBudgetNamespaceLister implements the PodDisruptionBudgetNamespaceLister diff --git a/pkg/client/listers/policy/v1beta1/BUILD b/pkg/client/listers/policy/v1beta1/BUILD index ba18052d960..435fed14ccd 100644 --- a/pkg/client/listers/policy/v1beta1/BUILD +++ b/pkg/client/listers/policy/v1beta1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.poddisruptionbudget.go"], + srcs = [ + "expansion_generated.go", + "poddisruptionbudget.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/policy/v1beta1/expansion_generated.go b/pkg/client/listers/policy/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..a712d2d403e --- /dev/null +++ b/pkg/client/listers/policy/v1beta1/expansion_generated.go @@ -0,0 +1,27 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// PodDisruptionBudgetListerExpansion allows custom methods to be added to +// PodDisruptionBudgetLister. +type PodDisruptionBudgetListerExpansion interface{} + +// PodDisruptionBudgetNamespaceListerExpansion allows custom methods to be added to +// PodDisruptionBudgetNamespaeLister. +type PodDisruptionBudgetNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/policy/v1beta1/zz_generated.poddisruptionbudget.go b/pkg/client/listers/policy/v1beta1/poddisruptionbudget.go similarity index 98% rename from pkg/client/listers/policy/v1beta1/zz_generated.poddisruptionbudget.go rename to pkg/client/listers/policy/v1beta1/poddisruptionbudget.go index 8747b0cf6c7..b9c236a3c12 100644 --- a/pkg/client/listers/policy/v1beta1/zz_generated.poddisruptionbudget.go +++ b/pkg/client/listers/policy/v1beta1/poddisruptionbudget.go @@ -32,6 +32,7 @@ type PodDisruptionBudgetLister interface { List(selector labels.Selector) (ret []*v1beta1.PodDisruptionBudget, err error) // PodDisruptionBudgets returns an object that can list and get PodDisruptionBudgets. PodDisruptionBudgets(namespace string) PodDisruptionBudgetNamespaceLister + PodDisruptionBudgetListerExpansion } // podDisruptionBudgetLister implements the PodDisruptionBudgetLister interface. @@ -63,6 +64,7 @@ type PodDisruptionBudgetNamespaceLister interface { List(selector labels.Selector) (ret []*v1beta1.PodDisruptionBudget, err error) // Get retrieves the PodDisruptionBudget from the indexer for a given namespace and name. Get(name string) (*v1beta1.PodDisruptionBudget, error) + PodDisruptionBudgetNamespaceListerExpansion } // podDisruptionBudgetNamespaceLister implements the PodDisruptionBudgetNamespaceLister diff --git a/pkg/client/listers/rbac/internalversion/BUILD b/pkg/client/listers/rbac/internalversion/BUILD index 4a33440122f..9a0770ec502 100644 --- a/pkg/client/listers/rbac/internalversion/BUILD +++ b/pkg/client/listers/rbac/internalversion/BUILD @@ -13,10 +13,11 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.clusterrole.go", - "zz_generated.clusterrolebinding.go", - "zz_generated.role.go", - "zz_generated.rolebinding.go", + "clusterrole.go", + "clusterrolebinding.go", + "expansion_generated.go", + "role.go", + "rolebinding.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/rbac/internalversion/zz_generated.clusterrole.go b/pkg/client/listers/rbac/internalversion/clusterrole.go similarity index 99% rename from pkg/client/listers/rbac/internalversion/zz_generated.clusterrole.go rename to pkg/client/listers/rbac/internalversion/clusterrole.go index ecf95682cd8..24cb88a6462 100644 --- a/pkg/client/listers/rbac/internalversion/zz_generated.clusterrole.go +++ b/pkg/client/listers/rbac/internalversion/clusterrole.go @@ -32,6 +32,7 @@ type ClusterRoleLister interface { List(selector labels.Selector) (ret []*rbac.ClusterRole, err error) // Get retrieves the ClusterRole from the index for a given name. Get(name string) (*rbac.ClusterRole, error) + ClusterRoleListerExpansion } // clusterRoleLister implements the ClusterRoleLister interface. diff --git a/pkg/client/listers/rbac/internalversion/zz_generated.clusterrolebinding.go b/pkg/client/listers/rbac/internalversion/clusterrolebinding.go similarity index 99% rename from pkg/client/listers/rbac/internalversion/zz_generated.clusterrolebinding.go rename to pkg/client/listers/rbac/internalversion/clusterrolebinding.go index 04521c947bc..c5facd19b46 100644 --- a/pkg/client/listers/rbac/internalversion/zz_generated.clusterrolebinding.go +++ b/pkg/client/listers/rbac/internalversion/clusterrolebinding.go @@ -32,6 +32,7 @@ type ClusterRoleBindingLister interface { List(selector labels.Selector) (ret []*rbac.ClusterRoleBinding, err error) // Get retrieves the ClusterRoleBinding from the index for a given name. Get(name string) (*rbac.ClusterRoleBinding, error) + ClusterRoleBindingListerExpansion } // clusterRoleBindingLister implements the ClusterRoleBindingLister interface. diff --git a/pkg/client/listers/rbac/internalversion/expansion_generated.go b/pkg/client/listers/rbac/internalversion/expansion_generated.go new file mode 100644 index 00000000000..fb889a4d6dd --- /dev/null +++ b/pkg/client/listers/rbac/internalversion/expansion_generated.go @@ -0,0 +1,43 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// ClusterRoleListerExpansion allows custom methods to be added to +// ClusterRoleLister. +type ClusterRoleListerExpansion interface{} + +// ClusterRoleBindingListerExpansion allows custom methods to be added to +// ClusterRoleBindingLister. +type ClusterRoleBindingListerExpansion interface{} + +// RoleListerExpansion allows custom methods to be added to +// RoleLister. +type RoleListerExpansion interface{} + +// RoleNamespaceListerExpansion allows custom methods to be added to +// RoleNamespaeLister. +type RoleNamespaceListerExpansion interface{} + +// RoleBindingListerExpansion allows custom methods to be added to +// RoleBindingLister. +type RoleBindingListerExpansion interface{} + +// RoleBindingNamespaceListerExpansion allows custom methods to be added to +// RoleBindingNamespaeLister. +type RoleBindingNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/rbac/internalversion/zz_generated.role.go b/pkg/client/listers/rbac/internalversion/role.go similarity index 98% rename from pkg/client/listers/rbac/internalversion/zz_generated.role.go rename to pkg/client/listers/rbac/internalversion/role.go index c2feb8686b5..d06bd74b7fd 100644 --- a/pkg/client/listers/rbac/internalversion/zz_generated.role.go +++ b/pkg/client/listers/rbac/internalversion/role.go @@ -31,6 +31,7 @@ type RoleLister interface { List(selector labels.Selector) (ret []*rbac.Role, err error) // Roles returns an object that can list and get Roles. Roles(namespace string) RoleNamespaceLister + RoleListerExpansion } // roleLister implements the RoleLister interface. @@ -62,6 +63,7 @@ type RoleNamespaceLister interface { List(selector labels.Selector) (ret []*rbac.Role, err error) // Get retrieves the Role from the indexer for a given namespace and name. Get(name string) (*rbac.Role, error) + RoleNamespaceListerExpansion } // roleNamespaceLister implements the RoleNamespaceLister diff --git a/pkg/client/listers/rbac/internalversion/zz_generated.rolebinding.go b/pkg/client/listers/rbac/internalversion/rolebinding.go similarity index 98% rename from pkg/client/listers/rbac/internalversion/zz_generated.rolebinding.go rename to pkg/client/listers/rbac/internalversion/rolebinding.go index 98d5de390cc..defe6f1a108 100644 --- a/pkg/client/listers/rbac/internalversion/zz_generated.rolebinding.go +++ b/pkg/client/listers/rbac/internalversion/rolebinding.go @@ -31,6 +31,7 @@ type RoleBindingLister interface { List(selector labels.Selector) (ret []*rbac.RoleBinding, err error) // RoleBindings returns an object that can list and get RoleBindings. RoleBindings(namespace string) RoleBindingNamespaceLister + RoleBindingListerExpansion } // roleBindingLister implements the RoleBindingLister interface. @@ -62,6 +63,7 @@ type RoleBindingNamespaceLister interface { List(selector labels.Selector) (ret []*rbac.RoleBinding, err error) // Get retrieves the RoleBinding from the indexer for a given namespace and name. Get(name string) (*rbac.RoleBinding, error) + RoleBindingNamespaceListerExpansion } // roleBindingNamespaceLister implements the RoleBindingNamespaceLister diff --git a/pkg/client/listers/rbac/v1alpha1/BUILD b/pkg/client/listers/rbac/v1alpha1/BUILD index 15c090f5653..383cf83db3f 100644 --- a/pkg/client/listers/rbac/v1alpha1/BUILD +++ b/pkg/client/listers/rbac/v1alpha1/BUILD @@ -13,10 +13,11 @@ load( go_library( name = "go_default_library", srcs = [ - "zz_generated.clusterrole.go", - "zz_generated.clusterrolebinding.go", - "zz_generated.role.go", - "zz_generated.rolebinding.go", + "clusterrole.go", + "clusterrolebinding.go", + "expansion_generated.go", + "role.go", + "rolebinding.go", ], tags = ["automanaged"], deps = [ diff --git a/pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrole.go b/pkg/client/listers/rbac/v1alpha1/clusterrole.go similarity index 99% rename from pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrole.go rename to pkg/client/listers/rbac/v1alpha1/clusterrole.go index b6bc59b7642..c3f9146b834 100644 --- a/pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrole.go +++ b/pkg/client/listers/rbac/v1alpha1/clusterrole.go @@ -33,6 +33,7 @@ type ClusterRoleLister interface { List(selector labels.Selector) (ret []*v1alpha1.ClusterRole, err error) // Get retrieves the ClusterRole from the index for a given name. Get(name string) (*v1alpha1.ClusterRole, error) + ClusterRoleListerExpansion } // clusterRoleLister implements the ClusterRoleLister interface. diff --git a/pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrolebinding.go b/pkg/client/listers/rbac/v1alpha1/clusterrolebinding.go similarity index 99% rename from pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrolebinding.go rename to pkg/client/listers/rbac/v1alpha1/clusterrolebinding.go index c66f9b3b9c4..2a97551377e 100644 --- a/pkg/client/listers/rbac/v1alpha1/zz_generated.clusterrolebinding.go +++ b/pkg/client/listers/rbac/v1alpha1/clusterrolebinding.go @@ -33,6 +33,7 @@ type ClusterRoleBindingLister interface { List(selector labels.Selector) (ret []*v1alpha1.ClusterRoleBinding, err error) // Get retrieves the ClusterRoleBinding from the index for a given name. Get(name string) (*v1alpha1.ClusterRoleBinding, error) + ClusterRoleBindingListerExpansion } // clusterRoleBindingLister implements the ClusterRoleBindingLister interface. diff --git a/pkg/client/listers/rbac/v1alpha1/expansion_generated.go b/pkg/client/listers/rbac/v1alpha1/expansion_generated.go new file mode 100644 index 00000000000..4e42431add9 --- /dev/null +++ b/pkg/client/listers/rbac/v1alpha1/expansion_generated.go @@ -0,0 +1,43 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1alpha1 + +// ClusterRoleListerExpansion allows custom methods to be added to +// ClusterRoleLister. +type ClusterRoleListerExpansion interface{} + +// ClusterRoleBindingListerExpansion allows custom methods to be added to +// ClusterRoleBindingLister. +type ClusterRoleBindingListerExpansion interface{} + +// RoleListerExpansion allows custom methods to be added to +// RoleLister. +type RoleListerExpansion interface{} + +// RoleNamespaceListerExpansion allows custom methods to be added to +// RoleNamespaeLister. +type RoleNamespaceListerExpansion interface{} + +// RoleBindingListerExpansion allows custom methods to be added to +// RoleBindingLister. +type RoleBindingListerExpansion interface{} + +// RoleBindingNamespaceListerExpansion allows custom methods to be added to +// RoleBindingNamespaeLister. +type RoleBindingNamespaceListerExpansion interface{} diff --git a/pkg/client/listers/rbac/v1alpha1/zz_generated.role.go b/pkg/client/listers/rbac/v1alpha1/role.go similarity index 98% rename from pkg/client/listers/rbac/v1alpha1/zz_generated.role.go rename to pkg/client/listers/rbac/v1alpha1/role.go index 5c8a7fb4049..3fc9945570a 100644 --- a/pkg/client/listers/rbac/v1alpha1/zz_generated.role.go +++ b/pkg/client/listers/rbac/v1alpha1/role.go @@ -32,6 +32,7 @@ type RoleLister interface { List(selector labels.Selector) (ret []*v1alpha1.Role, err error) // Roles returns an object that can list and get Roles. Roles(namespace string) RoleNamespaceLister + RoleListerExpansion } // roleLister implements the RoleLister interface. @@ -63,6 +64,7 @@ type RoleNamespaceLister interface { List(selector labels.Selector) (ret []*v1alpha1.Role, err error) // Get retrieves the Role from the indexer for a given namespace and name. Get(name string) (*v1alpha1.Role, error) + RoleNamespaceListerExpansion } // roleNamespaceLister implements the RoleNamespaceLister diff --git a/pkg/client/listers/rbac/v1alpha1/zz_generated.rolebinding.go b/pkg/client/listers/rbac/v1alpha1/rolebinding.go similarity index 98% rename from pkg/client/listers/rbac/v1alpha1/zz_generated.rolebinding.go rename to pkg/client/listers/rbac/v1alpha1/rolebinding.go index f5f992f1408..805d57e03e8 100644 --- a/pkg/client/listers/rbac/v1alpha1/zz_generated.rolebinding.go +++ b/pkg/client/listers/rbac/v1alpha1/rolebinding.go @@ -32,6 +32,7 @@ type RoleBindingLister interface { List(selector labels.Selector) (ret []*v1alpha1.RoleBinding, err error) // RoleBindings returns an object that can list and get RoleBindings. RoleBindings(namespace string) RoleBindingNamespaceLister + RoleBindingListerExpansion } // roleBindingLister implements the RoleBindingLister interface. @@ -63,6 +64,7 @@ type RoleBindingNamespaceLister interface { List(selector labels.Selector) (ret []*v1alpha1.RoleBinding, err error) // Get retrieves the RoleBinding from the indexer for a given namespace and name. Get(name string) (*v1alpha1.RoleBinding, error) + RoleBindingNamespaceListerExpansion } // roleBindingNamespaceLister implements the RoleBindingNamespaceLister diff --git a/pkg/client/listers/storage/internalversion/BUILD b/pkg/client/listers/storage/internalversion/BUILD index 3d9f39f2f73..2df31b068d2 100644 --- a/pkg/client/listers/storage/internalversion/BUILD +++ b/pkg/client/listers/storage/internalversion/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.storageclass.go"], + srcs = [ + "expansion_generated.go", + "storageclass.go", + ], tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", diff --git a/pkg/client/listers/storage/internalversion/expansion_generated.go b/pkg/client/listers/storage/internalversion/expansion_generated.go new file mode 100644 index 00000000000..463b8b48c53 --- /dev/null +++ b/pkg/client/listers/storage/internalversion/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package internalversion + +// StorageClassListerExpansion allows custom methods to be added to +// StorageClassLister. +type StorageClassListerExpansion interface{} diff --git a/pkg/client/listers/storage/internalversion/zz_generated.storageclass.go b/pkg/client/listers/storage/internalversion/storageclass.go similarity index 99% rename from pkg/client/listers/storage/internalversion/zz_generated.storageclass.go rename to pkg/client/listers/storage/internalversion/storageclass.go index 96bdc1f016a..f407ec8d709 100644 --- a/pkg/client/listers/storage/internalversion/zz_generated.storageclass.go +++ b/pkg/client/listers/storage/internalversion/storageclass.go @@ -32,6 +32,7 @@ type StorageClassLister interface { List(selector labels.Selector) (ret []*storage.StorageClass, err error) // Get retrieves the StorageClass from the index for a given name. Get(name string) (*storage.StorageClass, error) + StorageClassListerExpansion } // storageClassLister implements the StorageClassLister interface. diff --git a/pkg/client/listers/storage/v1beta1/BUILD b/pkg/client/listers/storage/v1beta1/BUILD index ffa210c7d03..e9ca2273ca0 100644 --- a/pkg/client/listers/storage/v1beta1/BUILD +++ b/pkg/client/listers/storage/v1beta1/BUILD @@ -12,7 +12,10 @@ load( go_library( name = "go_default_library", - srcs = ["zz_generated.storageclass.go"], + srcs = [ + "expansion_generated.go", + "storageclass.go", + ], tags = ["automanaged"], deps = [ "//pkg/api/errors:go_default_library", diff --git a/pkg/client/listers/storage/v1beta1/expansion_generated.go b/pkg/client/listers/storage/v1beta1/expansion_generated.go new file mode 100644 index 00000000000..68450941373 --- /dev/null +++ b/pkg/client/listers/storage/v1beta1/expansion_generated.go @@ -0,0 +1,23 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] + +package v1beta1 + +// StorageClassListerExpansion allows custom methods to be added to +// StorageClassLister. +type StorageClassListerExpansion interface{} diff --git a/pkg/client/listers/storage/v1beta1/zz_generated.storageclass.go b/pkg/client/listers/storage/v1beta1/storageclass.go similarity index 99% rename from pkg/client/listers/storage/v1beta1/zz_generated.storageclass.go rename to pkg/client/listers/storage/v1beta1/storageclass.go index de78012a3ef..23e2d843f90 100644 --- a/pkg/client/listers/storage/v1beta1/zz_generated.storageclass.go +++ b/pkg/client/listers/storage/v1beta1/storageclass.go @@ -33,6 +33,7 @@ type StorageClassLister interface { List(selector labels.Selector) (ret []*v1beta1.StorageClass, err error) // Get retrieves the StorageClass from the index for a given name. Get(name string) (*v1beta1.StorageClass, error) + StorageClassListerExpansion } // storageClassLister implements the StorageClassLister interface. diff --git a/pkg/controller/informers/BUILD b/pkg/controller/informers/BUILD index 8288c7a7318..2b48aea4204 100644 --- a/pkg/controller/informers/BUILD +++ b/pkg/controller/informers/BUILD @@ -13,6 +13,7 @@ load( go_library( name = "go_default_library", srcs = [ + "batch.go", "core.go", "extensions.go", "factory.go", @@ -24,11 +25,13 @@ go_library( deps = [ "//pkg/api:go_default_library", "//pkg/api/unversioned:go_default_library", + "//pkg/apis/batch:go_default_library", "//pkg/apis/extensions:go_default_library", "//pkg/apis/rbac:go_default_library", "//pkg/apis/storage:go_default_library", "//pkg/client/cache:go_default_library", "//pkg/client/clientset_generated/internalclientset:go_default_library", + "//pkg/client/listers/batch/internalversion:go_default_library", "//pkg/client/listers/core/internalversion:go_default_library", "//pkg/runtime:go_default_library", "//pkg/watch:go_default_library", diff --git a/pkg/controller/informers/batch.go b/pkg/controller/informers/batch.go new file mode 100644 index 00000000000..3143d555e70 --- /dev/null +++ b/pkg/controller/informers/batch.go @@ -0,0 +1,83 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 informers + +import ( + "reflect" + "time" + + "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/apis/batch" + "k8s.io/kubernetes/pkg/client/cache" + clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" + batchinternallisters "k8s.io/kubernetes/pkg/client/listers/batch/internalversion" + "k8s.io/kubernetes/pkg/runtime" + "k8s.io/kubernetes/pkg/watch" +) + +// JobInformer is type of SharedIndexInformer which watches and lists all jobs. +// Interface provides constructor for informer and lister for jobs +type JobInformer interface { + Informer() cache.SharedIndexInformer + Lister() batchinternallisters.JobLister +} + +type jobInformer struct { + *sharedInformerFactory +} + +// Informer checks whether jobInformer exists in sharedInformerFactory and if not, it creates new informer of type +// jobInformer and connects it to sharedInformerFactory +func (f *jobInformer) Informer() cache.SharedIndexInformer { + f.lock.Lock() + defer f.lock.Unlock() + + informerType := reflect.TypeOf(&batch.Job{}) + informer, exists := f.informers[informerType] + if exists { + return informer + } + informer = NewJobInformer(f.client, f.defaultResync) + f.informers[informerType] = informer + + return informer +} + +// NewJobInformer returns a SharedIndexInformer that lists and watches all jobs +func NewJobInformer(client clientset.Interface, resyncPeriod time.Duration) cache.SharedIndexInformer { + sharedIndexInformer := cache.NewSharedIndexInformer( + &cache.ListWatch{ + ListFunc: func(options api.ListOptions) (runtime.Object, error) { + return client.Batch().Jobs(api.NamespaceAll).List(options) + }, + WatchFunc: func(options api.ListOptions) (watch.Interface, error) { + return client.Batch().Jobs(api.NamespaceAll).Watch(options) + }, + }, + &batch.Job{}, + resyncPeriod, + cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc}, + ) + + return sharedIndexInformer +} + +// Lister returns lister for jobInformer +func (f *jobInformer) Lister() batchinternallisters.JobLister { + informer := f.Informer() + return batchinternallisters.NewJobLister(informer.GetIndexer()) +} diff --git a/pkg/controller/informers/factory.go b/pkg/controller/informers/factory.go index daf4e03ee4d..084e2e21b6a 100644 --- a/pkg/controller/informers/factory.go +++ b/pkg/controller/informers/factory.go @@ -54,6 +54,8 @@ type SharedInformerFactory interface { Roles() RoleInformer StorageClasses() StorageClassInformer + + Jobs() JobInformer } type sharedInformerFactory struct { @@ -158,3 +160,8 @@ func (f *sharedInformerFactory) LimitRanges() LimitRangeInformer { func (f *sharedInformerFactory) StorageClasses() StorageClassInformer { return &storageClassInformer{sharedInformerFactory: f} } + +// Jobs returns a SharedIndexInformer that lists and watches all storage jobs +func (f *sharedInformerFactory) Jobs() JobInformer { + return &jobInformer{sharedInformerFactory: f} +} diff --git a/pkg/controller/informers/generic.go b/pkg/controller/informers/generic.go index fa34fb48f61..fc6a6e0052b 100644 --- a/pkg/controller/informers/generic.go +++ b/pkg/controller/informers/generic.go @@ -21,6 +21,7 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/unversioned" + "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/rbac" "k8s.io/kubernetes/pkg/client/cache" @@ -67,6 +68,9 @@ func (f *sharedInformerFactory) ForResource(resource unversioned.GroupResource) return &genericInformer{resource: resource, informer: f.RoleBindings().Informer()}, nil case rbac.Resource("roles"): return &genericInformer{resource: resource, informer: f.Roles().Informer()}, nil + + case batch.Resource("jobs"): + return &genericInformer{resource: resource, informer: f.Jobs().Informer()}, nil } return nil, fmt.Errorf("no informer found for %v", resource) diff --git a/pkg/controller/job/BUILD b/pkg/controller/job/BUILD index b7ada0fa7a7..20782b81d2e 100644 --- a/pkg/controller/job/BUILD +++ b/pkg/controller/job/BUILD @@ -20,21 +20,20 @@ go_library( tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", + "//pkg/api/errors:go_default_library", "//pkg/api/unversioned:go_default_library", "//pkg/apis/batch:go_default_library", "//pkg/client/cache:go_default_library", "//pkg/client/clientset_generated/internalclientset:go_default_library", "//pkg/client/clientset_generated/internalclientset/typed/core/internalversion:go_default_library", + "//pkg/client/listers/batch/internalversion:go_default_library", "//pkg/client/record:go_default_library", "//pkg/controller:go_default_library", "//pkg/controller/informers:go_default_library", - "//pkg/controller/replication:go_default_library", - "//pkg/runtime:go_default_library", "//pkg/util/metrics:go_default_library", "//pkg/util/runtime:go_default_library", "//pkg/util/wait:go_default_library", "//pkg/util/workqueue:go_default_library", - "//pkg/watch:go_default_library", "//vendor:github.com/golang/glog", ], ) @@ -52,11 +51,13 @@ go_test( "//pkg/api/unversioned:go_default_library", "//pkg/apimachinery/registered:go_default_library", "//pkg/apis/batch:go_default_library", + "//pkg/client/cache:go_default_library", "//pkg/client/clientset_generated/internalclientset:go_default_library", "//pkg/client/clientset_generated/internalclientset/fake:go_default_library", "//pkg/client/restclient:go_default_library", "//pkg/client/testing/core:go_default_library", "//pkg/controller:go_default_library", + "//pkg/controller/informers:go_default_library", "//pkg/util/rand:go_default_library", "//pkg/util/wait:go_default_library", "//pkg/watch:go_default_library", diff --git a/pkg/controller/job/jobcontroller.go b/pkg/controller/job/jobcontroller.go index 0d6f746767f..049b0969733 100644 --- a/pkg/controller/job/jobcontroller.go +++ b/pkg/controller/job/jobcontroller.go @@ -24,21 +24,20 @@ import ( "time" "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/client/cache" clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion" + batchinternallisters "k8s.io/kubernetes/pkg/client/listers/batch/internalversion" "k8s.io/kubernetes/pkg/client/record" "k8s.io/kubernetes/pkg/controller" "k8s.io/kubernetes/pkg/controller/informers" - replicationcontroller "k8s.io/kubernetes/pkg/controller/replication" - "k8s.io/kubernetes/pkg/runtime" "k8s.io/kubernetes/pkg/util/metrics" utilruntime "k8s.io/kubernetes/pkg/util/runtime" "k8s.io/kubernetes/pkg/util/wait" "k8s.io/kubernetes/pkg/util/workqueue" - "k8s.io/kubernetes/pkg/watch" "github.com/golang/glog" ) @@ -47,27 +46,21 @@ type JobController struct { kubeClient clientset.Interface podControl controller.PodControlInterface - // internalPodInformer is used to hold a personal informer. If we're using - // a normal shared informer, then the informer will be started for us. If - // we have a personal informer, we must start it ourselves. If you start - // the controller using NewJobController(passing SharedInformer), this - // will be null - internalPodInformer cache.SharedInformer - // To allow injection of updateJobStatus for testing. updateHandler func(job *batch.Job) error syncHandler func(jobKey string) error // podStoreSynced returns true if the pod store has been synced at least once. // Added as a member to the struct to allow injection for testing. - podStoreSynced func() bool + podStoreSynced cache.InformerSynced + // jobStoreSynced returns true if the job store has been synced at least once. + // Added as a member to the struct to allow injection for testing. + jobStoreSynced cache.InformerSynced // A TTLCache of pod creates/deletes each rc expects to see expectations controller.ControllerExpectationsInterface - // A store of job, populated by the jobController - jobStore cache.StoreToJobLister - // Watches changes to all jobs - jobController *cache.Controller + // A store of jobs + jobLister batchinternallisters.JobLister // A store of pods, populated by the podController podStore cache.StoreToPodLister @@ -78,7 +71,7 @@ type JobController struct { recorder record.EventRecorder } -func NewJobController(podInformer cache.SharedIndexInformer, kubeClient clientset.Interface) *JobController { +func NewJobController(podInformer cache.SharedIndexInformer, jobInformer informers.JobInformer, kubeClient clientset.Interface) *JobController { eventBroadcaster := record.NewBroadcaster() eventBroadcaster.StartLogging(glog.Infof) // TODO: remove the wrapper when every clients have moved to use the clientset. @@ -99,28 +92,17 @@ func NewJobController(podInformer cache.SharedIndexInformer, kubeClient clientse recorder: eventBroadcaster.NewRecorder(api.EventSource{Component: "job-controller"}), } - jm.jobStore.Store, jm.jobController = cache.NewInformer( - &cache.ListWatch{ - ListFunc: func(options api.ListOptions) (runtime.Object, error) { - return jm.kubeClient.Batch().Jobs(api.NamespaceAll).List(options) - }, - WatchFunc: func(options api.ListOptions) (watch.Interface, error) { - return jm.kubeClient.Batch().Jobs(api.NamespaceAll).Watch(options) - }, + jobInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{ + AddFunc: jm.enqueueController, + UpdateFunc: func(old, cur interface{}) { + if job := cur.(*batch.Job); !IsJobFinished(job) { + jm.enqueueController(job) + } }, - &batch.Job{}, - // TODO: Can we have much longer period here? - replicationcontroller.FullControllerResyncPeriod, - cache.ResourceEventHandlerFuncs{ - AddFunc: jm.enqueueController, - UpdateFunc: func(old, cur interface{}) { - if job := cur.(*batch.Job); !IsJobFinished(job) { - jm.enqueueController(job) - } - }, - DeleteFunc: jm.enqueueController, - }, - ) + DeleteFunc: jm.enqueueController, + }) + jm.jobLister = jobInformer.Lister() + jm.jobStoreSynced = jobInformer.Informer().HasSynced podInformer.AddEventHandler(cache.ResourceEventHandlerFuncs{ AddFunc: jm.addPod, @@ -135,39 +117,26 @@ func NewJobController(podInformer cache.SharedIndexInformer, kubeClient clientse return jm } -func NewJobControllerFromClient(kubeClient clientset.Interface, resyncPeriod controller.ResyncPeriodFunc) *JobController { - podInformer := informers.NewPodInformer(kubeClient, resyncPeriod()) - jm := NewJobController(podInformer, kubeClient) - jm.internalPodInformer = podInformer - - return jm -} - // Run the main goroutine responsible for watching and syncing jobs. func (jm *JobController) Run(workers int, stopCh <-chan struct{}) { defer utilruntime.HandleCrash() defer jm.queue.ShutDown() - if !cache.WaitForCacheSync(stopCh, jm.podStoreSynced) { + if !cache.WaitForCacheSync(stopCh, jm.podStoreSynced, jm.jobStoreSynced) { return } - go jm.jobController.Run(stopCh) for i := 0; i < workers; i++ { go wait.Until(jm.worker, time.Second, stopCh) } - if jm.internalPodInformer != nil { - go jm.internalPodInformer.Run(stopCh) - } - <-stopCh glog.Infof("Shutting down Job Manager") } // getPodJob returns the job managing the given pod. func (jm *JobController) getPodJob(pod *api.Pod) *batch.Job { - jobs, err := jm.jobStore.GetPodJobs(pod) + jobs, err := jm.jobLister.GetPodJobs(pod) if err != nil { glog.V(4).Infof("No jobs found for pod %v, job controller will avoid syncing", pod.Name) return nil @@ -315,16 +284,23 @@ func (jm *JobController) syncJob(key string) error { glog.V(4).Infof("Finished syncing job %q (%v)", key, time.Now().Sub(startTime)) }() - obj, exists, err := jm.jobStore.Store.GetByKey(key) - if !exists { - glog.V(4).Infof("Job has been deleted: %v", key) - jm.expectations.DeleteExpectations(key) - return nil - } + ns, name, err := cache.SplitMetaNamespaceKey(key) if err != nil { return err } - job := *obj.(*batch.Job) + if len(ns) == 0 || len(name) == 0 { + return fmt.Errorf("invalid job key %q: either namespace or name is missing", key) + } + sharedJob, err := jm.jobLister.Jobs(ns).Get(name) + if err != nil { + if errors.IsNotFound(err) { + glog.V(4).Infof("Job has been deleted: %v", key) + jm.expectations.DeleteExpectations(key) + return nil + } + return err + } + job := *sharedJob // Check the expectations of the job before counting active pods, otherwise a new pod can sneak in // and update the expectations after we've retrieved active pods from the store. If a new pod enters diff --git a/pkg/controller/job/jobcontroller_test.go b/pkg/controller/job/jobcontroller_test.go index 1229ecd205c..2dcd6687275 100644 --- a/pkg/controller/job/jobcontroller_test.go +++ b/pkg/controller/job/jobcontroller_test.go @@ -18,7 +18,6 @@ package job import ( "fmt" - "reflect" "testing" "time" @@ -26,11 +25,13 @@ import ( "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/apimachinery/registered" "k8s.io/kubernetes/pkg/apis/batch" + "k8s.io/kubernetes/pkg/client/cache" clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset" "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake" "k8s.io/kubernetes/pkg/client/restclient" "k8s.io/kubernetes/pkg/client/testing/core" "k8s.io/kubernetes/pkg/controller" + "k8s.io/kubernetes/pkg/controller/informers" "k8s.io/kubernetes/pkg/util/rand" "k8s.io/kubernetes/pkg/util/wait" "k8s.io/kubernetes/pkg/watch" @@ -86,6 +87,13 @@ func getKey(job *batch.Job, t *testing.T) string { } } +func newJobControllerFromClient(kubeClient clientset.Interface, resyncPeriod controller.ResyncPeriodFunc) (*JobController, informers.SharedInformerFactory) { + sharedInformers := informers.NewSharedInformerFactory(kubeClient, resyncPeriod()) + jm := NewJobController(sharedInformers.Pods().Informer(), sharedInformers.Jobs(), kubeClient) + + return jm, sharedInformers +} + // create count pods with the given phase for the given job func newPodList(count int32, status api.PodPhase, job *batch.Job) []api.Pod { pods := []api.Pod{} @@ -220,10 +228,11 @@ func TestControllerSyncJob(t *testing.T) { for name, tc := range testCases { // job manager setup clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{Err: tc.podControllerError} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady var actual *batch.Job manager.updateHandler = func(job *batch.Job) error { actual = job @@ -236,18 +245,19 @@ func TestControllerSyncJob(t *testing.T) { now := unversioned.Now() job.DeletionTimestamp = &now } - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) + podIndexer := sharedInformerFactory.Pods().Informer().GetIndexer() for _, pod := range newPodList(tc.pendingPods, api.PodPending, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } for _, pod := range newPodList(tc.activePods, api.PodRunning, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } for _, pod := range newPodList(tc.succeededPods, api.PodSucceeded, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } for _, pod := range newPodList(tc.failedPods, api.PodFailed, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } // run @@ -322,10 +332,11 @@ func TestSyncJobPastDeadline(t *testing.T) { for name, tc := range testCases { // job manager setup clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady var actual *batch.Job manager.updateHandler = func(job *batch.Job) error { actual = job @@ -337,15 +348,16 @@ func TestSyncJobPastDeadline(t *testing.T) { job.Spec.ActiveDeadlineSeconds = &tc.activeDeadlineSeconds start := unversioned.Unix(unversioned.Now().Time.Unix()-tc.startTime, 0) job.Status.StartTime = &start - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) + podIndexer := sharedInformerFactory.Pods().Informer().GetIndexer() for _, pod := range newPodList(tc.activePods, api.PodRunning, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } for _, pod := range newPodList(tc.succeededPods, api.PodSucceeded, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } for _, pod := range newPodList(tc.failedPods, api.PodFailed, job) { - manager.podStore.Indexer.Add(&pod) + podIndexer.Add(&pod) } // run @@ -392,10 +404,11 @@ func getCondition(job *batch.Job, condition batch.JobConditionType) bool { func TestSyncPastDeadlineJobFinished(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady var actual *batch.Job manager.updateHandler = func(job *batch.Job) error { actual = job @@ -408,7 +421,7 @@ func TestSyncPastDeadlineJobFinished(t *testing.T) { start := unversioned.Unix(unversioned.Now().Time.Unix()-15, 0) job.Status.StartTime = &start job.Status.Conditions = append(job.Status.Conditions, newCondition(batch.JobFailed, "DeadlineExceeded", "Job was active longer than specified deadline")) - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) err := manager.syncJob(getKey(job, t)) if err != nil { t.Errorf("Unexpected error when syncing jobs %v", err) @@ -426,23 +439,23 @@ func TestSyncPastDeadlineJobFinished(t *testing.T) { func TestSyncJobComplete(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady job := newJob(1, 1) job.Status.Conditions = append(job.Status.Conditions, newCondition(batch.JobComplete, "", "")) - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) err := manager.syncJob(getKey(job, t)) if err != nil { t.Fatalf("Unexpected error when syncing jobs %v", err) } - uncastJob, _, err := manager.jobStore.Store.Get(job) + actual, err := manager.jobLister.Jobs(job.Namespace).Get(job.Name) if err != nil { t.Fatalf("Unexpected error when trying to get job from the store: %v", err) } - actual := uncastJob.(*batch.Job) // Verify that after syncing a complete job, the conditions are the same. if got, expected := len(actual.Status.Conditions), 1; got != expected { t.Fatalf("Unexpected job status conditions amount; expected %d, got %d", expected, got) @@ -451,10 +464,11 @@ func TestSyncJobComplete(t *testing.T) { func TestSyncJobDeleted(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, _ := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady manager.updateHandler = func(job *batch.Job) error { return nil } job := newJob(2, 2) err := manager.syncJob(getKey(job, t)) @@ -471,17 +485,18 @@ func TestSyncJobDeleted(t *testing.T) { func TestSyncJobUpdateRequeue(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady updateError := fmt.Errorf("Update error") manager.updateHandler = func(job *batch.Job) error { manager.queue.AddRateLimited(getKey(job, t)) return updateError } job := newJob(2, 2) - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) err := manager.syncJob(getKey(job, t)) if err == nil || err != updateError { t.Errorf("Expected error %v when syncing jobs, got %v", updateError, err) @@ -496,8 +511,9 @@ func TestSyncJobUpdateRequeue(t *testing.T) { func TestJobPodLookup(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady testCases := []struct { job *batch.Job pod *api.Pod @@ -560,7 +576,7 @@ func TestJobPodLookup(t *testing.T) { }, } for _, tc := range testCases { - manager.jobStore.Add(tc.job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(tc.job) if job := manager.getPodJob(tc.pod); job != nil { if tc.expectedName != job.Name { t.Errorf("Got job %+v expected %+v", job.Name, tc.expectedName) @@ -586,23 +602,25 @@ func (fe FakeJobExpectations) SatisfiedExpectations(controllerKey string) bool { // and checking expectations. func TestSyncJobExpectations(t *testing.T) { clientset := clientset.NewForConfigOrDie(&restclient.Config{Host: "", ContentConfig: restclient.ContentConfig{GroupVersion: ®istered.GroupOrDie(api.GroupName).GroupVersion}}) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{} manager.podControl = &fakePodControl manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady manager.updateHandler = func(job *batch.Job) error { return nil } job := newJob(2, 2) - manager.jobStore.Store.Add(job) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(job) pods := newPodList(2, api.PodPending, job) - manager.podStore.Indexer.Add(&pods[0]) + podIndexer := sharedInformerFactory.Pods().Informer().GetIndexer() + podIndexer.Add(&pods[0]) manager.expectations = FakeJobExpectations{ controller.NewControllerExpectations(), true, func() { // If we check active pods before checking expectataions, the job // will create a new replica because it doesn't see this pod, but // has fulfilled its expectations. - manager.podStore.Indexer.Add(&pods[1]) + podIndexer.Add(&pods[1]) }, } manager.syncJob(getKey(job, t)) @@ -618,8 +636,9 @@ func TestWatchJobs(t *testing.T) { clientset := fake.NewSimpleClientset() fakeWatch := watch.NewFake() clientset.PrependWatchReactor("jobs", core.DefaultWatchReactor(fakeWatch, nil)) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady var testJob batch.Job received := make(chan struct{}) @@ -627,28 +646,30 @@ func TestWatchJobs(t *testing.T) { // The update sent through the fakeWatcher should make its way into the workqueue, // and eventually into the syncHandler. manager.syncHandler = func(key string) error { - - obj, exists, err := manager.jobStore.Store.GetByKey(key) - if !exists || err != nil { - t.Errorf("Expected to find job under key %v", key) + defer close(received) + ns, name, err := cache.SplitMetaNamespaceKey(key) + if err != nil { + t.Errorf("Error getting namespace/name from key %v: %v", key, err) } - job, ok := obj.(*batch.Job) - if !ok { - t.Fatalf("unexpected type: %v %#v", reflect.TypeOf(obj), obj) + job, err := manager.jobLister.Jobs(ns).Get(name) + if err != nil || job == nil { + t.Errorf("Expected to find job under key %v: %v", key, err) + return nil } if !api.Semantic.DeepDerivative(*job, testJob) { t.Errorf("Expected %#v, but got %#v", testJob, *job) } - close(received) return nil } // Start only the job watcher and the workqueue, send a watch event, // and make sure it hits the sync method. stopCh := make(chan struct{}) defer close(stopCh) + sharedInformerFactory.Start(stopCh) go manager.Run(1, stopCh) // We're sending new job to see if it reaches syncHandler. + testJob.Namespace = "bar" testJob.Name = "foo" fakeWatch.Add(&testJob) t.Log("Waiting for job to reach syncHandler") @@ -660,26 +681,23 @@ func TestWatchPods(t *testing.T) { clientset := fake.NewSimpleClientset(testJob) fakeWatch := watch.NewFake() clientset.PrependWatchReactor("pods", core.DefaultWatchReactor(fakeWatch, nil)) - manager := NewJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) + manager, sharedInformerFactory := newJobControllerFromClient(clientset, controller.NoResyncPeriodFunc) manager.podStoreSynced = alwaysReady + manager.jobStoreSynced = alwaysReady // Put one job and one pod into the store - manager.jobStore.Store.Add(testJob) + sharedInformerFactory.Jobs().Informer().GetIndexer().Add(testJob) received := make(chan struct{}) // The pod update sent through the fakeWatcher should figure out the managing job and // send it into the syncHandler. manager.syncHandler = func(key string) error { - obj, exists, err := manager.jobStore.Store.GetByKey(key) - if !exists || err != nil { - t.Errorf("Expected to find job under key %v", key) - close(received) - return nil + ns, name, err := cache.SplitMetaNamespaceKey(key) + if err != nil { + t.Errorf("Error getting namespace/name from key %v: %v", key, err) } - job, ok := obj.(*batch.Job) - if !ok { - t.Errorf("unexpected type: %v %#v", reflect.TypeOf(obj), obj) - close(received) - return nil + job, err := manager.jobLister.Jobs(ns).Get(name) + if err != nil { + t.Errorf("Expected to find job under key %v: %v", key, err) } if !api.Semantic.DeepDerivative(job, testJob) { t.Errorf("\nExpected %#v,\nbut got %#v", testJob, job) @@ -693,7 +711,7 @@ func TestWatchPods(t *testing.T) { // and make sure it hits the sync method for the right job. stopCh := make(chan struct{}) defer close(stopCh) - go manager.internalPodInformer.Run(stopCh) + go sharedInformerFactory.Pods().Informer().Run(stopCh) go wait.Until(manager.worker, 10*time.Millisecond, stopCh) pods := newPodList(1, api.PodRunning, testJob) diff --git a/test/test_owners.csv b/test/test_owners.csv index f600e26ddea..4445fe359e7 100644 --- a/test/test_owners.csv +++ b/test/test_owners.csv @@ -543,6 +543,7 @@ k8s.io/kubernetes/pkg/auth/handlers,liggitt,0 k8s.io/kubernetes/pkg/client/cache,xiang90,1 k8s.io/kubernetes/pkg/client/chaosclient,deads2k,1 k8s.io/kubernetes/pkg/client/leaderelection,xiang90,1 +k8s.io/kubernetes/pkg/client/listers/batch/internalversion,mqliang,0 k8s.io/kubernetes/pkg/client/record,karlkfi,1 k8s.io/kubernetes/pkg/client/restclient,kargakis,1 k8s.io/kubernetes/pkg/client/retry,caesarxuchao,1