diff --git a/pkg/clients/wrappers/kyverno/v1/generaterequest.go b/pkg/clients/wrappers/kyverno/v1/generaterequest.go new file mode 100644 index 0000000000..50bafaa735 --- /dev/null +++ b/pkg/clients/wrappers/kyverno/v1/generaterequest.go @@ -0,0 +1,62 @@ +package v1 + +import ( + "context" + + kyvernov1 "github.com/kyverno/kyverno/api/kyverno/v1" + v1 "github.com/kyverno/kyverno/pkg/client/clientset/versioned/typed/kyverno/v1" + "github.com/kyverno/kyverno/pkg/clients/wrappers/utils" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/types" + "k8s.io/apimachinery/pkg/watch" +) + +type generateRequest struct { + inner v1.GenerateRequestInterface + clientQueryMetric utils.ClientQueryMetric + ns string +} + +func wrapGenerateRequests(c v1.GenerateRequestInterface, m utils.ClientQueryMetric, namespace string) v1.GenerateRequestInterface { + return &generateRequest{ + inner: c, + clientQueryMetric: m, + ns: namespace, + } +} + +func (c *generateRequest) Create(ctx context.Context, o *kyvernov1.GenerateRequest, opts metav1.CreateOptions) (*kyvernov1.GenerateRequest, error) { + return utils.Create(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, o, opts, c.inner.Create) +} + +func (c *generateRequest) Update(ctx context.Context, o *kyvernov1.GenerateRequest, opts metav1.UpdateOptions) (*kyvernov1.GenerateRequest, error) { + return utils.Update(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, o, opts, c.inner.Update) +} + +func (c *generateRequest) UpdateStatus(ctx context.Context, o *kyvernov1.GenerateRequest, opts metav1.UpdateOptions) (*kyvernov1.GenerateRequest, error) { + return utils.UpdateStatus(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, o, opts, c.inner.UpdateStatus) +} + +func (c *generateRequest) Delete(ctx context.Context, name string, opts metav1.DeleteOptions) error { + return utils.Delete(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, name, opts, c.inner.Delete) +} + +func (c *generateRequest) DeleteCollection(ctx context.Context, opts metav1.DeleteOptions, listOpts metav1.ListOptions) error { + return utils.DeleteCollection(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, opts, listOpts, c.inner.DeleteCollection) +} + +func (c *generateRequest) Get(ctx context.Context, name string, opts metav1.GetOptions) (*kyvernov1.GenerateRequest, error) { + return utils.Get(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, name, opts, c.inner.Get) +} + +func (c *generateRequest) List(ctx context.Context, opts metav1.ListOptions) (*kyvernov1.GenerateRequestList, error) { + return utils.List(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, opts, c.inner.List) +} + +func (c *generateRequest) Watch(ctx context.Context, opts metav1.ListOptions) (watch.Interface, error) { + return utils.Watch(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, opts, c.inner.Watch) +} + +func (c *generateRequest) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts metav1.PatchOptions, subresources ...string) (*kyvernov1.GenerateRequest, error) { + return utils.Patch(ctx, c.clientQueryMetric, "GenerateRequest", c.ns, name, pt, data, opts, c.inner.Patch, subresources...) +} diff --git a/pkg/clients/wrappers/kyverno/v1/kyverno_client.go b/pkg/clients/wrappers/kyverno/v1/kyverno_client.go index 9ff4feab9a..08de333e30 100644 --- a/pkg/clients/wrappers/kyverno/v1/kyverno_client.go +++ b/pkg/clients/wrappers/kyverno/v1/kyverno_client.go @@ -3,19 +3,28 @@ package v1 import ( v1 "github.com/kyverno/kyverno/pkg/client/clientset/versioned/typed/kyverno/v1" "github.com/kyverno/kyverno/pkg/clients/wrappers/utils" + "k8s.io/client-go/rest" ) type client struct { - v1.KyvernoV1Interface + inner v1.KyvernoV1Interface clientQueryMetric utils.ClientQueryMetric } func (c *client) ClusterPolicies() v1.ClusterPolicyInterface { - return wrapClusterPolicies(c.KyvernoV1Interface.ClusterPolicies(), c.clientQueryMetric) + return wrapClusterPolicies(c.inner.ClusterPolicies(), c.clientQueryMetric) } func (c *client) Policies(namespace string) v1.PolicyInterface { - return wrapPolicies(c.KyvernoV1Interface.Policies(namespace), c.clientQueryMetric, namespace) + return wrapPolicies(c.inner.Policies(namespace), c.clientQueryMetric, namespace) +} + +func (c *client) GenerateRequests(namespace string) v1.GenerateRequestInterface { + return wrapGenerateRequests(c.inner.GenerateRequests(namespace), c.clientQueryMetric, namespace) +} + +func (c *client) RESTClient() rest.Interface { + return c.inner.RESTClient() } func Wrap(inner v1.KyvernoV1Interface, m utils.ClientQueryMetric) v1.KyvernoV1Interface { diff --git a/pkg/clients/wrappers/kyverno/v1alpha2/kyverno_client.go b/pkg/clients/wrappers/kyverno/v1alpha2/kyverno_client.go index 113b9c3394..bbf845e568 100644 --- a/pkg/clients/wrappers/kyverno/v1alpha2/kyverno_client.go +++ b/pkg/clients/wrappers/kyverno/v1alpha2/kyverno_client.go @@ -3,19 +3,24 @@ package v1alpha2 import ( "github.com/kyverno/kyverno/pkg/client/clientset/versioned/typed/kyverno/v1alpha2" "github.com/kyverno/kyverno/pkg/clients/wrappers/utils" + "k8s.io/client-go/rest" ) type client struct { - v1alpha2.KyvernoV1alpha2Interface + inner v1alpha2.KyvernoV1alpha2Interface clientQueryMetric utils.ClientQueryMetric } func (c *client) ClusterReportChangeRequests() v1alpha2.ClusterReportChangeRequestInterface { - return wrapClusterReportChangeRequests(c.KyvernoV1alpha2Interface.ClusterReportChangeRequests(), c.clientQueryMetric) + return wrapClusterReportChangeRequests(c.inner.ClusterReportChangeRequests(), c.clientQueryMetric) } func (c *client) ReportChangeRequests(namespace string) v1alpha2.ReportChangeRequestInterface { - return wrapReportChangeRequests(c.KyvernoV1alpha2Interface.ReportChangeRequests(namespace), c.clientQueryMetric, namespace) + return wrapReportChangeRequests(c.inner.ReportChangeRequests(namespace), c.clientQueryMetric, namespace) +} + +func (c *client) RESTClient() rest.Interface { + return c.inner.RESTClient() } func Wrap(inner v1alpha2.KyvernoV1alpha2Interface, m utils.ClientQueryMetric) v1alpha2.KyvernoV1alpha2Interface { diff --git a/pkg/clients/wrappers/kyverno/v1beta1/kyverno_client.go b/pkg/clients/wrappers/kyverno/v1beta1/kyverno_client.go index 7a94d08d32..4404a4c8be 100644 --- a/pkg/clients/wrappers/kyverno/v1beta1/kyverno_client.go +++ b/pkg/clients/wrappers/kyverno/v1beta1/kyverno_client.go @@ -3,15 +3,20 @@ package v1beta1 import ( "github.com/kyverno/kyverno/pkg/client/clientset/versioned/typed/kyverno/v1beta1" "github.com/kyverno/kyverno/pkg/clients/wrappers/utils" + "k8s.io/client-go/rest" ) type client struct { - v1beta1.KyvernoV1beta1Interface + inner v1beta1.KyvernoV1beta1Interface clientQueryMetric utils.ClientQueryMetric } func (c *client) UpdateRequests(namespace string) v1beta1.UpdateRequestInterface { - return wrapUpdateRequests(c.KyvernoV1beta1Interface.UpdateRequests(namespace), c.clientQueryMetric, namespace) + return wrapUpdateRequests(c.inner.UpdateRequests(namespace), c.clientQueryMetric, namespace) +} + +func (c *client) RESTClient() rest.Interface { + return c.inner.RESTClient() } func Wrap(inner v1beta1.KyvernoV1beta1Interface, m utils.ClientQueryMetric) v1beta1.KyvernoV1beta1Interface { diff --git a/pkg/clients/wrappers/policyreport/v1alpha2/policyreport_client.go b/pkg/clients/wrappers/policyreport/v1alpha2/policyreport_client.go index ddd3fc65e9..2184f13d35 100644 --- a/pkg/clients/wrappers/policyreport/v1alpha2/policyreport_client.go +++ b/pkg/clients/wrappers/policyreport/v1alpha2/policyreport_client.go @@ -3,19 +3,24 @@ package v1alpha2 import ( "github.com/kyverno/kyverno/pkg/client/clientset/versioned/typed/policyreport/v1alpha2" "github.com/kyverno/kyverno/pkg/clients/wrappers/utils" + "k8s.io/client-go/rest" ) type client struct { - v1alpha2.Wgpolicyk8sV1alpha2Interface + inner v1alpha2.Wgpolicyk8sV1alpha2Interface clientQueryMetric utils.ClientQueryMetric } func (c *client) ClusterPolicyReports() v1alpha2.ClusterPolicyReportInterface { - return wrapClusterPolicyReports(c.Wgpolicyk8sV1alpha2Interface.ClusterPolicyReports(), c.clientQueryMetric) + return wrapClusterPolicyReports(c.inner.ClusterPolicyReports(), c.clientQueryMetric) } func (c *client) PolicyReports(namespace string) v1alpha2.PolicyReportInterface { - return wrapPolicyReports(c.Wgpolicyk8sV1alpha2Interface.PolicyReports(namespace), c.clientQueryMetric, namespace) + return wrapPolicyReports(c.inner.PolicyReports(namespace), c.clientQueryMetric, namespace) +} + +func (c *client) RESTClient() rest.Interface { + return c.inner.RESTClient() } func Wrap(inner v1alpha2.Wgpolicyk8sV1alpha2Interface, m utils.ClientQueryMetric) v1alpha2.Wgpolicyk8sV1alpha2Interface {