UNPKG

cdktf-crd

Version:
195 lines (194 loc) 13 kB
import { Manifest, type ManifestConfig } from "@cdktf/provider-kubernetes/lib/manifest"; import { Construct } from "constructs"; export declare class KubernetesUpdateRequestV1beta1Manifest extends Manifest { constructor(scope: Construct, id: string, config: KubernetesUpdateRequestV1beta1ManifestConfig); } export interface KubernetesUpdateRequestV1beta1ManifestConfig extends ManifestConfig { manifest: { apiVersion?: "kyverno.io/v1beta1"; kind?: "UpdateRequest"; metadata: { annotations?: { [key: string]: string; }; labels?: { [key: string]: string; }; name: string; namespace?: string; }; /** @description ResourceSpec is the information to identify the trigger resource. */ spec?: { /** @description Context ... */ context: { /** @description AdmissionRequestInfoObject stores the admission request and operation details */ admissionRequestInfo?: { /** @description AdmissionRequest describes the admission.Attributes for the admission request. */ admissionRequest?: { /** @description DryRun indicates that modifications will definitely not be persisted for this request. * Defaults to false. */ dryRun?: boolean; /** @description Kind is the fully-qualified type of object being submitted (for example, v1.Pod or autoscaling.v1.Scale) */ kind: { group: string; kind: string; version: string; }; /** @description Name is the name of the object as presented in the request. On a CREATE operation, the client may omit name and * rely on the server to generate the name. If that is the case, this field will contain an empty string. */ name?: string; /** @description Namespace is the namespace associated with the request (if any). */ namespace?: string; /** @description Object is the object from the incoming request. */ object?: Record<string, never>; /** @description OldObject is the existing object. Only populated for DELETE and UPDATE requests. */ oldObject?: Record<string, never>; /** @description Operation is the operation being performed. This may be different than the operation * requested. e.g. a patch can result in either a CREATE or UPDATE Operation. */ operation: string; /** @description Options is the operation option structure of the operation being performed. * e.g. `meta.k8s.io/v1.DeleteOptions` or `meta.k8s.io/v1.CreateOptions`. This may be * different than the options the caller provided. e.g. for a patch request the performed * Operation might be a CREATE, in which case the Options will a * `meta.k8s.io/v1.CreateOptions` even though the caller provided `meta.k8s.io/v1.PatchOptions`. */ options?: Record<string, never>; /** @description RequestKind is the fully-qualified type of the original API request (for example, v1.Pod or autoscaling.v1.Scale). * If this is specified and differs from the value in "kind", an equivalent match and conversion was performed. * * For example, if deployments can be modified via apps/v1 and apps/v1beta1, and a webhook registered a rule of * `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]` and `matchPolicy: Equivalent`, * an API request to apps/v1beta1 deployments would be converted and sent to the webhook * with `kind: {group:"apps", version:"v1", kind:"Deployment"}` (matching the rule the webhook registered for), * and `requestKind: {group:"apps", version:"v1beta1", kind:"Deployment"}` (indicating the kind of the original API request). * * See documentation for the "matchPolicy" field in the webhook configuration type for more details. */ requestKind?: { group: string; kind: string; version: string; }; /** @description RequestResource is the fully-qualified resource of the original API request (for example, v1.pods). * If this is specified and differs from the value in "resource", an equivalent match and conversion was performed. * * For example, if deployments can be modified via apps/v1 and apps/v1beta1, and a webhook registered a rule of * `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]` and `matchPolicy: Equivalent`, * an API request to apps/v1beta1 deployments would be converted and sent to the webhook * with `resource: {group:"apps", version:"v1", resource:"deployments"}` (matching the resource the webhook registered for), * and `requestResource: {group:"apps", version:"v1beta1", resource:"deployments"}` (indicating the resource of the original API request). * * See documentation for the "matchPolicy" field in the webhook configuration type. */ requestResource?: { group: string; resource: string; version: string; }; /** @description RequestSubResource is the name of the subresource of the original API request, if any (for example, "status" or "scale") * If this is specified and differs from the value in "subResource", an equivalent match and conversion was performed. * See documentation for the "matchPolicy" field in the webhook configuration type. */ requestSubResource?: string; /** @description Resource is the fully-qualified resource being requested (for example, v1.pods) */ resource: { group: string; resource: string; version: string; }; /** @description SubResource is the subresource being requested, if any (for example, "status" or "scale") */ subResource?: string; /** @description UID is an identifier for the individual request/response. It allows us to distinguish instances of requests which are * otherwise identical (parallel requests, requests when earlier requests did not modify etc) * The UID is meant to track the round trip (request/response) between the KAS and the WebHook, not the user request. * It is suitable for correlating log entries between the webhook and apiserver, for either auditing or debugging. */ uid: string; /** @description UserInfo is information about the requesting user */ userInfo: { /** @description Any additional information provided by the authenticator. */ extra?: { [key: string]: string[]; }; /** @description The names of groups this user is a part of. */ groups?: string[]; /** @description A unique value that identifies this user across time. If this user is * deleted and another user by the same name is added, they will have * different UIDs. */ uid?: string; /** @description The name that uniquely identifies this user among all active users. */ username?: string; }; }; /** @description Operation is the type of resource operation being checked for admission control */ operation?: string; }; /** @description RequestInfo contains permission info carried in an admission request. */ userInfo?: { /** @description ClusterRoles is a list of possible clusterRoles send the request. */ clusterRoles?: string[] | null; /** @description Roles is a list of possible role send the request. */ roles?: string[] | null; /** @description UserInfo is the userInfo carried in the admission request. */ userInfo?: { /** @description Any additional information provided by the authenticator. */ extra?: { [key: string]: string[]; }; /** @description The names of groups this user is a part of. */ groups?: string[]; /** @description A unique value that identifies this user across time. If this user is * deleted and another user by the same name is added, they will have * different UIDs. */ uid?: string; /** @description The name that uniquely identifies this user among all active users. */ username?: string; }; }; }; /** @description DeleteDownstream represents whether the downstream needs to be deleted. */ deleteDownstream: boolean; /** @description Specifies the name of the policy. */ policy: string; /** @description Type represents request type for background processing */ requestType?: string; /** @description ResourceSpec is the information to identify the trigger resource. */ resource: { /** @description APIVersion specifies resource apiVersion. */ apiVersion?: string; /** @description Kind specifies resource kind. */ kind?: string; /** @description Name specifies the resource name. */ name?: string; /** @description Namespace specifies resource namespace. */ namespace?: string; /** @description UID specifies the resource uid. */ uid?: string; }; /** @description Rule is the associate rule name of the current UR. */ rule: string; /** @description Synchronize represents the sync behavior of the corresponding rule * Optional. Defaults to "false" if not specified. */ synchronize?: boolean; }; /** @description Status contains statistics related to update request. */ status?: { /** @description This will track the resources that are updated by the generate Policy. * Will be used during clean up resources. */ generatedResources?: { /** @description APIVersion specifies resource apiVersion. */ apiVersion?: string; /** @description Kind specifies resource kind. */ kind?: string; /** @description Name specifies the resource name. */ name?: string; /** @description Namespace specifies resource namespace. */ namespace?: string; /** @description UID specifies the resource uid. */ uid?: string; }[]; /** @description Deprecated */ handler?: string; /** @description Specifies request status message. */ message?: string; retryCount?: number; /** @description State represents state of the update request. */ state: string; }; }; }