k8ts
Version:
Powerful framework for building Kubernetes manifests in TypeScript.
1,575 lines (1,429 loc) • 1.11 MB
text/typescript
// 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