UNPKG

k8ts

Version:

Powerful framework for building Kubernetes manifests in TypeScript.

1,575 lines (1,429 loc) 1.11 MB
// generated by cdk8s import { ApiObject, GroupVersionKind } from "cdk8s" import { Construct } from "constructs" /** * MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or * reject and may change the object. * * @schema io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration */ export class KubeMutatingWebhookConfiguration extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration" */ public static readonly GVK: GroupVersionKind = { apiVersion: "admissionregistration.k8s.io/v1", kind: "MutatingWebhookConfiguration" } /** * Renders a Kubernetes manifest for * "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeMutatingWebhookConfigurationProps = {}): any { return { ...KubeMutatingWebhookConfiguration.GVK, ...toJson_KubeMutatingWebhookConfigurationProps(props) } } /** * Defines a "io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeMutatingWebhookConfigurationProps = {} ) { super(scope, id, { ...KubeMutatingWebhookConfiguration.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeMutatingWebhookConfiguration.GVK, ...toJson_KubeMutatingWebhookConfigurationProps(resolved) } } } /** * MutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration. * * @schema io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList */ export class KubeMutatingWebhookConfigurationList extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "admissionregistration.k8s.io/v1", kind: "MutatingWebhookConfigurationList" } /** * Renders a Kubernetes manifest for * "io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeMutatingWebhookConfigurationListProps): any { return { ...KubeMutatingWebhookConfigurationList.GVK, ...toJson_KubeMutatingWebhookConfigurationListProps(props) } } /** * Defines a "io.k8s.api.admissionregistration.v1.MutatingWebhookConfigurationList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeMutatingWebhookConfigurationListProps ) { super(scope, id, { ...KubeMutatingWebhookConfigurationList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeMutatingWebhookConfigurationList.GVK, ...toJson_KubeMutatingWebhookConfigurationListProps(resolved) } } } /** * ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept * or reject and object without changing it. * * @schema io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration */ export class KubeValidatingWebhookConfiguration extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration" */ public static readonly GVK: GroupVersionKind = { apiVersion: "admissionregistration.k8s.io/v1", kind: "ValidatingWebhookConfiguration" } /** * Renders a Kubernetes manifest for * "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeValidatingWebhookConfigurationProps = {}): any { return { ...KubeValidatingWebhookConfiguration.GVK, ...toJson_KubeValidatingWebhookConfigurationProps(props) } } /** * Defines a "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeValidatingWebhookConfigurationProps = {} ) { super(scope, id, { ...KubeValidatingWebhookConfiguration.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeValidatingWebhookConfiguration.GVK, ...toJson_KubeValidatingWebhookConfigurationProps(resolved) } } } /** * ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration. * * @schema io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList */ export class KubeValidatingWebhookConfigurationList extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "admissionregistration.k8s.io/v1", kind: "ValidatingWebhookConfigurationList" } /** * Renders a Kubernetes manifest for * "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeValidatingWebhookConfigurationListProps): any { return { ...KubeValidatingWebhookConfigurationList.GVK, ...toJson_KubeValidatingWebhookConfigurationListProps(props) } } /** * Defines a "io.k8s.api.admissionregistration.v1.ValidatingWebhookConfigurationList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeValidatingWebhookConfigurationListProps ) { super(scope, id, { ...KubeValidatingWebhookConfigurationList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeValidatingWebhookConfigurationList.GVK, ...toJson_KubeValidatingWebhookConfigurationListProps(resolved) } } } /** * Storage version of a specific resource. * * @schema io.k8s.api.apiserverinternal.v1alpha1.StorageVersion */ export class KubeStorageVersionV1Alpha1 extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion" */ public static readonly GVK: GroupVersionKind = { apiVersion: "internal.apiserver.k8s.io/v1alpha1", kind: "StorageVersion" } /** * Renders a Kubernetes manifest for "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeStorageVersionV1Alpha1Props): any { return { ...KubeStorageVersionV1Alpha1.GVK, ...toJson_KubeStorageVersionV1Alpha1Props(props) } } /** * Defines a "io.k8s.api.apiserverinternal.v1alpha1.StorageVersion" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeStorageVersionV1Alpha1Props) { super(scope, id, { ...KubeStorageVersionV1Alpha1.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeStorageVersionV1Alpha1.GVK, ...toJson_KubeStorageVersionV1Alpha1Props(resolved) } } } /** * A list of StorageVersions. * * @schema io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList */ export class KubeStorageVersionListV1Alpha1 extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "internal.apiserver.k8s.io/v1alpha1", kind: "StorageVersionList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeStorageVersionListV1Alpha1Props): any { return { ...KubeStorageVersionListV1Alpha1.GVK, ...toJson_KubeStorageVersionListV1Alpha1Props(props) } } /** * Defines a "io.k8s.api.apiserverinternal.v1alpha1.StorageVersionList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeStorageVersionListV1Alpha1Props) { super(scope, id, { ...KubeStorageVersionListV1Alpha1.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeStorageVersionListV1Alpha1.GVK, ...toJson_KubeStorageVersionListV1Alpha1Props(resolved) } } } /** * ControllerRevision implements an immutable snapshot of state data. Clients are responsible for * serializing and deserializing the objects that contain their internal state. Once a * ControllerRevision has been successfully created, it can not be updated. The API Server will fail * validation of all requests that attempt to mutate the Data field. ControllerRevisions may, * however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers * for update and rollback, this object is beta. However, it may be subject to name and * representation changes in future releases, and clients should not depend on its stability. It is * primarily for internal use by controllers. * * @schema io.k8s.api.apps.v1.ControllerRevision */ export class KubeControllerRevision extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.ControllerRevision" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "ControllerRevision" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.ControllerRevision". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeControllerRevisionProps): any { return { ...KubeControllerRevision.GVK, ...toJson_KubeControllerRevisionProps(props) } } /** * Defines a "io.k8s.api.apps.v1.ControllerRevision" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeControllerRevisionProps) { super(scope, id, { ...KubeControllerRevision.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeControllerRevision.GVK, ...toJson_KubeControllerRevisionProps(resolved) } } } /** * ControllerRevisionList is a resource containing a list of ControllerRevision objects. * * @schema io.k8s.api.apps.v1.ControllerRevisionList */ export class KubeControllerRevisionList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.ControllerRevisionList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "ControllerRevisionList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.ControllerRevisionList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeControllerRevisionListProps): any { return { ...KubeControllerRevisionList.GVK, ...toJson_KubeControllerRevisionListProps(props) } } /** * Defines a "io.k8s.api.apps.v1.ControllerRevisionList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeControllerRevisionListProps) { super(scope, id, { ...KubeControllerRevisionList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeControllerRevisionList.GVK, ...toJson_KubeControllerRevisionListProps(resolved) } } } /** * DaemonSet represents the configuration of a daemon set. * * @schema io.k8s.api.apps.v1.DaemonSet */ export class KubeDaemonSet extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.DaemonSet" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "DaemonSet" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.DaemonSet". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeDaemonSetProps = {}): any { return { ...KubeDaemonSet.GVK, ...toJson_KubeDaemonSetProps(props) } } /** * Defines a "io.k8s.api.apps.v1.DaemonSet" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeDaemonSetProps = {}) { super(scope, id, { ...KubeDaemonSet.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeDaemonSet.GVK, ...toJson_KubeDaemonSetProps(resolved) } } } /** * DaemonSetList is a collection of daemon sets. * * @schema io.k8s.api.apps.v1.DaemonSetList */ export class KubeDaemonSetList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.DaemonSetList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "DaemonSetList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.DaemonSetList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeDaemonSetListProps): any { return { ...KubeDaemonSetList.GVK, ...toJson_KubeDaemonSetListProps(props) } } /** * Defines a "io.k8s.api.apps.v1.DaemonSetList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeDaemonSetListProps) { super(scope, id, { ...KubeDaemonSetList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeDaemonSetList.GVK, ...toJson_KubeDaemonSetListProps(resolved) } } } /** * Deployment enables declarative updates for Pods and ReplicaSets. * * @schema io.k8s.api.apps.v1.Deployment */ export class KubeDeployment extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.Deployment" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "Deployment" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.Deployment". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeDeploymentProps = {}): any { return { ...KubeDeployment.GVK, ...toJson_KubeDeploymentProps(props) } } /** * Defines a "io.k8s.api.apps.v1.Deployment" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeDeploymentProps = {}) { super(scope, id, { ...KubeDeployment.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeDeployment.GVK, ...toJson_KubeDeploymentProps(resolved) } } } /** * DeploymentList is a list of Deployments. * * @schema io.k8s.api.apps.v1.DeploymentList */ export class KubeDeploymentList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.DeploymentList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "DeploymentList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.DeploymentList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeDeploymentListProps): any { return { ...KubeDeploymentList.GVK, ...toJson_KubeDeploymentListProps(props) } } /** * Defines a "io.k8s.api.apps.v1.DeploymentList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeDeploymentListProps) { super(scope, id, { ...KubeDeploymentList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeDeploymentList.GVK, ...toJson_KubeDeploymentListProps(resolved) } } } /** * ReplicaSet ensures that a specified number of pod replicas are running at any given time. * * @schema io.k8s.api.apps.v1.ReplicaSet */ export class KubeReplicaSet extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.ReplicaSet" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "ReplicaSet" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.ReplicaSet". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeReplicaSetProps = {}): any { return { ...KubeReplicaSet.GVK, ...toJson_KubeReplicaSetProps(props) } } /** * Defines a "io.k8s.api.apps.v1.ReplicaSet" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeReplicaSetProps = {}) { super(scope, id, { ...KubeReplicaSet.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeReplicaSet.GVK, ...toJson_KubeReplicaSetProps(resolved) } } } /** * ReplicaSetList is a collection of ReplicaSets. * * @schema io.k8s.api.apps.v1.ReplicaSetList */ export class KubeReplicaSetList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.ReplicaSetList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "ReplicaSetList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.ReplicaSetList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeReplicaSetListProps): any { return { ...KubeReplicaSetList.GVK, ...toJson_KubeReplicaSetListProps(props) } } /** * Defines a "io.k8s.api.apps.v1.ReplicaSetList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeReplicaSetListProps) { super(scope, id, { ...KubeReplicaSetList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeReplicaSetList.GVK, ...toJson_KubeReplicaSetListProps(resolved) } } } /** * StatefulSet represents a set of pods with consistent identities. Identities are defined as: * * - Network: A single stable DNS and hostname. * - Storage: As many VolumeClaims as requested. * * The StatefulSet guarantees that a given network identity will always map to the same storage * identity. * * @schema io.k8s.api.apps.v1.StatefulSet */ export class KubeStatefulSet extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.StatefulSet" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "StatefulSet" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.StatefulSet". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeStatefulSetProps = {}): any { return { ...KubeStatefulSet.GVK, ...toJson_KubeStatefulSetProps(props) } } /** * Defines a "io.k8s.api.apps.v1.StatefulSet" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeStatefulSetProps = {}) { super(scope, id, { ...KubeStatefulSet.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeStatefulSet.GVK, ...toJson_KubeStatefulSetProps(resolved) } } } /** * StatefulSetList is a collection of StatefulSets. * * @schema io.k8s.api.apps.v1.StatefulSetList */ export class KubeStatefulSetList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.apps.v1.StatefulSetList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "apps/v1", kind: "StatefulSetList" } /** * Renders a Kubernetes manifest for "io.k8s.api.apps.v1.StatefulSetList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeStatefulSetListProps): any { return { ...KubeStatefulSetList.GVK, ...toJson_KubeStatefulSetListProps(props) } } /** * Defines a "io.k8s.api.apps.v1.StatefulSetList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeStatefulSetListProps) { super(scope, id, { ...KubeStatefulSetList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeStatefulSetList.GVK, ...toJson_KubeStatefulSetListProps(resolved) } } } /** * TokenRequest requests a token for a given service account. * * @schema io.k8s.api.authentication.v1.TokenRequest */ export class KubeTokenRequest extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authentication.v1.TokenRequest" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authentication.k8s.io/v1", kind: "TokenRequest" } /** * Renders a Kubernetes manifest for "io.k8s.api.authentication.v1.TokenRequest". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeTokenRequestProps): any { return { ...KubeTokenRequest.GVK, ...toJson_KubeTokenRequestProps(props) } } /** * Defines a "io.k8s.api.authentication.v1.TokenRequest" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeTokenRequestProps) { super(scope, id, { ...KubeTokenRequest.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeTokenRequest.GVK, ...toJson_KubeTokenRequestProps(resolved) } } } /** * TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be * cached by the webhook token authenticator plugin in the kube-apiserver. * * @schema io.k8s.api.authentication.v1.TokenReview */ export class KubeTokenReview extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authentication.v1.TokenReview" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authentication.k8s.io/v1", kind: "TokenReview" } /** * Renders a Kubernetes manifest for "io.k8s.api.authentication.v1.TokenReview". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeTokenReviewProps): any { return { ...KubeTokenReview.GVK, ...toJson_KubeTokenReviewProps(props) } } /** * Defines a "io.k8s.api.authentication.v1.TokenReview" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeTokenReviewProps) { super(scope, id, { ...KubeTokenReview.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeTokenReview.GVK, ...toJson_KubeTokenReviewProps(resolved) } } } /** * LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given * namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped * policy that includes permissions checking. * * @schema io.k8s.api.authorization.v1.LocalSubjectAccessReview */ export class KubeLocalSubjectAccessReview extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authorization.v1.LocalSubjectAccessReview" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authorization.k8s.io/v1", kind: "LocalSubjectAccessReview" } /** * Renders a Kubernetes manifest for "io.k8s.api.authorization.v1.LocalSubjectAccessReview". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeLocalSubjectAccessReviewProps): any { return { ...KubeLocalSubjectAccessReview.GVK, ...toJson_KubeLocalSubjectAccessReviewProps(props) } } /** * Defines a "io.k8s.api.authorization.v1.LocalSubjectAccessReview" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeLocalSubjectAccessReviewProps) { super(scope, id, { ...KubeLocalSubjectAccessReview.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeLocalSubjectAccessReview.GVK, ...toJson_KubeLocalSubjectAccessReviewProps(resolved) } } } /** * SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in * a spec.namespace means "in all namespaces". Self is a special case, because users should always * be able to check whether they can perform an action * * @schema io.k8s.api.authorization.v1.SelfSubjectAccessReview */ export class KubeSelfSubjectAccessReview extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authorization.v1.SelfSubjectAccessReview" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authorization.k8s.io/v1", kind: "SelfSubjectAccessReview" } /** * Renders a Kubernetes manifest for "io.k8s.api.authorization.v1.SelfSubjectAccessReview". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeSelfSubjectAccessReviewProps): any { return { ...KubeSelfSubjectAccessReview.GVK, ...toJson_KubeSelfSubjectAccessReviewProps(props) } } /** * Defines a "io.k8s.api.authorization.v1.SelfSubjectAccessReview" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeSelfSubjectAccessReviewProps) { super(scope, id, { ...KubeSelfSubjectAccessReview.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeSelfSubjectAccessReview.GVK, ...toJson_KubeSelfSubjectAccessReviewProps(resolved) } } } /** * SelfSubjectRulesReview enumerates the set of actions the current user can perform within a * namespace. The returned list of actions may be incomplete depending on the server's authorization * mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by * UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should * NOT Be used by external systems to drive authorization decisions as this raises confused deputy, * cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview * are the correct way to defer authorization decisions to the API server. * * @schema io.k8s.api.authorization.v1.SelfSubjectRulesReview */ export class KubeSelfSubjectRulesReview extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authorization.v1.SelfSubjectRulesReview" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authorization.k8s.io/v1", kind: "SelfSubjectRulesReview" } /** * Renders a Kubernetes manifest for "io.k8s.api.authorization.v1.SelfSubjectRulesReview". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeSelfSubjectRulesReviewProps): any { return { ...KubeSelfSubjectRulesReview.GVK, ...toJson_KubeSelfSubjectRulesReviewProps(props) } } /** * Defines a "io.k8s.api.authorization.v1.SelfSubjectRulesReview" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeSelfSubjectRulesReviewProps) { super(scope, id, { ...KubeSelfSubjectRulesReview.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeSelfSubjectRulesReview.GVK, ...toJson_KubeSelfSubjectRulesReviewProps(resolved) } } } /** * SubjectAccessReview checks whether or not a user or group can perform an action. * * @schema io.k8s.api.authorization.v1.SubjectAccessReview */ export class KubeSubjectAccessReview extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.authorization.v1.SubjectAccessReview" */ public static readonly GVK: GroupVersionKind = { apiVersion: "authorization.k8s.io/v1", kind: "SubjectAccessReview" } /** * Renders a Kubernetes manifest for "io.k8s.api.authorization.v1.SubjectAccessReview". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeSubjectAccessReviewProps): any { return { ...KubeSubjectAccessReview.GVK, ...toJson_KubeSubjectAccessReviewProps(props) } } /** * Defines a "io.k8s.api.authorization.v1.SubjectAccessReview" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeSubjectAccessReviewProps) { super(scope, id, { ...KubeSubjectAccessReview.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeSubjectAccessReview.GVK, ...toJson_KubeSubjectAccessReviewProps(resolved) } } } /** * Configuration of a horizontal pod autoscaler. * * @schema io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler */ export class KubeHorizontalPodAutoscaler extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v1", kind: "HorizontalPodAutoscaler" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerProps = {}): any { return { ...KubeHorizontalPodAutoscaler.GVK, ...toJson_KubeHorizontalPodAutoscalerProps(props) } } /** * Defines a "io.k8s.api.autoscaling.v1.HorizontalPodAutoscaler" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeHorizontalPodAutoscalerProps = {}) { super(scope, id, { ...KubeHorizontalPodAutoscaler.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscaler.GVK, ...toJson_KubeHorizontalPodAutoscalerProps(resolved) } } } /** * List of horizontal pod autoscaler objects. * * @schema io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList */ export class KubeHorizontalPodAutoscalerList extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v1", kind: "HorizontalPodAutoscalerList" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerListProps): any { return { ...KubeHorizontalPodAutoscalerList.GVK, ...toJson_KubeHorizontalPodAutoscalerListProps(props) } } /** * Defines a "io.k8s.api.autoscaling.v1.HorizontalPodAutoscalerList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeHorizontalPodAutoscalerListProps) { super(scope, id, { ...KubeHorizontalPodAutoscalerList.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscalerList.GVK, ...toJson_KubeHorizontalPodAutoscalerListProps(resolved) } } } /** * Scale represents a scaling request for a resource. * * @schema io.k8s.api.autoscaling.v1.Scale */ export class KubeScale extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v1.Scale" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v1", kind: "Scale" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v1.Scale". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeScaleProps = {}): any { return { ...KubeScale.GVK, ...toJson_KubeScaleProps(props) } } /** * Defines a "io.k8s.api.autoscaling.v1.Scale" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor(scope: Construct, id: string, props: KubeScaleProps = {}) { super(scope, id, { ...KubeScale.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeScale.GVK, ...toJson_KubeScaleProps(resolved) } } } /** * HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically * manages the replica count of any resource implementing the scale subresource based on the metrics * specified. * * @schema io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler */ export class KubeHorizontalPodAutoscalerV2 extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v2", kind: "HorizontalPodAutoscaler" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerV2Props = {}): any { return { ...KubeHorizontalPodAutoscalerV2.GVK, ...toJson_KubeHorizontalPodAutoscalerV2Props(props) } } /** * Defines a "io.k8s.api.autoscaling.v2.HorizontalPodAutoscaler" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeHorizontalPodAutoscalerV2Props = {} ) { super(scope, id, { ...KubeHorizontalPodAutoscalerV2.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscalerV2.GVK, ...toJson_KubeHorizontalPodAutoscalerV2Props(resolved) } } } /** * HorizontalPodAutoscalerList is a list of horizontal pod autoscaler objects. * * @schema io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerList */ export class KubeHorizontalPodAutoscalerListV2 extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v2", kind: "HorizontalPodAutoscalerList" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerListV2Props): any { return { ...KubeHorizontalPodAutoscalerListV2.GVK, ...toJson_KubeHorizontalPodAutoscalerListV2Props(props) } } /** * Defines a "io.k8s.api.autoscaling.v2.HorizontalPodAutoscalerList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeHorizontalPodAutoscalerListV2Props ) { super(scope, id, { ...KubeHorizontalPodAutoscalerListV2.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscalerListV2.GVK, ...toJson_KubeHorizontalPodAutoscalerListV2Props(resolved) } } } /** * HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically * manages the replica count of any resource implementing the scale subresource based on the metrics * specified. * * @schema io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscaler */ export class KubeHorizontalPodAutoscalerV2Beta2 extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscaler" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v2beta2", kind: "HorizontalPodAutoscaler" } /** * Renders a Kubernetes manifest for "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscaler". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerV2Beta2Props = {}): any { return { ...KubeHorizontalPodAutoscalerV2Beta2.GVK, ...toJson_KubeHorizontalPodAutoscalerV2Beta2Props(props) } } /** * Defines a "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscaler" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeHorizontalPodAutoscalerV2Beta2Props = {} ) { super(scope, id, { ...KubeHorizontalPodAutoscalerV2Beta2.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscalerV2Beta2.GVK, ...toJson_KubeHorizontalPodAutoscalerV2Beta2Props(resolved) } } } /** * HorizontalPodAutoscalerList is a list of horizontal pod autoscaler objects. * * @schema io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscalerList */ export class KubeHorizontalPodAutoscalerListV2Beta2 extends ApiObject { /** * Returns the apiVersion and kind for * "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscalerList" */ public static readonly GVK: GroupVersionKind = { apiVersion: "autoscaling/v2beta2", kind: "HorizontalPodAutoscalerList" } /** * Renders a Kubernetes manifest for * "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscalerList". * * This can be used to inline resource manifests inside other objects (e.g. as templates). * * @param props Initialization props */ public static manifest(props: KubeHorizontalPodAutoscalerListV2Beta2Props): any { return { ...KubeHorizontalPodAutoscalerListV2Beta2.GVK, ...toJson_KubeHorizontalPodAutoscalerListV2Beta2Props(props) } } /** * Defines a "io.k8s.api.autoscaling.v2beta2.HorizontalPodAutoscalerList" API object * * @param scope The scope in which to define this object * @param id A scope-local name for the object * @param props Initialization props */ public constructor( scope: Construct, id: string, props: KubeHorizontalPodAutoscalerListV2Beta2Props ) { super(scope, id, { ...KubeHorizontalPodAutoscalerListV2Beta2.GVK, ...props }) } /** Renders the object to Kubernetes JSON. */ public toJson(): any { const resolved = super.toJson() return { ...KubeHorizontalPodAutoscalerListV2Beta2.GVK, ...toJson_KubeHorizontalPodAutoscalerListV2Beta2Props(resolved) } } } /** * CronJob represents the configuration of a single cron job. * * @schema io.k8s.api.batch.v1.CronJob */ export class KubeCronJob extends ApiObject { /** Returns the apiVersion and kind for "io.k8s.api.batch.v1.C