1
0
mirror of https://github.com/rancher/types.git synced 2025-07-31 04:49:37 +00:00

Updated generated code

This commit is contained in:
Darren Shepherd 2017-11-28 14:35:19 -07:00
parent d36708b38c
commit 3f62e4cc82
30 changed files with 1066 additions and 29 deletions

View File

@ -0,0 +1,40 @@
package v1beta2
import (
apps_v1beta2 "k8s.io/api/apps/v1beta2"
runtime "k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DeploymentList) DeepCopyInto(out *DeploymentList) {
*out = *in
out.TypeMeta = in.TypeMeta
out.ListMeta = in.ListMeta
if in.Items != nil {
in, out := &in.Items, &out.Items
*out = make([]apps_v1beta2.Deployment, len(*in))
for i := range *in {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentList.
func (in *DeploymentList) DeepCopy() *DeploymentList {
if in == nil {
return nil
}
out := new(DeploymentList)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *DeploymentList) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
} else {
return nil
}
}

View File

@ -0,0 +1,188 @@
package v1beta2
import (
"context"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/api/apps/v1beta2"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
"k8s.io/client-go/tools/cache"
)
var (
DeploymentGroupVersionKind = schema.GroupVersionKind{
Version: "v1beta2",
Group: "apps",
Kind: "Deployment",
}
DeploymentResource = metav1.APIResource{
Name: "deployments",
SingularName: "deployment",
Namespaced: false,
Kind: DeploymentGroupVersionKind.Kind,
}
)
type DeploymentList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []v1beta2.Deployment
}
type DeploymentHandlerFunc func(key string, obj *v1beta2.Deployment) error
type DeploymentLister interface {
List(namespace string, selector labels.Selector) (ret []*v1beta2.Deployment, err error)
Get(namespace, name string) (*v1beta2.Deployment, error)
}
type DeploymentController interface {
Informer() cache.SharedIndexInformer
Lister() DeploymentLister
AddHandler(handler DeploymentHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type DeploymentInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*v1beta2.Deployment) (*v1beta2.Deployment, error)
Get(name string, opts metav1.GetOptions) (*v1beta2.Deployment, error)
Update(*v1beta2.Deployment) (*v1beta2.Deployment, error)
Delete(name string, options *metav1.DeleteOptions) error
List(opts metav1.ListOptions) (*v1beta2.DeploymentList, error)
Watch(opts metav1.ListOptions) (watch.Interface, error)
DeleteCollection(deleteOpts *metav1.DeleteOptions, listOpts metav1.ListOptions) error
Controller() DeploymentController
}
type deploymentLister struct {
controller *deploymentController
}
func (l *deploymentLister) List(namespace string, selector labels.Selector) (ret []*v1beta2.Deployment, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*v1beta2.Deployment))
})
return
}
func (l *deploymentLister) Get(namespace, name string) (*v1beta2.Deployment, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: DeploymentGroupVersionKind.Group,
Resource: "deployment",
}, name)
}
return obj.(*v1beta2.Deployment), nil
}
type deploymentController struct {
controller.GenericController
}
func (c *deploymentController) Lister() DeploymentLister {
return &deploymentLister{
controller: c,
}
}
func (c *deploymentController) AddHandler(handler DeploymentHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
if err != nil {
return err
}
if !exists {
return handler(key, nil)
}
return handler(key, obj.(*v1beta2.Deployment))
})
}
type deploymentFactory struct {
}
func (c deploymentFactory) Object() runtime.Object {
return &v1beta2.Deployment{}
}
func (c deploymentFactory) List() runtime.Object {
return &DeploymentList{}
}
func (s *deploymentClient) Controller() DeploymentController {
s.client.Lock()
defer s.client.Unlock()
c, ok := s.client.deploymentControllers[s.ns]
if ok {
return c
}
genericController := controller.NewGenericController(DeploymentGroupVersionKind.Kind+"Controller",
s.objectClient)
c = &deploymentController{
GenericController: genericController,
}
s.client.deploymentControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
type deploymentClient struct {
client *Client
ns string
objectClient *clientbase.ObjectClient
controller DeploymentController
}
func (s *deploymentClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *deploymentClient) Create(o *v1beta2.Deployment) (*v1beta2.Deployment, error) {
obj, err := s.objectClient.Create(o)
return obj.(*v1beta2.Deployment), err
}
func (s *deploymentClient) Get(name string, opts metav1.GetOptions) (*v1beta2.Deployment, error) {
obj, err := s.objectClient.Get(name, opts)
return obj.(*v1beta2.Deployment), err
}
func (s *deploymentClient) Update(o *v1beta2.Deployment) (*v1beta2.Deployment, error) {
obj, err := s.objectClient.Update(o.Name, o)
return obj.(*v1beta2.Deployment), err
}
func (s *deploymentClient) Delete(name string, options *metav1.DeleteOptions) error {
return s.objectClient.Delete(name, options)
}
func (s *deploymentClient) List(opts metav1.ListOptions) (*v1beta2.DeploymentList, error) {
obj, err := s.objectClient.List(opts)
return obj.(*v1beta2.DeploymentList), err
}
func (s *deploymentClient) Watch(opts metav1.ListOptions) (watch.Interface, error) {
return s.objectClient.Watch(opts)
}
func (s *deploymentClient) DeleteCollection(deleteOpts *metav1.DeleteOptions, listOpts metav1.ListOptions) error {
return s.objectClient.DeleteCollection(deleteOpts, listOpts)
}

View File

@ -0,0 +1,69 @@
package v1beta2
import (
"context"
"sync"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/rest"
)
type Interface interface {
RESTClient() rest.Interface
controller.Starter
DeploymentsGetter
}
type Client struct {
sync.Mutex
restClient rest.Interface
starters []controller.Starter
deploymentControllers map[string]DeploymentController
}
func NewForConfig(config rest.Config) (Interface, error) {
if config.NegotiatedSerializer == nil {
configConfig := dynamic.ContentConfig()
config.NegotiatedSerializer = configConfig.NegotiatedSerializer
}
restClient, err := rest.UnversionedRESTClientFor(&config)
if err != nil {
return nil, err
}
return &Client{
restClient: restClient,
deploymentControllers: map[string]DeploymentController{},
}, nil
}
func (c *Client) RESTClient() rest.Interface {
return c.restClient
}
func (c *Client) Sync(ctx context.Context) error {
return controller.Sync(ctx, c.starters...)
}
func (c *Client) Start(ctx context.Context, threadiness int) error {
return controller.Start(ctx, threadiness, c.starters...)
}
type DeploymentsGetter interface {
Deployments(namespace string) DeploymentInterface
}
func (c *Client) Deployments(namespace string) DeploymentInterface {
objectClient := clientbase.NewObjectClient(namespace, c.restClient, &DeploymentResource, DeploymentGroupVersionKind, deploymentFactory{})
return &deploymentClient{
ns: namespace,
client: c,
objectClient: objectClient,
}
}

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ClusterRoleTemplateBindingList struct {
type ClusterRoleTemplateBindingHandlerFunc func(key string, obj *ClusterRoleTemplateBinding) error
type ClusterRoleTemplateBindingLister interface {
List(namespace string, selector labels.Selector) (ret []*ClusterRoleTemplateBinding, err error)
Get(namespace, name string) (*ClusterRoleTemplateBinding, error)
}
type ClusterRoleTemplateBindingController interface {
Informer() cache.SharedIndexInformer
Lister() ClusterRoleTemplateBindingLister
AddHandler(handler ClusterRoleTemplateBindingHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ClusterRoleTemplateBindingInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*ClusterRoleTemplateBinding) (*ClusterRoleTemplateBinding, error)
Get(name string, opts metav1.GetOptions) (*ClusterRoleTemplateBinding, error)
Update(*ClusterRoleTemplateBinding) (*ClusterRoleTemplateBinding, error)
@ -52,10 +62,41 @@ type ClusterRoleTemplateBindingInterface interface {
Controller() ClusterRoleTemplateBindingController
}
type clusterRoleTemplateBindingLister struct {
controller *clusterRoleTemplateBindingController
}
func (l *clusterRoleTemplateBindingLister) List(namespace string, selector labels.Selector) (ret []*ClusterRoleTemplateBinding, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*ClusterRoleTemplateBinding))
})
return
}
func (l *clusterRoleTemplateBindingLister) Get(namespace, name string) (*ClusterRoleTemplateBinding, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ClusterRoleTemplateBindingGroupVersionKind.Group,
Resource: "clusterRoleTemplateBinding",
}, name)
}
return obj.(*ClusterRoleTemplateBinding), nil
}
type clusterRoleTemplateBindingController struct {
controller.GenericController
}
func (c *clusterRoleTemplateBindingController) Lister() ClusterRoleTemplateBindingLister {
return &clusterRoleTemplateBindingLister{
controller: c,
}
}
func (c *clusterRoleTemplateBindingController) AddHandler(handler ClusterRoleTemplateBindingHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *clusterRoleTemplateBindingClient) Controller() ClusterRoleTemplateBindi
}
s.client.clusterRoleTemplateBindingControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type clusterRoleTemplateBindingClient struct {
controller ClusterRoleTemplateBindingController
}
func (s *clusterRoleTemplateBindingClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *clusterRoleTemplateBindingClient) Create(o *ClusterRoleTemplateBinding) (*ClusterRoleTemplateBinding, error) {
obj, err := s.objectClient.Create(o)
return obj.(*ClusterRoleTemplateBinding), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ClusterRoleTemplateList struct {
type ClusterRoleTemplateHandlerFunc func(key string, obj *ClusterRoleTemplate) error
type ClusterRoleTemplateLister interface {
List(namespace string, selector labels.Selector) (ret []*ClusterRoleTemplate, err error)
Get(namespace, name string) (*ClusterRoleTemplate, error)
}
type ClusterRoleTemplateController interface {
Informer() cache.SharedIndexInformer
Lister() ClusterRoleTemplateLister
AddHandler(handler ClusterRoleTemplateHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ClusterRoleTemplateInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*ClusterRoleTemplate) (*ClusterRoleTemplate, error)
Get(name string, opts metav1.GetOptions) (*ClusterRoleTemplate, error)
Update(*ClusterRoleTemplate) (*ClusterRoleTemplate, error)
@ -52,10 +62,41 @@ type ClusterRoleTemplateInterface interface {
Controller() ClusterRoleTemplateController
}
type clusterRoleTemplateLister struct {
controller *clusterRoleTemplateController
}
func (l *clusterRoleTemplateLister) List(namespace string, selector labels.Selector) (ret []*ClusterRoleTemplate, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*ClusterRoleTemplate))
})
return
}
func (l *clusterRoleTemplateLister) Get(namespace, name string) (*ClusterRoleTemplate, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ClusterRoleTemplateGroupVersionKind.Group,
Resource: "clusterRoleTemplate",
}, name)
}
return obj.(*ClusterRoleTemplate), nil
}
type clusterRoleTemplateController struct {
controller.GenericController
}
func (c *clusterRoleTemplateController) Lister() ClusterRoleTemplateLister {
return &clusterRoleTemplateLister{
controller: c,
}
}
func (c *clusterRoleTemplateController) AddHandler(handler ClusterRoleTemplateHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *clusterRoleTemplateClient) Controller() ClusterRoleTemplateController {
}
s.client.clusterRoleTemplateControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type clusterRoleTemplateClient struct {
controller ClusterRoleTemplateController
}
func (s *clusterRoleTemplateClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *clusterRoleTemplateClient) Create(o *ClusterRoleTemplate) (*ClusterRoleTemplate, error) {
obj, err := s.objectClient.Create(o)
return obj.(*ClusterRoleTemplate), err

View File

@ -1,15 +1,18 @@
package v1
import (
"context"
"sync"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/rest"
)
type Interface interface {
RESTClient() rest.Interface
controller.Starter
ProjectsGetter
ProjectRoleTemplatesGetter
@ -22,6 +25,7 @@ type Interface interface {
type Client struct {
sync.Mutex
restClient rest.Interface
starters []controller.Starter
projectControllers map[string]ProjectController
projectRoleTemplateControllers map[string]ProjectRoleTemplateController
@ -58,6 +62,14 @@ func (c *Client) RESTClient() rest.Interface {
return c.restClient
}
func (c *Client) Sync(ctx context.Context) error {
return controller.Sync(ctx, c.starters...)
}
func (c *Client) Start(ctx context.Context, threadiness int) error {
return controller.Start(ctx, threadiness, c.starters...)
}
type ProjectsGetter interface {
Projects(namespace string) ProjectInterface
}

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type PodSecurityPolicyTemplateList struct {
type PodSecurityPolicyTemplateHandlerFunc func(key string, obj *PodSecurityPolicyTemplate) error
type PodSecurityPolicyTemplateLister interface {
List(namespace string, selector labels.Selector) (ret []*PodSecurityPolicyTemplate, err error)
Get(namespace, name string) (*PodSecurityPolicyTemplate, error)
}
type PodSecurityPolicyTemplateController interface {
Informer() cache.SharedIndexInformer
Lister() PodSecurityPolicyTemplateLister
AddHandler(handler PodSecurityPolicyTemplateHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type PodSecurityPolicyTemplateInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*PodSecurityPolicyTemplate) (*PodSecurityPolicyTemplate, error)
Get(name string, opts metav1.GetOptions) (*PodSecurityPolicyTemplate, error)
Update(*PodSecurityPolicyTemplate) (*PodSecurityPolicyTemplate, error)
@ -52,10 +62,41 @@ type PodSecurityPolicyTemplateInterface interface {
Controller() PodSecurityPolicyTemplateController
}
type podSecurityPolicyTemplateLister struct {
controller *podSecurityPolicyTemplateController
}
func (l *podSecurityPolicyTemplateLister) List(namespace string, selector labels.Selector) (ret []*PodSecurityPolicyTemplate, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*PodSecurityPolicyTemplate))
})
return
}
func (l *podSecurityPolicyTemplateLister) Get(namespace, name string) (*PodSecurityPolicyTemplate, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: PodSecurityPolicyTemplateGroupVersionKind.Group,
Resource: "podSecurityPolicyTemplate",
}, name)
}
return obj.(*PodSecurityPolicyTemplate), nil
}
type podSecurityPolicyTemplateController struct {
controller.GenericController
}
func (c *podSecurityPolicyTemplateController) Lister() PodSecurityPolicyTemplateLister {
return &podSecurityPolicyTemplateLister{
controller: c,
}
}
func (c *podSecurityPolicyTemplateController) AddHandler(handler PodSecurityPolicyTemplateHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *podSecurityPolicyTemplateClient) Controller() PodSecurityPolicyTemplate
}
s.client.podSecurityPolicyTemplateControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type podSecurityPolicyTemplateClient struct {
controller PodSecurityPolicyTemplateController
}
func (s *podSecurityPolicyTemplateClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *podSecurityPolicyTemplateClient) Create(o *PodSecurityPolicyTemplate) (*PodSecurityPolicyTemplate, error) {
obj, err := s.objectClient.Create(o)
return obj.(*PodSecurityPolicyTemplate), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ProjectList struct {
type ProjectHandlerFunc func(key string, obj *Project) error
type ProjectLister interface {
List(namespace string, selector labels.Selector) (ret []*Project, err error)
Get(namespace, name string) (*Project, error)
}
type ProjectController interface {
Informer() cache.SharedIndexInformer
Lister() ProjectLister
AddHandler(handler ProjectHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ProjectInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*Project) (*Project, error)
Get(name string, opts metav1.GetOptions) (*Project, error)
Update(*Project) (*Project, error)
@ -52,10 +62,41 @@ type ProjectInterface interface {
Controller() ProjectController
}
type projectLister struct {
controller *projectController
}
func (l *projectLister) List(namespace string, selector labels.Selector) (ret []*Project, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*Project))
})
return
}
func (l *projectLister) Get(namespace, name string) (*Project, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ProjectGroupVersionKind.Group,
Resource: "project",
}, name)
}
return obj.(*Project), nil
}
type projectController struct {
controller.GenericController
}
func (c *projectController) Lister() ProjectLister {
return &projectLister{
controller: c,
}
}
func (c *projectController) AddHandler(handler ProjectHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *projectClient) Controller() ProjectController {
}
s.client.projectControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type projectClient struct {
controller ProjectController
}
func (s *projectClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *projectClient) Create(o *Project) (*Project, error) {
obj, err := s.objectClient.Create(o)
return obj.(*Project), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ProjectRoleTemplateBindingList struct {
type ProjectRoleTemplateBindingHandlerFunc func(key string, obj *ProjectRoleTemplateBinding) error
type ProjectRoleTemplateBindingLister interface {
List(namespace string, selector labels.Selector) (ret []*ProjectRoleTemplateBinding, err error)
Get(namespace, name string) (*ProjectRoleTemplateBinding, error)
}
type ProjectRoleTemplateBindingController interface {
Informer() cache.SharedIndexInformer
Lister() ProjectRoleTemplateBindingLister
AddHandler(handler ProjectRoleTemplateBindingHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ProjectRoleTemplateBindingInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*ProjectRoleTemplateBinding) (*ProjectRoleTemplateBinding, error)
Get(name string, opts metav1.GetOptions) (*ProjectRoleTemplateBinding, error)
Update(*ProjectRoleTemplateBinding) (*ProjectRoleTemplateBinding, error)
@ -52,10 +62,41 @@ type ProjectRoleTemplateBindingInterface interface {
Controller() ProjectRoleTemplateBindingController
}
type projectRoleTemplateBindingLister struct {
controller *projectRoleTemplateBindingController
}
func (l *projectRoleTemplateBindingLister) List(namespace string, selector labels.Selector) (ret []*ProjectRoleTemplateBinding, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*ProjectRoleTemplateBinding))
})
return
}
func (l *projectRoleTemplateBindingLister) Get(namespace, name string) (*ProjectRoleTemplateBinding, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ProjectRoleTemplateBindingGroupVersionKind.Group,
Resource: "projectRoleTemplateBinding",
}, name)
}
return obj.(*ProjectRoleTemplateBinding), nil
}
type projectRoleTemplateBindingController struct {
controller.GenericController
}
func (c *projectRoleTemplateBindingController) Lister() ProjectRoleTemplateBindingLister {
return &projectRoleTemplateBindingLister{
controller: c,
}
}
func (c *projectRoleTemplateBindingController) AddHandler(handler ProjectRoleTemplateBindingHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *projectRoleTemplateBindingClient) Controller() ProjectRoleTemplateBindi
}
s.client.projectRoleTemplateBindingControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type projectRoleTemplateBindingClient struct {
controller ProjectRoleTemplateBindingController
}
func (s *projectRoleTemplateBindingClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *projectRoleTemplateBindingClient) Create(o *ProjectRoleTemplateBinding) (*ProjectRoleTemplateBinding, error) {
obj, err := s.objectClient.Create(o)
return obj.(*ProjectRoleTemplateBinding), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ProjectRoleTemplateList struct {
type ProjectRoleTemplateHandlerFunc func(key string, obj *ProjectRoleTemplate) error
type ProjectRoleTemplateLister interface {
List(namespace string, selector labels.Selector) (ret []*ProjectRoleTemplate, err error)
Get(namespace, name string) (*ProjectRoleTemplate, error)
}
type ProjectRoleTemplateController interface {
Informer() cache.SharedIndexInformer
Lister() ProjectRoleTemplateLister
AddHandler(handler ProjectRoleTemplateHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ProjectRoleTemplateInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*ProjectRoleTemplate) (*ProjectRoleTemplate, error)
Get(name string, opts metav1.GetOptions) (*ProjectRoleTemplate, error)
Update(*ProjectRoleTemplate) (*ProjectRoleTemplate, error)
@ -52,10 +62,41 @@ type ProjectRoleTemplateInterface interface {
Controller() ProjectRoleTemplateController
}
type projectRoleTemplateLister struct {
controller *projectRoleTemplateController
}
func (l *projectRoleTemplateLister) List(namespace string, selector labels.Selector) (ret []*ProjectRoleTemplate, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*ProjectRoleTemplate))
})
return
}
func (l *projectRoleTemplateLister) Get(namespace, name string) (*ProjectRoleTemplate, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ProjectRoleTemplateGroupVersionKind.Group,
Resource: "projectRoleTemplate",
}, name)
}
return obj.(*ProjectRoleTemplate), nil
}
type projectRoleTemplateController struct {
controller.GenericController
}
func (c *projectRoleTemplateController) Lister() ProjectRoleTemplateLister {
return &projectRoleTemplateLister{
controller: c,
}
}
func (c *projectRoleTemplateController) AddHandler(handler ProjectRoleTemplateHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *projectRoleTemplateClient) Controller() ProjectRoleTemplateController {
}
s.client.projectRoleTemplateControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type projectRoleTemplateClient struct {
controller ProjectRoleTemplateController
}
func (s *projectRoleTemplateClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *projectRoleTemplateClient) Create(o *ProjectRoleTemplate) (*ProjectRoleTemplate, error) {
obj, err := s.objectClient.Create(o)
return obj.(*ProjectRoleTemplate), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ClusterList struct {
type ClusterHandlerFunc func(key string, obj *Cluster) error
type ClusterLister interface {
List(namespace string, selector labels.Selector) (ret []*Cluster, err error)
Get(namespace, name string) (*Cluster, error)
}
type ClusterController interface {
Informer() cache.SharedIndexInformer
Lister() ClusterLister
AddHandler(handler ClusterHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ClusterInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*Cluster) (*Cluster, error)
Get(name string, opts metav1.GetOptions) (*Cluster, error)
Update(*Cluster) (*Cluster, error)
@ -52,10 +62,41 @@ type ClusterInterface interface {
Controller() ClusterController
}
type clusterLister struct {
controller *clusterController
}
func (l *clusterLister) List(namespace string, selector labels.Selector) (ret []*Cluster, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*Cluster))
})
return
}
func (l *clusterLister) Get(namespace, name string) (*Cluster, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ClusterGroupVersionKind.Group,
Resource: "cluster",
}, name)
}
return obj.(*Cluster), nil
}
type clusterController struct {
controller.GenericController
}
func (c *clusterController) Lister() ClusterLister {
return &clusterLister{
controller: c,
}
}
func (c *clusterController) AddHandler(handler ClusterHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *clusterClient) Controller() ClusterController {
}
s.client.clusterControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type clusterClient struct {
controller ClusterController
}
func (s *clusterClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *clusterClient) Create(o *Cluster) (*Cluster, error) {
obj, err := s.objectClient.Create(o)
return obj.(*Cluster), err

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -34,14 +36,22 @@ type ClusterNodeList struct {
type ClusterNodeHandlerFunc func(key string, obj *ClusterNode) error
type ClusterNodeLister interface {
List(namespace string, selector labels.Selector) (ret []*ClusterNode, err error)
Get(namespace, name string) (*ClusterNode, error)
}
type ClusterNodeController interface {
Informer() cache.SharedIndexInformer
Lister() ClusterNodeLister
AddHandler(handler ClusterNodeHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type ClusterNodeInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*ClusterNode) (*ClusterNode, error)
Get(name string, opts metav1.GetOptions) (*ClusterNode, error)
Update(*ClusterNode) (*ClusterNode, error)
@ -52,10 +62,41 @@ type ClusterNodeInterface interface {
Controller() ClusterNodeController
}
type clusterNodeLister struct {
controller *clusterNodeController
}
func (l *clusterNodeLister) List(namespace string, selector labels.Selector) (ret []*ClusterNode, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*ClusterNode))
})
return
}
func (l *clusterNodeLister) Get(namespace, name string) (*ClusterNode, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: ClusterNodeGroupVersionKind.Group,
Resource: "clusterNode",
}, name)
}
return obj.(*ClusterNode), nil
}
type clusterNodeController struct {
controller.GenericController
}
func (c *clusterNodeController) Lister() ClusterNodeLister {
return &clusterNodeLister{
controller: c,
}
}
func (c *clusterNodeController) AddHandler(handler ClusterNodeHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +138,7 @@ func (s *clusterNodeClient) Controller() ClusterNodeController {
}
s.client.clusterNodeControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +150,10 @@ type clusterNodeClient struct {
controller ClusterNodeController
}
func (s *clusterNodeClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *clusterNodeClient) Create(o *ClusterNode) (*ClusterNode, error) {
obj, err := s.objectClient.Create(o)
return obj.(*ClusterNode), err

View File

@ -1,15 +1,18 @@
package v1
import (
"context"
"sync"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/rest"
)
type Interface interface {
RESTClient() rest.Interface
controller.Starter
ClustersGetter
ClusterNodesGetter
@ -18,6 +21,7 @@ type Interface interface {
type Client struct {
sync.Mutex
restClient rest.Interface
starters []controller.Starter
clusterControllers map[string]ClusterController
clusterNodeControllers map[string]ClusterNodeController
@ -46,6 +50,14 @@ func (c *Client) RESTClient() rest.Interface {
return c.restClient
}
func (c *Client) Sync(ctx context.Context) error {
return controller.Sync(ctx, c.starters...)
}
func (c *Client) Start(ctx context.Context, threadiness int) error {
return controller.Start(ctx, threadiness, c.starters...)
}
type ClustersGetter interface {
Clusters(namespace string) ClusterInterface
}

View File

@ -0,0 +1,40 @@
package v1
import (
core_v1 "k8s.io/api/core/v1"
runtime "k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PodList) DeepCopyInto(out *PodList) {
*out = *in
out.TypeMeta = in.TypeMeta
out.ListMeta = in.ListMeta
if in.Items != nil {
in, out := &in.Items, &out.Items
*out = make([]core_v1.Pod, len(*in))
for i := range *in {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodList.
func (in *PodList) DeepCopy() *PodList {
if in == nil {
return nil
}
out := new(PodList)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *PodList) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
} else {
return nil
}
}

View File

@ -0,0 +1,69 @@
package v1
import (
"context"
"sync"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/rest"
)
type Interface interface {
RESTClient() rest.Interface
controller.Starter
PodsGetter
}
type Client struct {
sync.Mutex
restClient rest.Interface
starters []controller.Starter
podControllers map[string]PodController
}
func NewForConfig(config rest.Config) (Interface, error) {
if config.NegotiatedSerializer == nil {
configConfig := dynamic.ContentConfig()
config.NegotiatedSerializer = configConfig.NegotiatedSerializer
}
restClient, err := rest.UnversionedRESTClientFor(&config)
if err != nil {
return nil, err
}
return &Client{
restClient: restClient,
podControllers: map[string]PodController{},
}, nil
}
func (c *Client) RESTClient() rest.Interface {
return c.restClient
}
func (c *Client) Sync(ctx context.Context) error {
return controller.Sync(ctx, c.starters...)
}
func (c *Client) Start(ctx context.Context, threadiness int) error {
return controller.Start(ctx, threadiness, c.starters...)
}
type PodsGetter interface {
Pods(namespace string) PodInterface
}
func (c *Client) Pods(namespace string) PodInterface {
objectClient := clientbase.NewObjectClient(namespace, c.restClient, &PodResource, PodGroupVersionKind, podFactory{})
return &podClient{
ns: namespace,
client: c,
objectClient: objectClient,
}
}

View File

@ -0,0 +1,188 @@
package v1
import (
"context"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
"k8s.io/client-go/tools/cache"
)
var (
PodGroupVersionKind = schema.GroupVersionKind{
Version: "v1",
Group: "",
Kind: "Pod",
}
PodResource = metav1.APIResource{
Name: "pods",
SingularName: "pod",
Namespaced: false,
Kind: PodGroupVersionKind.Kind,
}
)
type PodList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []v1.Pod
}
type PodHandlerFunc func(key string, obj *v1.Pod) error
type PodLister interface {
List(namespace string, selector labels.Selector) (ret []*v1.Pod, err error)
Get(namespace, name string) (*v1.Pod, error)
}
type PodController interface {
Informer() cache.SharedIndexInformer
Lister() PodLister
AddHandler(handler PodHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type PodInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*v1.Pod) (*v1.Pod, error)
Get(name string, opts metav1.GetOptions) (*v1.Pod, error)
Update(*v1.Pod) (*v1.Pod, error)
Delete(name string, options *metav1.DeleteOptions) error
List(opts metav1.ListOptions) (*v1.PodList, error)
Watch(opts metav1.ListOptions) (watch.Interface, error)
DeleteCollection(deleteOpts *metav1.DeleteOptions, listOpts metav1.ListOptions) error
Controller() PodController
}
type podLister struct {
controller *podController
}
func (l *podLister) List(namespace string, selector labels.Selector) (ret []*v1.Pod, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*v1.Pod))
})
return
}
func (l *podLister) Get(namespace, name string) (*v1.Pod, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: PodGroupVersionKind.Group,
Resource: "pod",
}, name)
}
return obj.(*v1.Pod), nil
}
type podController struct {
controller.GenericController
}
func (c *podController) Lister() PodLister {
return &podLister{
controller: c,
}
}
func (c *podController) AddHandler(handler PodHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
if err != nil {
return err
}
if !exists {
return handler(key, nil)
}
return handler(key, obj.(*v1.Pod))
})
}
type podFactory struct {
}
func (c podFactory) Object() runtime.Object {
return &v1.Pod{}
}
func (c podFactory) List() runtime.Object {
return &PodList{}
}
func (s *podClient) Controller() PodController {
s.client.Lock()
defer s.client.Unlock()
c, ok := s.client.podControllers[s.ns]
if ok {
return c
}
genericController := controller.NewGenericController(PodGroupVersionKind.Kind+"Controller",
s.objectClient)
c = &podController{
GenericController: genericController,
}
s.client.podControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
type podClient struct {
client *Client
ns string
objectClient *clientbase.ObjectClient
controller PodController
}
func (s *podClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *podClient) Create(o *v1.Pod) (*v1.Pod, error) {
obj, err := s.objectClient.Create(o)
return obj.(*v1.Pod), err
}
func (s *podClient) Get(name string, opts metav1.GetOptions) (*v1.Pod, error) {
obj, err := s.objectClient.Get(name, opts)
return obj.(*v1.Pod), err
}
func (s *podClient) Update(o *v1.Pod) (*v1.Pod, error) {
obj, err := s.objectClient.Update(o.Name, o)
return obj.(*v1.Pod), err
}
func (s *podClient) Delete(name string, options *metav1.DeleteOptions) error {
return s.objectClient.Delete(name, options)
}
func (s *podClient) List(opts metav1.ListOptions) (*v1.PodList, error) {
obj, err := s.objectClient.List(opts)
return obj.(*v1.PodList), err
}
func (s *podClient) Watch(opts metav1.ListOptions) (watch.Interface, error) {
return s.objectClient.Watch(opts)
}
func (s *podClient) DeleteCollection(deleteOpts *metav1.DeleteOptions, listOpts metav1.ListOptions) error {
return s.objectClient.DeleteCollection(deleteOpts, listOpts)
}

View File

@ -1,15 +1,18 @@
package v1
import (
"context"
"sync"
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/rest"
)
type Interface interface {
RESTClient() rest.Interface
controller.Starter
WorkloadsGetter
}
@ -17,6 +20,7 @@ type Interface interface {
type Client struct {
sync.Mutex
restClient rest.Interface
starters []controller.Starter
workloadControllers map[string]WorkloadController
}
@ -43,6 +47,14 @@ func (c *Client) RESTClient() rest.Interface {
return c.restClient
}
func (c *Client) Sync(ctx context.Context) error {
return controller.Sync(ctx, c.starters...)
}
func (c *Client) Start(ctx context.Context, threadiness int) error {
return controller.Start(ctx, threadiness, c.starters...)
}
type WorkloadsGetter interface {
Workloads(namespace string) WorkloadInterface
}

View File

@ -5,7 +5,9 @@ import (
"github.com/rancher/norman/clientbase"
"github.com/rancher/norman/controller"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/watch"
@ -21,8 +23,9 @@ var (
WorkloadResource = metav1.APIResource{
Name: "workloads",
SingularName: "workload",
Namespaced: false,
Kind: WorkloadGroupVersionKind.Kind,
Namespaced: true,
Kind: WorkloadGroupVersionKind.Kind,
}
)
@ -34,14 +37,22 @@ type WorkloadList struct {
type WorkloadHandlerFunc func(key string, obj *Workload) error
type WorkloadLister interface {
List(namespace string, selector labels.Selector) (ret []*Workload, err error)
Get(namespace, name string) (*Workload, error)
}
type WorkloadController interface {
Informer() cache.SharedIndexInformer
Lister() WorkloadLister
AddHandler(handler WorkloadHandlerFunc)
Enqueue(namespace, name string)
Sync(ctx context.Context) error
Start(ctx context.Context, threadiness int) error
}
type WorkloadInterface interface {
ObjectClient() *clientbase.ObjectClient
Create(*Workload) (*Workload, error)
Get(name string, opts metav1.GetOptions) (*Workload, error)
Update(*Workload) (*Workload, error)
@ -52,10 +63,41 @@ type WorkloadInterface interface {
Controller() WorkloadController
}
type workloadLister struct {
controller *workloadController
}
func (l *workloadLister) List(namespace string, selector labels.Selector) (ret []*Workload, err error) {
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
ret = append(ret, obj.(*Workload))
})
return
}
func (l *workloadLister) Get(namespace, name string) (*Workload, error) {
obj, exists, err := l.controller.Informer().GetIndexer().GetByKey(namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(schema.GroupResource{
Group: WorkloadGroupVersionKind.Group,
Resource: "workload",
}, name)
}
return obj.(*Workload), nil
}
type workloadController struct {
controller.GenericController
}
func (c *workloadController) Lister() WorkloadLister {
return &workloadLister{
controller: c,
}
}
func (c *workloadController) AddHandler(handler WorkloadHandlerFunc) {
c.GenericController.AddHandler(func(key string) error {
obj, exists, err := c.Informer().GetStore().GetByKey(key)
@ -97,6 +139,7 @@ func (s *workloadClient) Controller() WorkloadController {
}
s.client.workloadControllers[s.ns] = c
s.client.starters = append(s.client.starters, c)
return c
}
@ -108,6 +151,10 @@ type workloadClient struct {
controller WorkloadController
}
func (s *workloadClient) ObjectClient() *clientbase.ObjectClient {
return s.objectClient
}
func (s *workloadClient) Create(o *Workload) (*Workload, error) {
obj, err := s.objectClient.Create(o)
return obj.(*Workload), err

View File

@ -1,12 +1,10 @@
package client
const (
AttachedVolumeType = "attachedVolume"
AttachedVolumeFieldDevicePath = "devicePath"
AttachedVolumeFieldName = "name"
AttachedVolumeType = "attachedVolume"
AttachedVolumeFieldName = "name"
)
type AttachedVolume struct {
DevicePath string `json:"devicePath,omitempty"`
Name string `json:"name,omitempty"`
Name string `json:"name,omitempty"`
}

View File

@ -7,8 +7,8 @@ import (
type Client struct {
clientbase.APIBaseClient
Pod PodOperations
Namespace NamespaceOperations
Pod PodOperations
Node NodeOperations
Deployment DeploymentOperations
PersistentVolumeClaim PersistentVolumeClaimOperations
@ -29,8 +29,8 @@ func NewClient(opts *clientbase.ClientOpts) (*Client, error) {
APIBaseClient: baseClient,
}
client.Pod = newPodClient(client)
client.Namespace = newNamespaceClient(client)
client.Pod = newPodClient(client)
client.Node = newNodeClient(client)
client.Deployment = newDeploymentClient(client)
client.PersistentVolumeClaim = newPersistentVolumeClaimClient(client)

View File

@ -12,7 +12,6 @@ const (
ContainerFieldHealthcheck = "healthcheck"
ContainerFieldImage = "image"
ContainerFieldInitContainer = "initContainer"
ContainerFieldName = "name"
ContainerFieldPorts = "ports"
ContainerFieldPostStart = "postStart"
ContainerFieldPreStop = "preStop"
@ -44,7 +43,6 @@ type Container struct {
Healthcheck *Probe `json:"healthcheck,omitempty"`
Image string `json:"image,omitempty"`
InitContainer *bool `json:"initContainer,omitempty"`
Name string `json:"name,omitempty"`
Ports []ContainerPort `json:"ports,omitempty"`
PostStart *Handler `json:"postStart,omitempty"`
PreStop *Handler `json:"preStop,omitempty"`

View File

@ -21,7 +21,7 @@ const (
DaemonSetFieldIPC = "ipc"
DaemonSetFieldLabels = "labels"
DaemonSetFieldName = "name"
DaemonSetFieldNamespace = "namespace"
DaemonSetFieldNamespaceId = "namespaceId"
DaemonSetFieldNet = "net"
DaemonSetFieldNodeId = "nodeId"
DaemonSetFieldOwnerReferences = "ownerReferences"
@ -67,7 +67,7 @@ type DaemonSet struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -21,7 +21,7 @@ const (
DeploymentFieldIPC = "ipc"
DeploymentFieldLabels = "labels"
DeploymentFieldName = "name"
DeploymentFieldNamespace = "namespace"
DeploymentFieldNamespaceId = "namespaceId"
DeploymentFieldNet = "net"
DeploymentFieldNodeId = "nodeId"
DeploymentFieldOwnerReferences = "ownerReferences"
@ -67,7 +67,7 @@ type Deployment struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -3,10 +3,8 @@ package client
const (
HostAliasType = "hostAlias"
HostAliasFieldHostnames = "hostnames"
HostAliasFieldIP = "ip"
)
type HostAlias struct {
Hostnames []string `json:"hostnames,omitempty"`
IP string `json:"ip,omitempty"`
}

View File

@ -19,7 +19,7 @@ const (
PodFieldIPC = "ipc"
PodFieldLabels = "labels"
PodFieldName = "name"
PodFieldNamespace = "namespace"
PodFieldNamespaceId = "namespaceId"
PodFieldNet = "net"
PodFieldNodeId = "nodeId"
PodFieldOwnerReferences = "ownerReferences"
@ -62,7 +62,7 @@ type Pod struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -21,7 +21,7 @@ const (
ReplicaSetFieldIPC = "ipc"
ReplicaSetFieldLabels = "labels"
ReplicaSetFieldName = "name"
ReplicaSetFieldNamespace = "namespace"
ReplicaSetFieldNamespaceId = "namespaceId"
ReplicaSetFieldNet = "net"
ReplicaSetFieldNodeId = "nodeId"
ReplicaSetFieldOwnerReferences = "ownerReferences"
@ -65,7 +65,7 @@ type ReplicaSet struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -21,7 +21,7 @@ const (
ReplicationControllerFieldIPC = "ipc"
ReplicationControllerFieldLabels = "labels"
ReplicationControllerFieldName = "name"
ReplicationControllerFieldNamespace = "namespace"
ReplicationControllerFieldNamespaceId = "namespaceId"
ReplicationControllerFieldNet = "net"
ReplicationControllerFieldNodeId = "nodeId"
ReplicationControllerFieldOwnerReferences = "ownerReferences"
@ -65,7 +65,7 @@ type ReplicationController struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -21,7 +21,7 @@ const (
StatefulSetFieldIPC = "ipc"
StatefulSetFieldLabels = "labels"
StatefulSetFieldName = "name"
StatefulSetFieldNamespace = "namespace"
StatefulSetFieldNamespaceId = "namespaceId"
StatefulSetFieldNet = "net"
StatefulSetFieldNodeId = "nodeId"
StatefulSetFieldOwnerReferences = "ownerReferences"
@ -70,7 +70,7 @@ type StatefulSet struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`

View File

@ -19,7 +19,6 @@ const (
VolumeFieldHostPath = "hostPath"
VolumeFieldISCSI = "iscsi"
VolumeFieldNFS = "nfs"
VolumeFieldName = "name"
VolumeFieldPersistentVolumeClaim = "persistentVolumeClaim"
VolumeFieldPhotonPersistentDisk = "photonPersistentDisk"
VolumeFieldPortworxVolume = "portworxVolume"
@ -50,7 +49,6 @@ type Volume struct {
HostPath *HostPathVolumeSource `json:"hostPath,omitempty"`
ISCSI *ISCSIVolumeSource `json:"iscsi,omitempty"`
NFS *NFSVolumeSource `json:"nfs,omitempty"`
Name string `json:"name,omitempty"`
PersistentVolumeClaim *PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
PhotonPersistentDisk *PhotonPersistentDiskVolumeSource `json:"photonPersistentDisk,omitempty"`
PortworxVolume *PortworxVolumeSource `json:"portworxVolume,omitempty"`

View File

@ -21,7 +21,7 @@ const (
WorkloadFieldIPC = "ipc"
WorkloadFieldLabels = "labels"
WorkloadFieldName = "name"
WorkloadFieldNamespace = "namespace"
WorkloadFieldNamespaceId = "namespaceId"
WorkloadFieldNet = "net"
WorkloadFieldNodeId = "nodeId"
WorkloadFieldOwnerReferences = "ownerReferences"
@ -65,7 +65,7 @@ type Workload struct {
IPC string `json:"ipc,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name,omitempty"`
Namespace string `json:"namespace,omitempty"`
NamespaceId string `json:"namespaceId,omitempty"`
Net string `json:"net,omitempty"`
NodeId string `json:"nodeId,omitempty"`
OwnerReferences []OwnerReference `json:"ownerReferences,omitempty"`