diff --git a/CHANGELOG.md b/CHANGELOG.md index 6132a59bac..56f74b190e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.21.2 (Unreleased) +## 0.22.1 (Unreleased) ### Major changes @@ -12,6 +12,20 @@ - None +## 0.22.0 (March 25, 2019) + +### Major changes + +- Add support for Kubernetes v1.14.0 (https://github.com/pulumi/pulumi-kubernetes/pull/371) + +### Improvements + +- None + +### Bug fixes + +- None + ## 0.21.1 (March 18, 2019) ### Major changes diff --git a/Makefile b/Makefile index fe20775137..4d1e3a3572 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ PROVIDER := pulumi-resource-${PACK} CODEGEN := pulumi-gen-${PACK} VERSION ?= $(shell scripts/get-version) PYPI_VERSION := $(shell scripts/get-py-version) -KUBE_VERSION ?= v1.13.4 +KUBE_VERSION ?= v1.14.0 SWAGGER_URL ?= https://github.com/kubernetes/kubernetes/raw/${KUBE_VERSION}/api/openapi-spec/swagger.json OPENAPI_DIR := pkg/gen/openapi-specs OPENAPI_FILE := ${OPENAPI_DIR}/swagger-${KUBE_VERSION}.json diff --git a/pkg/gen/typegen.go b/pkg/gen/typegen.go index 826d7c365d..b18c738041 100644 --- a/pkg/gen/typegen.go +++ b/pkg/gen/typegen.go @@ -310,6 +310,7 @@ func makeTypescriptType(prop map[string]interface{}, opts groupOpts) string { apiextensionsV1beta1 = "io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1" quantity = "io.k8s.apimachinery.pkg.api.resource.Quantity" intOrString = "io.k8s.apimachinery.pkg.util.intstr.IntOrString" + v1Fields = "io.k8s.apimachinery.pkg.apis.meta.v1.Fields" v1Time = "io.k8s.apimachinery.pkg.apis.meta.v1.Time" v1MicroTime = "io.k8s.apimachinery.pkg.apis.meta.v1.MicroTime" v1beta1JSONSchemaPropsOrBool = apiextensionsV1beta1 + ".JSONSchemaPropsOrBool" @@ -323,6 +324,8 @@ func makeTypescriptType(prop map[string]interface{}, opts groupOpts) string { return stringT case intOrString: return "number | string" + case v1Fields: + return object case v1Time, v1MicroTime: // TODO: Automatically deserialized with `DateConstructor`. return stringT diff --git a/sdk/nodejs/admissionregistration/index.ts b/sdk/nodejs/admissionregistration/index.ts index 64e2ae9ea6..f5a9caa917 100755 --- a/sdk/nodejs/admissionregistration/index.ts +++ b/sdk/nodejs/admissionregistration/index.ts @@ -2,9 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** // Import versions: -import * as v1alpha1 from "./v1alpha1/index"; import * as v1beta1 from "./v1beta1/index"; // Export sub-modules -export { v1alpha1, v1beta1, }; +export { v1beta1, }; diff --git a/sdk/nodejs/apps/v1beta2/ControllerRevision.ts b/sdk/nodejs/apps/v1beta2/ControllerRevision.ts index 80f8920d9f..af1e561a16 100755 --- a/sdk/nodejs/apps/v1beta2/ControllerRevision.ts +++ b/sdk/nodejs/apps/v1beta2/ControllerRevision.ts @@ -41,7 +41,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/apps/v1beta2/ControllerRevisionList.ts b/sdk/nodejs/apps/v1beta2/ControllerRevisionList.ts index b9e08cf2bc..5053d13568 100755 --- a/sdk/nodejs/apps/v1beta2/ControllerRevisionList.ts +++ b/sdk/nodejs/apps/v1beta2/ControllerRevisionList.ts @@ -31,7 +31,8 @@ import * as outputApi from "../../types/output"; public readonly kind: pulumi.Output<"ControllerRevisionList">; /** - * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * More info: + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/apps/v1beta2/DaemonSet.ts b/sdk/nodejs/apps/v1beta2/DaemonSet.ts index ffb230c795..a4ae0751a3 100755 --- a/sdk/nodejs/apps/v1beta2/DaemonSet.ts +++ b/sdk/nodejs/apps/v1beta2/DaemonSet.ts @@ -28,20 +28,20 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly spec: pulumi.Output; /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly status: pulumi.Output; diff --git a/sdk/nodejs/apps/v1beta2/DaemonSetList.ts b/sdk/nodejs/apps/v1beta2/DaemonSetList.ts index 71d75e9582..4dfd36a27b 100755 --- a/sdk/nodejs/apps/v1beta2/DaemonSetList.ts +++ b/sdk/nodejs/apps/v1beta2/DaemonSetList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/apps/v1beta2/ReplicaSet.ts b/sdk/nodejs/apps/v1beta2/ReplicaSet.ts index efd40d8d6a..e88c609f2c 100755 --- a/sdk/nodejs/apps/v1beta2/ReplicaSet.ts +++ b/sdk/nodejs/apps/v1beta2/ReplicaSet.ts @@ -30,20 +30,20 @@ import * as outputApi from "../../types/output"; /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly spec: pulumi.Output; /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly status: pulumi.Output; diff --git a/sdk/nodejs/apps/v1beta2/ReplicaSetList.ts b/sdk/nodejs/apps/v1beta2/ReplicaSetList.ts index 00b2adccb8..ebd13f3860 100755 --- a/sdk/nodejs/apps/v1beta2/ReplicaSetList.ts +++ b/sdk/nodejs/apps/v1beta2/ReplicaSetList.ts @@ -33,7 +33,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/coordination/index.ts b/sdk/nodejs/coordination/index.ts index f5a9caa917..087c0976d3 100755 --- a/sdk/nodejs/coordination/index.ts +++ b/sdk/nodejs/coordination/index.ts @@ -2,8 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** // Import versions: +import * as v1 from "./v1/index"; import * as v1beta1 from "./v1beta1/index"; // Export sub-modules -export { v1beta1, }; +export { v1, v1beta1, }; diff --git a/sdk/nodejs/admissionregistration/v1alpha1/InitializerConfiguration.ts b/sdk/nodejs/coordination/v1/Lease.ts similarity index 53% rename from sdk/nodejs/admissionregistration/v1alpha1/InitializerConfiguration.ts rename to sdk/nodejs/coordination/v1/Lease.ts index 0ffb9eced2..3fb639d8b0 100755 --- a/sdk/nodejs/admissionregistration/v1alpha1/InitializerConfiguration.ts +++ b/sdk/nodejs/coordination/v1/Lease.ts @@ -6,24 +6,16 @@ import * as inputApi from "../../types/input"; import * as outputApi from "../../types/output"; /** - * InitializerConfiguration describes the configuration of initializers. + * Lease defines a lease concept. */ - export class InitializerConfiguration extends pulumi.CustomResource { + export class Lease extends pulumi.CustomResource { /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized * values. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources */ - public readonly apiVersion: pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; - - /** - * Initializers is a list of resources and their default initializers Order-sensitive. When - * merging multiple InitializerConfigurations, we sort the initializers from different - * InitializerConfigurations by the name of the InitializerConfigurations; the order of the - * initializers from the same InitializerConfiguration is preserved. - */ - public readonly initializers: pulumi.Output; + public readonly apiVersion: pulumi.Output<"coordination.k8s.io/v1">; /** * Kind is a string value representing the REST resource this object represents. Servers may @@ -31,16 +23,21 @@ import * as outputApi from "../../types/output"; * CamelCase. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds */ - public readonly kind: pulumi.Output<"InitializerConfiguration">; + public readonly kind: pulumi.Output<"Lease">; /** - * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** - * Get the state of an existing `InitializerConfiguration` resource, as identified by `id`. + * Specification of the Lease. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + public readonly spec: pulumi.Output; + + /** + * Get the state of an existing `Lease` resource, as identified by `id`. * Typically this ID is of the form /; if is omitted, then (per * Kubernetes convention) the ID becomes default/. * @@ -51,27 +48,27 @@ import * as outputApi from "../../types/output"; * / or . * @param opts Uniquely specifies a CustomResource to select. */ - public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): InitializerConfiguration { - return new InitializerConfiguration(name, undefined, { ...opts, id: id }); + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Lease { + return new Lease(name, undefined, { ...opts, id: id }); } - public getInputs(): inputApi.admissionregistration.v1alpha1.InitializerConfiguration { return this.__inputs; } - private readonly __inputs: inputApi.admissionregistration.v1alpha1.InitializerConfiguration; + public getInputs(): inputApi.coordination.v1.Lease { return this.__inputs; } + private readonly __inputs: inputApi.coordination.v1.Lease; /** - * Create a admissionregistration.v1alpha1.InitializerConfiguration resource with the given unique name, arguments, and options. + * Create a coordination.v1.Lease resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - constructor(name: string, args?: inputApi.admissionregistration.v1alpha1.InitializerConfiguration, opts?: pulumi.CustomResourceOptions) { + constructor(name: string, args?: inputApi.coordination.v1.Lease, opts?: pulumi.CustomResourceOptions) { let inputs: pulumi.Inputs = {}; - inputs["apiVersion"] = "admissionregistration.k8s.io/v1alpha1"; - inputs["initializers"] = args && args.initializers || undefined; - inputs["kind"] = "InitializerConfiguration"; + inputs["apiVersion"] = "coordination.k8s.io/v1"; + inputs["kind"] = "Lease"; inputs["metadata"] = args && args.metadata || undefined; - super("kubernetes:admissionregistration.k8s.io/v1alpha1:InitializerConfiguration", name, inputs, opts); + inputs["spec"] = args && args.spec || undefined; + super("kubernetes:coordination.k8s.io/v1:Lease", name, inputs, opts); this.__inputs = args; } } diff --git a/sdk/nodejs/admissionregistration/v1alpha1/InitializerConfigurationList.ts b/sdk/nodejs/coordination/v1/LeaseList.ts similarity index 60% rename from sdk/nodejs/admissionregistration/v1alpha1/InitializerConfigurationList.ts rename to sdk/nodejs/coordination/v1/LeaseList.ts index 4da6f7aea4..44e999e850 100755 --- a/sdk/nodejs/admissionregistration/v1alpha1/InitializerConfigurationList.ts +++ b/sdk/nodejs/coordination/v1/LeaseList.ts @@ -6,21 +6,21 @@ import * as inputApi from "../../types/input"; import * as outputApi from "../../types/output"; /** - * InitializerConfigurationList is a list of InitializerConfiguration. + * LeaseList is a list of Lease objects. */ - export class InitializerConfigurationList extends pulumi.CustomResource { + export class LeaseList extends pulumi.CustomResource { /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized * values. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources */ - public readonly apiVersion: pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; + public readonly apiVersion: pulumi.Output<"coordination.k8s.io/v1">; /** - * List of InitializerConfiguration. + * Items is a list of schema objects. */ - public readonly items: pulumi.Output; + public readonly items: pulumi.Output; /** * Kind is a string value representing the REST resource this object represents. Servers may @@ -28,16 +28,16 @@ import * as outputApi from "../../types/output"; * CamelCase. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds */ - public readonly kind: pulumi.Output<"InitializerConfigurationList">; + public readonly kind: pulumi.Output<"LeaseList">; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** - * Get the state of an existing `InitializerConfigurationList` resource, as identified by `id`. + * Get the state of an existing `LeaseList` resource, as identified by `id`. * Typically this ID is of the form /; if is omitted, then (per * Kubernetes convention) the ID becomes default/. * @@ -48,27 +48,27 @@ import * as outputApi from "../../types/output"; * / or . * @param opts Uniquely specifies a CustomResource to select. */ - public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): InitializerConfigurationList { - return new InitializerConfigurationList(name, undefined, { ...opts, id: id }); + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): LeaseList { + return new LeaseList(name, undefined, { ...opts, id: id }); } - public getInputs(): inputApi.admissionregistration.v1alpha1.InitializerConfigurationList { return this.__inputs; } - private readonly __inputs: inputApi.admissionregistration.v1alpha1.InitializerConfigurationList; + public getInputs(): inputApi.coordination.v1.LeaseList { return this.__inputs; } + private readonly __inputs: inputApi.coordination.v1.LeaseList; /** - * Create a admissionregistration.v1alpha1.InitializerConfigurationList resource with the given unique name, arguments, and options. + * Create a coordination.v1.LeaseList resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - constructor(name: string, args?: inputApi.admissionregistration.v1alpha1.InitializerConfigurationList, opts?: pulumi.CustomResourceOptions) { + constructor(name: string, args?: inputApi.coordination.v1.LeaseList, opts?: pulumi.CustomResourceOptions) { let inputs: pulumi.Inputs = {}; - inputs["apiVersion"] = "admissionregistration.k8s.io/v1alpha1"; + inputs["apiVersion"] = "coordination.k8s.io/v1"; inputs["items"] = args && args.items || undefined; - inputs["kind"] = "InitializerConfigurationList"; + inputs["kind"] = "LeaseList"; inputs["metadata"] = args && args.metadata || undefined; - super("kubernetes:admissionregistration.k8s.io/v1alpha1:InitializerConfigurationList", name, inputs, opts); + super("kubernetes:coordination.k8s.io/v1:LeaseList", name, inputs, opts); this.__inputs = args; } } diff --git a/sdk/nodejs/admissionregistration/v1alpha1/index.ts b/sdk/nodejs/coordination/v1/index.ts similarity index 66% rename from sdk/nodejs/admissionregistration/v1alpha1/index.ts rename to sdk/nodejs/coordination/v1/index.ts index 905a66b5be..8cd0911831 100755 --- a/sdk/nodejs/admissionregistration/v1alpha1/index.ts +++ b/sdk/nodejs/coordination/v1/index.ts @@ -2,6 +2,6 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** // Export members: -export * from "./InitializerConfiguration"; -export * from "./InitializerConfigurationList"; +export * from "./Lease"; +export * from "./LeaseList"; diff --git a/sdk/nodejs/extensions/v1beta1/DaemonSet.ts b/sdk/nodejs/extensions/v1beta1/DaemonSet.ts index 5160cf03c8..1986d1c301 100755 --- a/sdk/nodejs/extensions/v1beta1/DaemonSet.ts +++ b/sdk/nodejs/extensions/v1beta1/DaemonSet.ts @@ -28,20 +28,20 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly spec: pulumi.Output; /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly status: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/DaemonSetList.ts b/sdk/nodejs/extensions/v1beta1/DaemonSetList.ts index 6ff35f6030..f56b5ce572 100755 --- a/sdk/nodejs/extensions/v1beta1/DaemonSetList.ts +++ b/sdk/nodejs/extensions/v1beta1/DaemonSetList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/Ingress.ts b/sdk/nodejs/extensions/v1beta1/Ingress.ts index acdfed8455..931c52f5db 100755 --- a/sdk/nodejs/extensions/v1beta1/Ingress.ts +++ b/sdk/nodejs/extensions/v1beta1/Ingress.ts @@ -8,7 +8,9 @@ import * as outputApi from "../../types/output"; /** * Ingress is a collection of rules that allow inbound connections to reach the endpoints * defined by a backend. An Ingress can be configured to give services externally-reachable - * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. DEPRECATED - + * This group version of Ingress is deprecated by networking.k8s.io/v1beta1 Ingress. See the + * release notes for more information. */ export class Ingress extends pulumi.CustomResource { /** @@ -29,19 +31,19 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** * Spec is the desired state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly spec: pulumi.Output; /** * Status is the current state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly status: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/IngressList.ts b/sdk/nodejs/extensions/v1beta1/IngressList.ts index e1e6672a4e..ee31b662f1 100755 --- a/sdk/nodejs/extensions/v1beta1/IngressList.ts +++ b/sdk/nodejs/extensions/v1beta1/IngressList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/NetworkPolicy.ts b/sdk/nodejs/extensions/v1beta1/NetworkPolicy.ts index a8dad93464..5392bf606f 100755 --- a/sdk/nodejs/extensions/v1beta1/NetworkPolicy.ts +++ b/sdk/nodejs/extensions/v1beta1/NetworkPolicy.ts @@ -29,7 +29,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/NetworkPolicyList.ts b/sdk/nodejs/extensions/v1beta1/NetworkPolicyList.ts index 134cf3f37c..05c4f178de 100755 --- a/sdk/nodejs/extensions/v1beta1/NetworkPolicyList.ts +++ b/sdk/nodejs/extensions/v1beta1/NetworkPolicyList.ts @@ -33,7 +33,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/PodSecurityPolicy.ts b/sdk/nodejs/extensions/v1beta1/PodSecurityPolicy.ts index d63896ae03..2ed7f39fef 100755 --- a/sdk/nodejs/extensions/v1beta1/PodSecurityPolicy.ts +++ b/sdk/nodejs/extensions/v1beta1/PodSecurityPolicy.ts @@ -29,7 +29,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/PodSecurityPolicyList.ts b/sdk/nodejs/extensions/v1beta1/PodSecurityPolicyList.ts index 171df419e8..5b0b62b516 100755 --- a/sdk/nodejs/extensions/v1beta1/PodSecurityPolicyList.ts +++ b/sdk/nodejs/extensions/v1beta1/PodSecurityPolicyList.ts @@ -33,7 +33,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/ReplicaSet.ts b/sdk/nodejs/extensions/v1beta1/ReplicaSet.ts index df4d3b9b38..07c00939fc 100755 --- a/sdk/nodejs/extensions/v1beta1/ReplicaSet.ts +++ b/sdk/nodejs/extensions/v1beta1/ReplicaSet.ts @@ -30,20 +30,20 @@ import * as outputApi from "../../types/output"; /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly spec: pulumi.Output; /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ public readonly status: pulumi.Output; diff --git a/sdk/nodejs/extensions/v1beta1/ReplicaSetList.ts b/sdk/nodejs/extensions/v1beta1/ReplicaSetList.ts index ff682f271c..1ad482882a 100755 --- a/sdk/nodejs/extensions/v1beta1/ReplicaSetList.ts +++ b/sdk/nodejs/extensions/v1beta1/ReplicaSetList.ts @@ -33,7 +33,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index 81aafc82f5..eb1641e6e6 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -22,6 +22,7 @@ import * as events from "./events/index"; import * as extensions from "./extensions/index"; import * as meta from "./meta/index"; import * as networking from "./networking/index"; +import * as node from "./node/index"; import * as policy from "./policy/index"; import * as rbac from "./rbac/index"; import * as scheduling from "./scheduling/index"; @@ -29,5 +30,5 @@ import * as settings from "./settings/index"; import * as storage from "./storage/index"; // Export sub-modules -export { admissionregistration, apiextensions, apiregistration, apps, auditregistration, authentication, authorization, autoscaling, batch, certificates, coordination, core, events, extensions, meta, networking, policy, rbac, scheduling, settings, storage, }; +export { admissionregistration, apiextensions, apiregistration, apps, auditregistration, authentication, authorization, autoscaling, batch, certificates, coordination, core, events, extensions, meta, networking, node, policy, rbac, scheduling, settings, storage, }; diff --git a/sdk/nodejs/networking/index.ts b/sdk/nodejs/networking/index.ts index ac5fc332b6..087c0976d3 100755 --- a/sdk/nodejs/networking/index.ts +++ b/sdk/nodejs/networking/index.ts @@ -3,7 +3,8 @@ // Import versions: import * as v1 from "./v1/index"; +import * as v1beta1 from "./v1beta1/index"; // Export sub-modules -export { v1, }; +export { v1, v1beta1, }; diff --git a/sdk/nodejs/networking/v1/NetworkPolicy.ts b/sdk/nodejs/networking/v1/NetworkPolicy.ts index 2d141e4e7d..4673e599dc 100755 --- a/sdk/nodejs/networking/v1/NetworkPolicy.ts +++ b/sdk/nodejs/networking/v1/NetworkPolicy.ts @@ -27,7 +27,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/networking/v1/NetworkPolicyList.ts b/sdk/nodejs/networking/v1/NetworkPolicyList.ts index e0aedca731..b980aacfdb 100755 --- a/sdk/nodejs/networking/v1/NetworkPolicyList.ts +++ b/sdk/nodejs/networking/v1/NetworkPolicyList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/networking/v1beta1/Ingress.ts b/sdk/nodejs/networking/v1beta1/Ingress.ts new file mode 100755 index 0000000000..cefb4a9dc1 --- /dev/null +++ b/sdk/nodejs/networking/v1beta1/Ingress.ts @@ -0,0 +1,84 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * Ingress is a collection of rules that allow inbound connections to reach the endpoints + * defined by a backend. An Ingress can be configured to give services externally-reachable + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. + */ + export class Ingress extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"networking.k8s.io/v1beta1">; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"Ingress">; + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Spec is the desired state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + public readonly spec: pulumi.Output; + + /** + * Status is the current state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + public readonly status: pulumi.Output; + + /** + * Get the state of an existing `Ingress` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Ingress { + return new Ingress(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.networking.v1beta1.Ingress { return this.__inputs; } + private readonly __inputs: inputApi.networking.v1beta1.Ingress; + + /** + * Create a networking.v1beta1.Ingress resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.networking.v1beta1.Ingress, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "networking.k8s.io/v1beta1"; + inputs["kind"] = "Ingress"; + inputs["metadata"] = args && args.metadata || undefined; + inputs["spec"] = args && args.spec || undefined; + inputs["status"] = args && args.status || undefined; + super("kubernetes:networking.k8s.io/v1beta1:Ingress", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/networking/v1beta1/IngressList.ts b/sdk/nodejs/networking/v1beta1/IngressList.ts new file mode 100755 index 0000000000..297ac45306 --- /dev/null +++ b/sdk/nodejs/networking/v1beta1/IngressList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * IngressList is a collection of Ingress. + */ + export class IngressList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"networking.k8s.io/v1beta1">; + + /** + * Items is the list of Ingress. + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"IngressList">; + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `IngressList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): IngressList { + return new IngressList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.networking.v1beta1.IngressList { return this.__inputs; } + private readonly __inputs: inputApi.networking.v1beta1.IngressList; + + /** + * Create a networking.v1beta1.IngressList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.networking.v1beta1.IngressList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "networking.k8s.io/v1beta1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "IngressList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:networking.k8s.io/v1beta1:IngressList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/networking/v1beta1/index.ts b/sdk/nodejs/networking/v1beta1/index.ts new file mode 100755 index 0000000000..5dcaa1bf68 --- /dev/null +++ b/sdk/nodejs/networking/v1beta1/index.ts @@ -0,0 +1,7 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +// Export members: +export * from "./Ingress"; +export * from "./IngressList"; + diff --git a/sdk/nodejs/node/index.ts b/sdk/nodejs/node/index.ts new file mode 100755 index 0000000000..64e2ae9ea6 --- /dev/null +++ b/sdk/nodejs/node/index.ts @@ -0,0 +1,10 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +// Import versions: +import * as v1alpha1 from "./v1alpha1/index"; +import * as v1beta1 from "./v1beta1/index"; + +// Export sub-modules +export { v1alpha1, v1beta1, }; + diff --git a/sdk/nodejs/node/v1alpha1/RuntimeClass.ts b/sdk/nodejs/node/v1alpha1/RuntimeClass.ts new file mode 100755 index 0000000000..3769e6762d --- /dev/null +++ b/sdk/nodejs/node/v1alpha1/RuntimeClass.ts @@ -0,0 +1,79 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export class RuntimeClass extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"node.k8s.io/v1alpha1">; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"RuntimeClass">; + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Specification of the RuntimeClass More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + public readonly spec: pulumi.Output; + + /** + * Get the state of an existing `RuntimeClass` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): RuntimeClass { + return new RuntimeClass(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.node.v1alpha1.RuntimeClass { return this.__inputs; } + private readonly __inputs: inputApi.node.v1alpha1.RuntimeClass; + + /** + * Create a node.v1alpha1.RuntimeClass resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.node.v1alpha1.RuntimeClass, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "node.k8s.io/v1alpha1"; + inputs["kind"] = "RuntimeClass"; + inputs["metadata"] = args && args.metadata || undefined; + inputs["spec"] = args && args.spec || undefined; + super("kubernetes:node.k8s.io/v1alpha1:RuntimeClass", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/node/v1alpha1/RuntimeClassList.ts b/sdk/nodejs/node/v1alpha1/RuntimeClassList.ts new file mode 100755 index 0000000000..3c66cba914 --- /dev/null +++ b/sdk/nodejs/node/v1alpha1/RuntimeClassList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export class RuntimeClassList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"node.k8s.io/v1alpha1">; + + /** + * Items is a list of schema objects. + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"RuntimeClassList">; + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `RuntimeClassList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): RuntimeClassList { + return new RuntimeClassList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.node.v1alpha1.RuntimeClassList { return this.__inputs; } + private readonly __inputs: inputApi.node.v1alpha1.RuntimeClassList; + + /** + * Create a node.v1alpha1.RuntimeClassList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.node.v1alpha1.RuntimeClassList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "node.k8s.io/v1alpha1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "RuntimeClassList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:node.k8s.io/v1alpha1:RuntimeClassList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/node/v1alpha1/index.ts b/sdk/nodejs/node/v1alpha1/index.ts new file mode 100755 index 0000000000..b152aa6202 --- /dev/null +++ b/sdk/nodejs/node/v1alpha1/index.ts @@ -0,0 +1,7 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +// Export members: +export * from "./RuntimeClass"; +export * from "./RuntimeClassList"; + diff --git a/sdk/nodejs/node/v1beta1/RuntimeClass.ts b/sdk/nodejs/node/v1beta1/RuntimeClass.ts new file mode 100755 index 0000000000..5f297633ec --- /dev/null +++ b/sdk/nodejs/node/v1beta1/RuntimeClass.ts @@ -0,0 +1,84 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export class RuntimeClass extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"node.k8s.io/v1beta1">; + + /** + * Handler specifies the underlying runtime and configuration that the CRI implementation will + * use to handle pods of this class. The possible values are specific to the node & CRI + * configuration. It is assumed that all handlers are available on every node, and handlers + * of the same name are equivalent on every node. For example, a handler called "runc" might + * specify that the runc OCI runtime (using native Linux containers) will be used to run the + * containers in a pod. The Handler must conform to the DNS Label (RFC 1123) requirements, and + * is immutable. + */ + public readonly handler: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"RuntimeClass">; + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `RuntimeClass` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): RuntimeClass { + return new RuntimeClass(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.node.v1beta1.RuntimeClass { return this.__inputs; } + private readonly __inputs: inputApi.node.v1beta1.RuntimeClass; + + /** + * Create a node.v1beta1.RuntimeClass resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.node.v1beta1.RuntimeClass, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "node.k8s.io/v1beta1"; + inputs["handler"] = args && args.handler || undefined; + inputs["kind"] = "RuntimeClass"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:node.k8s.io/v1beta1:RuntimeClass", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/node/v1beta1/RuntimeClassList.ts b/sdk/nodejs/node/v1beta1/RuntimeClassList.ts new file mode 100755 index 0000000000..0b1e9e7723 --- /dev/null +++ b/sdk/nodejs/node/v1beta1/RuntimeClassList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export class RuntimeClassList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"node.k8s.io/v1beta1">; + + /** + * Items is a list of schema objects. + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"RuntimeClassList">; + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `RuntimeClassList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): RuntimeClassList { + return new RuntimeClassList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.node.v1beta1.RuntimeClassList { return this.__inputs; } + private readonly __inputs: inputApi.node.v1beta1.RuntimeClassList; + + /** + * Create a node.v1beta1.RuntimeClassList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.node.v1beta1.RuntimeClassList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "node.k8s.io/v1beta1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "RuntimeClassList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:node.k8s.io/v1beta1:RuntimeClassList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/node/v1beta1/index.ts b/sdk/nodejs/node/v1beta1/index.ts new file mode 100755 index 0000000000..b152aa6202 --- /dev/null +++ b/sdk/nodejs/node/v1beta1/index.ts @@ -0,0 +1,7 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +// Export members: +export * from "./RuntimeClass"; +export * from "./RuntimeClassList"; + diff --git a/sdk/nodejs/provider.ts b/sdk/nodejs/provider.ts index ad4ece43a1..d218079e4e 100755 --- a/sdk/nodejs/provider.ts +++ b/sdk/nodejs/provider.ts @@ -109,10 +109,6 @@ export namespace yaml { * For example: * getResource("apps/v1/Deployment", "nginx") */ - public getResource(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", name: string): pulumi.Output; - public getResource(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", namespace: string, name: string): pulumi.Output; - public getResource(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", name: string): pulumi.Output; - public getResource(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration", name: string): pulumi.Output; public getResource(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfigurationList", name: string): pulumi.Output; @@ -245,6 +241,10 @@ export namespace yaml { public getResource(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequest", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequestList", name: string): pulumi.Output; public getResource(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequestList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "coordination.k8s.io/v1/Lease", name: string): pulumi.Output; + public getResource(groupVersionKind: "coordination.k8s.io/v1/Lease", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "coordination.k8s.io/v1/LeaseList", name: string): pulumi.Output; + public getResource(groupVersionKind: "coordination.k8s.io/v1/LeaseList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "coordination.k8s.io/v1beta1/Lease", name: string): pulumi.Output; public getResource(groupVersionKind: "coordination.k8s.io/v1beta1/Lease", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "coordination.k8s.io/v1beta1/LeaseList", name: string): pulumi.Output; @@ -349,6 +349,18 @@ export namespace yaml { public getResource(groupVersionKind: "networking.k8s.io/v1/NetworkPolicy", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "networking.k8s.io/v1/NetworkPolicyList", name: string): pulumi.Output; public getResource(groupVersionKind: "networking.k8s.io/v1/NetworkPolicyList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string): pulumi.Output; + public getResource(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", name: string): pulumi.Output; + public getResource(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", name: string): pulumi.Output; + public getResource(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "policy/v1beta1/PodDisruptionBudget", name: string): pulumi.Output; public getResource(groupVersionKind: "policy/v1beta1/PodDisruptionBudget", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "policy/v1beta1/PodDisruptionBudgetList", name: string): pulumi.Output; @@ -405,6 +417,10 @@ export namespace yaml { public getResource(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleBindingList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleList", name: string): pulumi.Output; public getResource(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string): pulumi.Output; + public getResource(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", name: string): pulumi.Output; + public getResource(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClass", name: string): pulumi.Output; public getResource(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClass", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClassList", name: string): pulumi.Output; @@ -429,6 +445,14 @@ export namespace yaml { public getResource(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachment", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachmentList", name: string): pulumi.Output; public getResource(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachmentList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", namespace: string, name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", name: string): pulumi.Output; + public getResource(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "storage.k8s.io/v1beta1/StorageClass", name: string): pulumi.Output; public getResource(groupVersionKind: "storage.k8s.io/v1beta1/StorageClass", namespace: string, name: string): pulumi.Output; public getResource(groupVersionKind: "storage.k8s.io/v1beta1/StorageClassList", name: string): pulumi.Output; @@ -447,22 +471,6 @@ export namespace yaml { * For example: * getResourceProperty("v1/Service", "nginx", "spec") */ - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", namespace: string, name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", name: string, property: "initializers"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", namespace: string, name: string, property: "initializers"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", name: string, property: "kind"): pulumi.Output<"InitializerConfiguration">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", namespace: string, name: string, property: "kind"): pulumi.Output<"InitializerConfiguration">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", name: string, property: "metadata"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration", namespace: string, name: string, property: "metadata"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", namespace: string, name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1alpha1">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", name: string, property: "items"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", namespace: string, name: string, property: "items"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", name: string, property: "kind"): pulumi.Output<"InitializerConfigurationList">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", namespace: string, name: string, property: "kind"): pulumi.Output<"InitializerConfigurationList">; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", name: string, property: "metadata"): pulumi.Output; - public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList", namespace: string, name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration", name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1beta1">; public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration", namespace: string, name: string, property: "api_version"): pulumi.Output<"admissionregistration.k8s.io/v1beta1">; public getResourceProperty(groupVersionKind: "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration", name: string, property: "kind"): pulumi.Output<"MutatingWebhookConfiguration">; @@ -1061,6 +1069,22 @@ export namespace yaml { public getResourceProperty(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequestList", namespace: string, name: string, property: "kind"): pulumi.Output<"CertificateSigningRequestList">; public getResourceProperty(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequestList", name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "certificates.k8s.io/v1beta1/CertificateSigningRequestList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", namespace: string, name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", name: string, property: "kind"): pulumi.Output<"Lease">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", namespace: string, name: string, property: "kind"): pulumi.Output<"Lease">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/Lease", namespace: string, name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", namespace: string, name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", name: string, property: "kind"): pulumi.Output<"LeaseList">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", namespace: string, name: string, property: "kind"): pulumi.Output<"LeaseList">; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1/LeaseList", namespace: string, name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1beta1/Lease", name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1beta1">; public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1beta1/Lease", namespace: string, name: string, property: "api_version"): pulumi.Output<"coordination.k8s.io/v1beta1">; public getResourceProperty(groupVersionKind: "coordination.k8s.io/v1beta1/Lease", name: string, property: "kind"): pulumi.Output<"Lease">; @@ -1571,6 +1595,56 @@ export namespace yaml { public getResourceProperty(groupVersionKind: "networking.k8s.io/v1/NetworkPolicyList", namespace: string, name: string, property: "kind"): pulumi.Output<"NetworkPolicyList">; public getResourceProperty(groupVersionKind: "networking.k8s.io/v1/NetworkPolicyList", name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "networking.k8s.io/v1/NetworkPolicyList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string, property: "api_version"): pulumi.Output<"networking.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string, property: "api_version"): pulumi.Output<"networking.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string, property: "kind"): pulumi.Output<"Ingress">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string, property: "kind"): pulumi.Output<"Ingress">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", name: string, property: "status"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/Ingress", namespace: string, name: string, property: "status"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", name: string, property: "api_version"): pulumi.Output<"networking.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", namespace: string, name: string, property: "api_version"): pulumi.Output<"networking.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", name: string, property: "kind"): pulumi.Output<"IngressList">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", namespace: string, name: string, property: "kind"): pulumi.Output<"IngressList">; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "networking.k8s.io/v1beta1/IngressList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1alpha1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", namespace: string, name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1alpha1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", name: string, property: "kind"): pulumi.Output<"RuntimeClass">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", namespace: string, name: string, property: "kind"): pulumi.Output<"RuntimeClass">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClass", namespace: string, name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1alpha1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", namespace: string, name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1alpha1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", name: string, property: "kind"): pulumi.Output<"RuntimeClassList">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", namespace: string, name: string, property: "kind"): pulumi.Output<"RuntimeClassList">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1alpha1/RuntimeClassList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", namespace: string, name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", name: string, property: "handler"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", namespace: string, name: string, property: "handler"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", name: string, property: "kind"): pulumi.Output<"RuntimeClass">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", namespace: string, name: string, property: "kind"): pulumi.Output<"RuntimeClass">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClass", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", namespace: string, name: string, property: "api_version"): pulumi.Output<"node.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", name: string, property: "kind"): pulumi.Output<"RuntimeClassList">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", namespace: string, name: string, property: "kind"): pulumi.Output<"RuntimeClassList">; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "node.k8s.io/v1beta1/RuntimeClassList", namespace: string, name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "policy/v1beta1/PodDisruptionBudget", name: string, property: "api_version"): pulumi.Output<"policy/v1beta1">; public getResourceProperty(groupVersionKind: "policy/v1beta1/PodDisruptionBudget", namespace: string, name: string, property: "api_version"): pulumi.Output<"policy/v1beta1">; public getResourceProperty(groupVersionKind: "policy/v1beta1/PodDisruptionBudget", name: string, property: "kind"): pulumi.Output<"PodDisruptionBudget">; @@ -1815,6 +1889,26 @@ export namespace yaml { public getResourceProperty(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleList", namespace: string, name: string, property: "kind"): pulumi.Output<"RoleList">; public getResourceProperty(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleList", name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "rbac.authorization.k8s.io/v1beta1/RoleList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "description"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "description"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "global_default"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "global_default"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "kind"): pulumi.Output<"PriorityClass">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "kind"): pulumi.Output<"PriorityClass">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", name: string, property: "value"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClass", namespace: string, name: string, property: "value"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", namespace: string, name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", name: string, property: "kind"): pulumi.Output<"PriorityClassList">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", namespace: string, name: string, property: "kind"): pulumi.Output<"PriorityClassList">; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1/PriorityClassList", namespace: string, name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClass", name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1alpha1">; public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClass", namespace: string, name: string, property: "api_version"): pulumi.Output<"scheduling.k8s.io/v1alpha1">; public getResourceProperty(groupVersionKind: "scheduling.k8s.io/v1alpha1/PriorityClass", name: string, property: "description"): pulumi.Output; @@ -1935,6 +2029,38 @@ export namespace yaml { public getResourceProperty(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachmentList", namespace: string, name: string, property: "kind"): pulumi.Output<"VolumeAttachmentList">; public getResourceProperty(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachmentList", name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "storage.k8s.io/v1alpha1/VolumeAttachmentList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", namespace: string, name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", name: string, property: "kind"): pulumi.Output<"CSIDriver">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", namespace: string, name: string, property: "kind"): pulumi.Output<"CSIDriver">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriver", namespace: string, name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", namespace: string, name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", name: string, property: "kind"): pulumi.Output<"CSIDriverList">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", namespace: string, name: string, property: "kind"): pulumi.Output<"CSIDriverList">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSIDriverList", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", namespace: string, name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", name: string, property: "kind"): pulumi.Output<"CSINode">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", namespace: string, name: string, property: "kind"): pulumi.Output<"CSINode">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", namespace: string, name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINode", namespace: string, name: string, property: "spec"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", namespace: string, name: string, property: "api_version"): pulumi.Output<"storage.k8s.io/v1beta1">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", namespace: string, name: string, property: "items"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", name: string, property: "kind"): pulumi.Output<"CSINodeList">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", namespace: string, name: string, property: "kind"): pulumi.Output<"CSINodeList">; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", name: string, property: "metadata"): pulumi.Output; + public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/CSINodeList", namespace: string, name: string, property: "metadata"): pulumi.Output; public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/StorageClass", name: string, property: "allow_volume_expansion"): pulumi.Output; public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/StorageClass", namespace: string, name: string, property: "allow_volume_expansion"): pulumi.Output; public getResourceProperty(groupVersionKind: "storage.k8s.io/v1beta1/StorageClass", name: string, property: "allowed_topologies"): pulumi.Output; @@ -2110,7 +2236,6 @@ export namespace yaml { // engine instead. if ( (apiVersion == "v1" && kind == "List") - || (apiVersion == "admissionregistration.k8s.io/v1alpha1" && kind == "InitializerConfigurationList") || (apiVersion == "admissionregistration.k8s.io/v1beta1" && kind == "MutatingWebhookConfigurationList") || (apiVersion == "admissionregistration.k8s.io/v1beta1" && kind == "ValidatingWebhookConfigurationList") || (apiVersion == "apiextensions.k8s.io/v1beta1" && kind == "CustomResourceDefinitionList") @@ -2139,6 +2264,7 @@ export namespace yaml { || (apiVersion == "batch/v1beta1" && kind == "CronJobList") || (apiVersion == "batch/v2alpha1" && kind == "CronJobList") || (apiVersion == "certificates.k8s.io/v1beta1" && kind == "CertificateSigningRequestList") + || (apiVersion == "coordination.k8s.io/v1" && kind == "LeaseList") || (apiVersion == "coordination.k8s.io/v1beta1" && kind == "LeaseList") || (apiVersion == "v1" && kind == "ComponentStatusList") || (apiVersion == "v1" && kind == "ConfigMapList") @@ -2164,6 +2290,9 @@ export namespace yaml { || (apiVersion == "extensions/v1beta1" && kind == "PodSecurityPolicyList") || (apiVersion == "extensions/v1beta1" && kind == "ReplicaSetList") || (apiVersion == "networking.k8s.io/v1" && kind == "NetworkPolicyList") + || (apiVersion == "networking.k8s.io/v1beta1" && kind == "IngressList") + || (apiVersion == "node.k8s.io/v1alpha1" && kind == "RuntimeClassList") + || (apiVersion == "node.k8s.io/v1beta1" && kind == "RuntimeClassList") || (apiVersion == "policy/v1beta1" && kind == "PodDisruptionBudgetList") || (apiVersion == "policy/v1beta1" && kind == "PodSecurityPolicyList") || (apiVersion == "rbac.authorization.k8s.io/v1" && kind == "ClusterRoleBindingList") @@ -2178,12 +2307,15 @@ export namespace yaml { || (apiVersion == "rbac.authorization.k8s.io/v1beta1" && kind == "ClusterRoleList") || (apiVersion == "rbac.authorization.k8s.io/v1beta1" && kind == "RoleBindingList") || (apiVersion == "rbac.authorization.k8s.io/v1beta1" && kind == "RoleList") + || (apiVersion == "scheduling.k8s.io/v1" && kind == "PriorityClassList") || (apiVersion == "scheduling.k8s.io/v1alpha1" && kind == "PriorityClassList") || (apiVersion == "scheduling.k8s.io/v1beta1" && kind == "PriorityClassList") || (apiVersion == "settings.k8s.io/v1alpha1" && kind == "PodPresetList") || (apiVersion == "storage.k8s.io/v1" && kind == "StorageClassList") || (apiVersion == "storage.k8s.io/v1" && kind == "VolumeAttachmentList") || (apiVersion == "storage.k8s.io/v1alpha1" && kind == "VolumeAttachmentList") + || (apiVersion == "storage.k8s.io/v1beta1" && kind == "CSIDriverList") + || (apiVersion == "storage.k8s.io/v1beta1" && kind == "CSINodeList") || (apiVersion == "storage.k8s.io/v1beta1" && kind == "StorageClassList") || (apiVersion == "storage.k8s.io/v1beta1" && kind == "VolumeAttachmentList") ) { @@ -2206,16 +2338,6 @@ export namespace yaml { id = pulumi.concat(namespace, "/", id); } switch (`${apiVersion}/${kind}`) { - case "admissionregistration.k8s.io/v1alpha1/InitializerConfiguration": - return [id.apply(id => ({ - name: `admissionregistration.k8s.io/v1alpha1/InitializerConfiguration::${id}`, - resource: new k8s.admissionregistration.v1alpha1.InitializerConfiguration(id, obj, opts), - }))]; - case "admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList": - return [id.apply(id => ({ - name: `admissionregistration.k8s.io/v1alpha1/InitializerConfigurationList::${id}`, - resource: new k8s.admissionregistration.v1alpha1.InitializerConfigurationList(id, obj, opts), - }))]; case "admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration": return [id.apply(id => ({ name: `admissionregistration.k8s.io/v1beta1/MutatingWebhookConfiguration::${id}`, @@ -2546,6 +2668,16 @@ export namespace yaml { name: `certificates.k8s.io/v1beta1/CertificateSigningRequestList::${id}`, resource: new k8s.certificates.v1beta1.CertificateSigningRequestList(id, obj, opts), }))]; + case "coordination.k8s.io/v1/Lease": + return [id.apply(id => ({ + name: `coordination.k8s.io/v1/Lease::${id}`, + resource: new k8s.coordination.v1.Lease(id, obj, opts), + }))]; + case "coordination.k8s.io/v1/LeaseList": + return [id.apply(id => ({ + name: `coordination.k8s.io/v1/LeaseList::${id}`, + resource: new k8s.coordination.v1.LeaseList(id, obj, opts), + }))]; case "coordination.k8s.io/v1beta1/Lease": return [id.apply(id => ({ name: `coordination.k8s.io/v1beta1/Lease::${id}`, @@ -2806,6 +2938,36 @@ export namespace yaml { name: `networking.k8s.io/v1/NetworkPolicyList::${id}`, resource: new k8s.networking.v1.NetworkPolicyList(id, obj, opts), }))]; + case "networking.k8s.io/v1beta1/Ingress": + return [id.apply(id => ({ + name: `networking.k8s.io/v1beta1/Ingress::${id}`, + resource: new k8s.networking.v1beta1.Ingress(id, obj, opts), + }))]; + case "networking.k8s.io/v1beta1/IngressList": + return [id.apply(id => ({ + name: `networking.k8s.io/v1beta1/IngressList::${id}`, + resource: new k8s.networking.v1beta1.IngressList(id, obj, opts), + }))]; + case "node.k8s.io/v1alpha1/RuntimeClass": + return [id.apply(id => ({ + name: `node.k8s.io/v1alpha1/RuntimeClass::${id}`, + resource: new k8s.node.v1alpha1.RuntimeClass(id, obj, opts), + }))]; + case "node.k8s.io/v1alpha1/RuntimeClassList": + return [id.apply(id => ({ + name: `node.k8s.io/v1alpha1/RuntimeClassList::${id}`, + resource: new k8s.node.v1alpha1.RuntimeClassList(id, obj, opts), + }))]; + case "node.k8s.io/v1beta1/RuntimeClass": + return [id.apply(id => ({ + name: `node.k8s.io/v1beta1/RuntimeClass::${id}`, + resource: new k8s.node.v1beta1.RuntimeClass(id, obj, opts), + }))]; + case "node.k8s.io/v1beta1/RuntimeClassList": + return [id.apply(id => ({ + name: `node.k8s.io/v1beta1/RuntimeClassList::${id}`, + resource: new k8s.node.v1beta1.RuntimeClassList(id, obj, opts), + }))]; case "policy/v1beta1/PodDisruptionBudget": return [id.apply(id => ({ name: `policy/v1beta1/PodDisruptionBudget::${id}`, @@ -2946,6 +3108,16 @@ export namespace yaml { name: `rbac.authorization.k8s.io/v1beta1/RoleList::${id}`, resource: new k8s.rbac.v1beta1.RoleList(id, obj, opts), }))]; + case "scheduling.k8s.io/v1/PriorityClass": + return [id.apply(id => ({ + name: `scheduling.k8s.io/v1/PriorityClass::${id}`, + resource: new k8s.scheduling.v1.PriorityClass(id, obj, opts), + }))]; + case "scheduling.k8s.io/v1/PriorityClassList": + return [id.apply(id => ({ + name: `scheduling.k8s.io/v1/PriorityClassList::${id}`, + resource: new k8s.scheduling.v1.PriorityClassList(id, obj, opts), + }))]; case "scheduling.k8s.io/v1alpha1/PriorityClass": return [id.apply(id => ({ name: `scheduling.k8s.io/v1alpha1/PriorityClass::${id}`, @@ -3006,6 +3178,26 @@ export namespace yaml { name: `storage.k8s.io/v1alpha1/VolumeAttachmentList::${id}`, resource: new k8s.storage.v1alpha1.VolumeAttachmentList(id, obj, opts), }))]; + case "storage.k8s.io/v1beta1/CSIDriver": + return [id.apply(id => ({ + name: `storage.k8s.io/v1beta1/CSIDriver::${id}`, + resource: new k8s.storage.v1beta1.CSIDriver(id, obj, opts), + }))]; + case "storage.k8s.io/v1beta1/CSIDriverList": + return [id.apply(id => ({ + name: `storage.k8s.io/v1beta1/CSIDriverList::${id}`, + resource: new k8s.storage.v1beta1.CSIDriverList(id, obj, opts), + }))]; + case "storage.k8s.io/v1beta1/CSINode": + return [id.apply(id => ({ + name: `storage.k8s.io/v1beta1/CSINode::${id}`, + resource: new k8s.storage.v1beta1.CSINode(id, obj, opts), + }))]; + case "storage.k8s.io/v1beta1/CSINodeList": + return [id.apply(id => ({ + name: `storage.k8s.io/v1beta1/CSINodeList::${id}`, + resource: new k8s.storage.v1beta1.CSINodeList(id, obj, opts), + }))]; case "storage.k8s.io/v1beta1/StorageClass": return [id.apply(id => ({ name: `storage.k8s.io/v1beta1/StorageClass::${id}`, diff --git a/sdk/nodejs/scheduling/index.ts b/sdk/nodejs/scheduling/index.ts index 64e2ae9ea6..8261f62f1a 100755 --- a/sdk/nodejs/scheduling/index.ts +++ b/sdk/nodejs/scheduling/index.ts @@ -2,9 +2,10 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** // Import versions: +import * as v1 from "./v1/index"; import * as v1alpha1 from "./v1alpha1/index"; import * as v1beta1 from "./v1beta1/index"; // Export sub-modules -export { v1alpha1, v1beta1, }; +export { v1, v1alpha1, v1beta1, }; diff --git a/sdk/nodejs/scheduling/v1/PriorityClass.ts b/sdk/nodejs/scheduling/v1/PriorityClass.ts new file mode 100755 index 0000000000..fd0f13cefb --- /dev/null +++ b/sdk/nodejs/scheduling/v1/PriorityClass.ts @@ -0,0 +1,93 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * PriorityClass defines mapping from a priority class name to the priority integer value. The + * value can be any valid integer. + */ + export class PriorityClass extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"scheduling.k8s.io/v1">; + + /** + * description is an arbitrary string that usually provides guidelines on when this priority + * class should be used. + */ + public readonly description: pulumi.Output; + + /** + * globalDefault specifies whether this PriorityClass should be considered as the default + * priority for pods that do not have any priority class. Only one PriorityClass can be marked + * as `globalDefault`. However, if more than one PriorityClasses exists with their + * `globalDefault` field set to true, the smallest value of such global default + * PriorityClasses will be used as the default priority. + */ + public readonly globalDefault: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"PriorityClass">; + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * The value of this priority class. This is the actual priority that pods receive when they + * have the name of this class in their pod spec. + */ + public readonly value: pulumi.Output; + + /** + * Get the state of an existing `PriorityClass` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): PriorityClass { + return new PriorityClass(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.scheduling.v1.PriorityClass { return this.__inputs; } + private readonly __inputs: inputApi.scheduling.v1.PriorityClass; + + /** + * Create a scheduling.v1.PriorityClass resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.scheduling.v1.PriorityClass, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "scheduling.k8s.io/v1"; + inputs["description"] = args && args.description || undefined; + inputs["globalDefault"] = args && args.globalDefault || undefined; + inputs["kind"] = "PriorityClass"; + inputs["metadata"] = args && args.metadata || undefined; + inputs["value"] = args && args.value || undefined; + super("kubernetes:scheduling.k8s.io/v1:PriorityClass", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/scheduling/v1/PriorityClassList.ts b/sdk/nodejs/scheduling/v1/PriorityClassList.ts new file mode 100755 index 0000000000..13ca31fc47 --- /dev/null +++ b/sdk/nodejs/scheduling/v1/PriorityClassList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * PriorityClassList is a collection of priority classes. + */ + export class PriorityClassList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"scheduling.k8s.io/v1">; + + /** + * items is the list of PriorityClasses + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"PriorityClassList">; + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `PriorityClassList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): PriorityClassList { + return new PriorityClassList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.scheduling.v1.PriorityClassList { return this.__inputs; } + private readonly __inputs: inputApi.scheduling.v1.PriorityClassList; + + /** + * Create a scheduling.v1.PriorityClassList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.scheduling.v1.PriorityClassList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "scheduling.k8s.io/v1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "PriorityClassList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:scheduling.k8s.io/v1:PriorityClassList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/scheduling/v1/index.ts b/sdk/nodejs/scheduling/v1/index.ts new file mode 100755 index 0000000000..71d9bd86d3 --- /dev/null +++ b/sdk/nodejs/scheduling/v1/index.ts @@ -0,0 +1,7 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +// Export members: +export * from "./PriorityClass"; +export * from "./PriorityClassList"; + diff --git a/sdk/nodejs/scheduling/v1alpha1/PriorityClass.ts b/sdk/nodejs/scheduling/v1alpha1/PriorityClass.ts index 7e94b82522..72729a0aef 100755 --- a/sdk/nodejs/scheduling/v1alpha1/PriorityClass.ts +++ b/sdk/nodejs/scheduling/v1alpha1/PriorityClass.ts @@ -6,8 +6,9 @@ import * as inputApi from "../../types/input"; import * as outputApi from "../../types/output"; /** - * PriorityClass defines mapping from a priority class name to the priority integer value. The - * value can be any valid integer. + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. */ export class PriorityClass extends pulumi.CustomResource { /** diff --git a/sdk/nodejs/scheduling/v1beta1/PriorityClass.ts b/sdk/nodejs/scheduling/v1beta1/PriorityClass.ts index 44550f1eb6..759121c373 100755 --- a/sdk/nodejs/scheduling/v1beta1/PriorityClass.ts +++ b/sdk/nodejs/scheduling/v1beta1/PriorityClass.ts @@ -6,8 +6,9 @@ import * as inputApi from "../../types/input"; import * as outputApi from "../../types/output"; /** - * PriorityClass defines mapping from a priority class name to the priority integer value. The - * value can be any valid integer. + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. */ export class PriorityClass extends pulumi.CustomResource { /** @@ -43,7 +44,7 @@ import * as outputApi from "../../types/output"; /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/scheduling/v1beta1/PriorityClassList.ts b/sdk/nodejs/scheduling/v1beta1/PriorityClassList.ts index ddc87c427a..64e8e0e902 100755 --- a/sdk/nodejs/scheduling/v1beta1/PriorityClassList.ts +++ b/sdk/nodejs/scheduling/v1beta1/PriorityClassList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/settings/v1alpha1/PodPresetList.ts b/sdk/nodejs/settings/v1alpha1/PodPresetList.ts index 64be3223d8..54cec6ced9 100755 --- a/sdk/nodejs/settings/v1alpha1/PodPresetList.ts +++ b/sdk/nodejs/settings/v1alpha1/PodPresetList.ts @@ -32,7 +32,7 @@ import * as outputApi from "../../types/output"; /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ public readonly metadata: pulumi.Output; diff --git a/sdk/nodejs/storage/v1beta1/CSIDriver.ts b/sdk/nodejs/storage/v1beta1/CSIDriver.ts new file mode 100755 index 0000000000..c9b41870c9 --- /dev/null +++ b/sdk/nodejs/storage/v1beta1/CSIDriver.ts @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * CSIDriver captures information about a Container Storage Interface (CSI) volume driver + * deployed on the cluster. CSI drivers do not need to create the CSIDriver object directly. + * Instead they may use the cluster-driver-registrar sidecar container. When deployed with a CSI + * driver it automatically creates a CSIDriver object representing the driver. Kubernetes attach + * detach controller uses this object to determine whether attach is required. Kubelet uses this + * object to determine whether pod information needs to be passed on mount. CSIDriver objects + * are non-namespaced. + */ + export class CSIDriver extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"storage.k8s.io/v1beta1">; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"CSIDriver">; + + /** + * Standard object metadata. metadata.Name indicates the name of the CSI driver that this + * object refers to; it MUST be the same name returned by the CSI GetPluginName() call for + * that driver. The driver name must be 63 characters or less, beginning and ending with an + * alphanumeric character ([a-z0-9A-Z]) with dashes (-), dots (.), and alphanumerics between. + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Specification of the CSI Driver. + */ + public readonly spec: pulumi.Output; + + /** + * Get the state of an existing `CSIDriver` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): CSIDriver { + return new CSIDriver(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.storage.v1beta1.CSIDriver { return this.__inputs; } + private readonly __inputs: inputApi.storage.v1beta1.CSIDriver; + + /** + * Create a storage.v1beta1.CSIDriver resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.storage.v1beta1.CSIDriver, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "storage.k8s.io/v1beta1"; + inputs["kind"] = "CSIDriver"; + inputs["metadata"] = args && args.metadata || undefined; + inputs["spec"] = args && args.spec || undefined; + super("kubernetes:storage.k8s.io/v1beta1:CSIDriver", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/storage/v1beta1/CSIDriverList.ts b/sdk/nodejs/storage/v1beta1/CSIDriverList.ts new file mode 100755 index 0000000000..bab2921130 --- /dev/null +++ b/sdk/nodejs/storage/v1beta1/CSIDriverList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * CSIDriverList is a collection of CSIDriver objects. + */ + export class CSIDriverList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"storage.k8s.io/v1beta1">; + + /** + * items is the list of CSIDriver + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"CSIDriverList">; + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `CSIDriverList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): CSIDriverList { + return new CSIDriverList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.storage.v1beta1.CSIDriverList { return this.__inputs; } + private readonly __inputs: inputApi.storage.v1beta1.CSIDriverList; + + /** + * Create a storage.v1beta1.CSIDriverList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.storage.v1beta1.CSIDriverList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "storage.k8s.io/v1beta1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "CSIDriverList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:storage.k8s.io/v1beta1:CSIDriverList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/storage/v1beta1/CSINode.ts b/sdk/nodejs/storage/v1beta1/CSINode.ts new file mode 100755 index 0000000000..3d0b3c2ce5 --- /dev/null +++ b/sdk/nodejs/storage/v1beta1/CSINode.ts @@ -0,0 +1,79 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need + * to create the CSINode object directly. As long as they use the node-driver-registrar sidecar + * container, the kubelet will automatically populate the CSINode object for the CSI driver as + * part of kubelet plugin registration. CSINode has the same name as a node. If the object is + * missing, it means either there are no CSI Drivers available on the node, or the Kubelet + * version is low enough that it doesn't create this object. CSINode has an OwnerReference that + * points to the corresponding node object. + */ + export class CSINode extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"storage.k8s.io/v1beta1">; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"CSINode">; + + /** + * metadata.name must be the Kubernetes node name. + */ + public readonly metadata: pulumi.Output; + + /** + * spec is the specification of CSINode + */ + public readonly spec: pulumi.Output; + + /** + * Get the state of an existing `CSINode` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): CSINode { + return new CSINode(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.storage.v1beta1.CSINode { return this.__inputs; } + private readonly __inputs: inputApi.storage.v1beta1.CSINode; + + /** + * Create a storage.v1beta1.CSINode resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.storage.v1beta1.CSINode, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "storage.k8s.io/v1beta1"; + inputs["kind"] = "CSINode"; + inputs["metadata"] = args && args.metadata || undefined; + inputs["spec"] = args && args.spec || undefined; + super("kubernetes:storage.k8s.io/v1beta1:CSINode", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/storage/v1beta1/CSINodeList.ts b/sdk/nodejs/storage/v1beta1/CSINodeList.ts new file mode 100755 index 0000000000..701d086405 --- /dev/null +++ b/sdk/nodejs/storage/v1beta1/CSINodeList.ts @@ -0,0 +1,74 @@ +// *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputApi from "../../types/input"; +import * as outputApi from "../../types/output"; + + /** + * CSINodeList is a collection of CSINode objects. + */ + export class CSINodeList extends pulumi.CustomResource { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + public readonly apiVersion: pulumi.Output<"storage.k8s.io/v1beta1">; + + /** + * items is the list of CSINode + */ + public readonly items: pulumi.Output; + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + public readonly kind: pulumi.Output<"CSINodeList">; + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + public readonly metadata: pulumi.Output; + + /** + * Get the state of an existing `CSINodeList` resource, as identified by `id`. + * Typically this ID is of the form /; if is omitted, then (per + * Kubernetes convention) the ID becomes default/. + * + * Pulumi will keep track of this resource using `name` as the Pulumi ID. + * + * @param name _Unique_ name used to register this resource with Pulumi. + * @param id An ID for the Kubernetes resource to retrieve. Takes the form + * / or . + * @param opts Uniquely specifies a CustomResource to select. + */ + public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): CSINodeList { + return new CSINodeList(name, undefined, { ...opts, id: id }); + } + + public getInputs(): inputApi.storage.v1beta1.CSINodeList { return this.__inputs; } + private readonly __inputs: inputApi.storage.v1beta1.CSINodeList; + + /** + * Create a storage.v1beta1.CSINodeList resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args?: inputApi.storage.v1beta1.CSINodeList, opts?: pulumi.CustomResourceOptions) { + let inputs: pulumi.Inputs = {}; + inputs["apiVersion"] = "storage.k8s.io/v1beta1"; + inputs["items"] = args && args.items || undefined; + inputs["kind"] = "CSINodeList"; + inputs["metadata"] = args && args.metadata || undefined; + super("kubernetes:storage.k8s.io/v1beta1:CSINodeList", name, inputs, opts); + this.__inputs = args; + } + } diff --git a/sdk/nodejs/storage/v1beta1/index.ts b/sdk/nodejs/storage/v1beta1/index.ts index f1f69ba362..9f033810c6 100755 --- a/sdk/nodejs/storage/v1beta1/index.ts +++ b/sdk/nodejs/storage/v1beta1/index.ts @@ -2,6 +2,10 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** // Export members: +export * from "./CSIDriver"; +export * from "./CSIDriverList"; +export * from "./CSINode"; +export * from "./CSINodeList"; export * from "./StorageClass"; export * from "./StorageClassList"; export * from "./VolumeAttachment"; diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index fc96aae4f4..c97b0208ec 100755 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -4,143 +4,6 @@ import * as pulumi from "@pulumi/pulumi"; export namespace admissionregistration { - export namespace v1alpha1 { - /** - * Initializer describes the name and the failure policy of an initializer, and what resources - * it applies to. - */ - export interface Initializer { - /** - * Name is the identifier of the initializer. It will be added to the object that needs to be - * initialized. Name should be fully qualified, e.g., alwayspullimages.kubernetes.io, where - * "alwayspullimages" is the name of the webhook, and kubernetes.io is the name of the - * organization. Required - */ - name: pulumi.Input - - /** - * Rules describes what resources/subresources the initializer cares about. The initializer - * cares about an operation if it matches _any_ Rule. Rule.Resources must not include - * subresources. - */ - rules?: pulumi.Input[]> - - } - - - /** - * InitializerConfiguration describes the configuration of initializers. - */ - export interface InitializerConfiguration { - /** - * APIVersion defines the versioned schema of this representation of an object. Servers should - * convert recognized schemas to the latest internal value, and may reject unrecognized - * values. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources - */ - apiVersion?: pulumi.Input<"admissionregistration.k8s.io/v1alpha1"> - - /** - * Initializers is a list of resources and their default initializers Order-sensitive. When - * merging multiple InitializerConfigurations, we sort the initializers from different - * InitializerConfigurations by the name of the InitializerConfigurations; the order of the - * initializers from the same InitializerConfiguration is preserved. - */ - initializers?: pulumi.Input[]> - - /** - * Kind is a string value representing the REST resource this object represents. Servers may - * infer this from the endpoint the client submits requests to. Cannot be updated. In - * CamelCase. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - kind?: pulumi.Input<"InitializerConfiguration"> - - /** - * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. - */ - metadata?: pulumi.Input - - } - - export function isInitializerConfiguration(o: any): o is InitializerConfiguration { - return o.apiVersion == "admissionregistration.k8s.io/v1alpha1" && o.kind == "InitializerConfiguration"; - } - - /** - * InitializerConfigurationList is a list of InitializerConfiguration. - */ - export interface InitializerConfigurationList { - /** - * List of InitializerConfiguration. - */ - items: pulumi.Input[]> - - /** - * APIVersion defines the versioned schema of this representation of an object. Servers should - * convert recognized schemas to the latest internal value, and may reject unrecognized - * values. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources - */ - apiVersion?: pulumi.Input<"admissionregistration.k8s.io/v1alpha1"> - - /** - * Kind is a string value representing the REST resource this object represents. Servers may - * infer this from the endpoint the client submits requests to. Cannot be updated. In - * CamelCase. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - kind?: pulumi.Input<"InitializerConfigurationList"> - - /** - * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - metadata?: pulumi.Input - - } - - export function isInitializerConfigurationList(o: any): o is InitializerConfigurationList { - return o.apiVersion == "admissionregistration.k8s.io/v1alpha1" && o.kind == "InitializerConfigurationList"; - } - - /** - * Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that - * all the tuple expansions are valid. - */ - export interface Rule { - /** - * APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, - * the length of the slice must be one. Required. - */ - apiGroups?: pulumi.Input[]> - - /** - * APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is - * present, the length of the slice must be one. Required. - */ - apiVersions?: pulumi.Input[]> - - /** - * Resources is a list of resources this rule applies to. - * - * For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all - * resources, but not subresources. 'pods/*' means all subresources of pods. '*‍/scale' - * means all scale subresources. '*‍/*' means all resources and their subresources. - * - * If wildcard is present, the validation rule will ensure resources do not overlap with each - * other. - * - * Depending on the enclosing object, subresources might not be allowed. Required. - */ - resources?: pulumi.Input[]> - - } - - - } - export namespace v1beta1 { /** * MutatingWebhookConfiguration describes the configuration of and admission webhook that accept @@ -254,6 +117,15 @@ export namespace admissionregistration { */ resources?: pulumi.Input[]> + /** + * scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" + * "Cluster" means that only cluster-scoped resources will match this rule. Namespace API + * objects are cluster-scoped. "Namespaced" means that only namespaced resources will match + * this rule. "*" means that there are no scope restrictions. Subresources match the scope of + * their parent resource. Default is "*". + */ + scope?: pulumi.Input + } @@ -370,6 +242,16 @@ export namespace admissionregistration { */ name: pulumi.Input + /** + * AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the + * Webhook expects. API server will try to use first version in the list which it supports. If + * none of the versions specified in this list supported by API server, validation will fail + * for this object. If a persisted webhook configuration specifies allowed versions and does + * not include any versions known to the API Server, calls to the webhook will fail and be + * subject to the failure policy. Default to `['v1beta1']`. + */ + admissionReviewVersions?: pulumi.Input[]> + /** * FailurePolicy defines how unrecognized errors from the admission endpoint are handled - * allowed values are Ignore or Fail. Defaults to Ignore. @@ -438,6 +320,13 @@ export namespace admissionregistration { */ sideEffects?: pulumi.Input + /** + * TimeoutSeconds specifies the timeout for this webhook. After the timeout passes, the + * webhook call will be ignored or the API call will fail based on the failure policy. The + * timeout value must be between 1 and 30 seconds. Default to 30 seconds. + */ + timeoutSeconds?: pulumi.Input + } @@ -551,6 +440,16 @@ export namespace apiextensions { */ strategy: pulumi.Input + /** + * ConversionReviewVersions is an ordered list of preferred `ConversionReview` versions the + * Webhook expects. API server will try to use first version in the list which it supports. If + * none of the versions specified in this list supported by API server, conversion will fail + * for this object. If a persisted Webhook configuration specifies allowed versions and does + * not include any versions known to the API Server, calls to the webhook will fail. Default + * to `['v1beta1']`. + */ + conversionReviewVersions?: pulumi.Input[]> + /** * `webhookClientConfig` is the instructions for how to call the webhook if strategy is * `Webhook`. This field is alpha-level and is only honored by servers that enable the @@ -1020,6 +919,9 @@ export namespace apiextensions { not?: pulumi.Input + nullable?: pulumi.Input + + oneOf?: pulumi.Input[]> @@ -1161,7 +1063,9 @@ export namespace apiregistration { return o.apiVersion == "apiregistration.k8s.io/v1" && o.kind == "APIService"; } - + /** + * APIServiceCondition describes the state of an APIService at a particular point + */ export interface APIServiceCondition { /** * Status is the status of the condition. Can be True, False, Unknown. @@ -1358,7 +1262,9 @@ export namespace apiregistration { return o.apiVersion == "apiregistration.k8s.io/v1beta1" && o.kind == "APIService"; } - + /** + * APIServiceCondition describes the state of an APIService at a particular point + */ export interface APIServiceCondition { /** * Status is the status of the condition. Can be True, False, Unknown. @@ -3001,7 +2907,7 @@ export namespace apps { * immediately when the rolling update starts, such that the total number of old and new pods * do not exceed 130% of desired pods. Once old pods have been killed, new ReplicaSet can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ maxSurge?: pulumi.Input @@ -3422,7 +3328,7 @@ export namespace apps { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -3458,7 +3364,8 @@ export namespace apps { kind?: pulumi.Input<"ControllerRevisionList"> /** - * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * More info: + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -3491,20 +3398,20 @@ export namespace apps { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ spec?: pulumi.Input /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ status?: pulumi.Input @@ -3573,7 +3480,7 @@ export namespace apps { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -3974,20 +3881,20 @@ export namespace apps { /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ spec?: pulumi.Input /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ status?: pulumi.Input @@ -4057,7 +3964,7 @@ export namespace apps { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ metadata?: pulumi.Input @@ -4175,7 +4082,7 @@ export namespace apps { * immediately when the rolling update starts, such that the total number of old and new pods * do not exceed 130% of desired pods. Once old pods have been killed, new ReplicaSet can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ maxSurge?: pulumi.Input @@ -4230,19 +4137,19 @@ export namespace apps { /** * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata. */ metadata?: pulumi.Input /** * defines the behavior of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. */ spec?: pulumi.Input /** * current status of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. * Read-only. */ status?: pulumi.Input @@ -7957,6 +7864,116 @@ export namespace certificates { } export namespace coordination { + export namespace v1 { + /** + * Lease defines a lease concept. + */ + export interface Lease { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"coordination.k8s.io/v1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"Lease"> + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + /** + * Specification of the Lease. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + spec?: pulumi.Input + + } + + export function isLease(o: any): o is Lease { + return o.apiVersion == "coordination.k8s.io/v1" && o.kind == "Lease"; + } + + /** + * LeaseList is a list of Lease objects. + */ + export interface LeaseList { + /** + * Items is a list of schema objects. + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"coordination.k8s.io/v1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"LeaseList"> + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isLeaseList(o: any): o is LeaseList { + return o.apiVersion == "coordination.k8s.io/v1" && o.kind == "LeaseList"; + } + + /** + * LeaseSpec is a specification of a Lease. + */ + export interface LeaseSpec { + /** + * acquireTime is a time when the current lease was acquired. + */ + acquireTime?: pulumi.Input + + /** + * holderIdentity contains the identity of the holder of a current lease. + */ + holderIdentity?: pulumi.Input + + /** + * leaseDurationSeconds is a duration that candidates for a lease need to wait to force + * acquire it. This is measure against time of last observed RenewTime. + */ + leaseDurationSeconds?: pulumi.Input + + /** + * leaseTransitions is the number of transitions of a lease between holders. + */ + leaseTransitions?: pulumi.Input + + /** + * renewTime is a time when the current holder of a lease has last updated the lease. + */ + renewTime?: pulumi.Input + + } + + + } + export namespace v1beta1 { /** * Lease defines a lease concept. @@ -8342,20 +8359,58 @@ export namespace core { /** - * Adds and removes POSIX capabilities from running containers. + * Represents a source location of a volume to mount, managed by an external CSI driver */ - export interface Capabilities { + export interface CSIVolumeSource { /** - * Added capabilities + * Driver is the name of the CSI driver that handles this volume. Consult with your admin for + * the correct name as registered in the cluster. */ - add?: pulumi.Input[]> + driver: pulumi.Input /** - * Removed capabilities + * Filesystem type to mount. Ex. "ext4", "xfs", "ntfs". If not provided, the empty value is + * passed to the associated CSI driver which will determine the default filesystem to apply. */ - drop?: pulumi.Input[]> - - } + fsType?: pulumi.Input + + /** + * NodePublishSecretRef is a reference to the secret object containing sensitive information + * to pass to the CSI driver to complete the CSI NodePublishVolume and NodeUnpublishVolume + * calls. This field is optional, and may be empty if no secret is required. If the secret + * object contains more than one secret, all secret references are passed. + */ + nodePublishSecretRef?: pulumi.Input + + /** + * Specifies a read-only configuration for the volume. Defaults to false (read/write). + */ + readOnly?: pulumi.Input + + /** + * VolumeAttributes stores driver-specific properties that are passed to the CSI driver. + * Consult your driver's documentation for supported values. + */ + volumeAttributes?: pulumi.Input<{[key: string]: pulumi.Input}> + + } + + + /** + * Adds and removes POSIX capabilities from running containers. + */ + export interface Capabilities { + /** + * Added capabilities + */ + add?: pulumi.Input[]> + + /** + * Removed capabilities + */ + drop?: pulumi.Input[]> + + } /** @@ -10335,10 +10390,14 @@ export namespace core { postStart?: pulumi.Input /** - * PreStop is called immediately before a container is terminated. The container is terminated - * after the handler completes. The reason for termination is passed to the handler. - * Regardless of the outcome of the handler, the container is eventually terminated. Other - * management of the container blocks until the hook completes. More info: + * PreStop is called immediately before a container is terminated due to an API request or + * management event such as liveness probe failure, preemption, resource contention, etc. The + * handler is not called if the container crashes or exits. The reason for termination is + * passed to the handler. The Pod's termination grace period countdown begins before the + * PreStop hooked is executed. Regardless of the outcome of the handler, the container will + * eventually terminate within the Pod's termination grace period. Other management of the + * container blocks until the hook completes or until the termination grace period is reached. + * More info: * https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks */ preStop?: pulumi.Input @@ -11583,7 +11642,7 @@ export namespace core { claimRef?: pulumi.Input /** - * CSI represents storage that handled by an external CSI driver (Beta feature). + * CSI represents storage that is handled by an external CSI driver (Beta feature). */ csi?: pulumi.Input @@ -12226,7 +12285,7 @@ export namespace core { * If specified, all readiness gates will be evaluated for pod readiness. A pod is ready when * all its containers are ready AND all conditions specified in the readiness gates have * status equal to "True" More info: - * https://github.com/kubernetes/community/blob/master/keps/sig-network/0007-pod-ready%2B%2B.md + * https://git.k8s.io/enhancements/keps/sig-network/0007-pod-ready%2B%2B.md */ readinessGates?: pulumi.Input[]> @@ -12242,8 +12301,8 @@ export namespace core { * used to run this pod. If no RuntimeClass resource matches the named class, the pod will * not be run. If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit * class with an empty definition that uses the default runtime handler. More info: - * https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md - * This is an alpha feature and may change in the future. + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md This is an alpha feature and + * may change in the future. */ runtimeClassName?: pulumi.Input @@ -12645,6 +12704,12 @@ export namespace core { */ readOnly?: pulumi.Input + /** + * Tenant owning the given Quobyte volume in the Backend Used with dynamically provisioned + * Quobyte volumes, value is set by the plugin + */ + tenant?: pulumi.Input + /** * User to map volume access to Defaults to serivceaccount user */ @@ -13982,7 +14047,7 @@ export namespace core { * builds on ClusterIP and allocates a port on every node which routes to the clusterIP. * "LoadBalancer" builds on NodePort and creates an external load-balancer (if supported in * the current cloud) which routes to the clusterIP. More info: - * https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services---service-types + * https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types */ type?: pulumi.Input @@ -14301,6 +14366,12 @@ export namespace core { */ configMap?: pulumi.Input + /** + * CSI (Container Storage Interface) represents storage that is handled by an external CSI + * driver (Alpha feature). + */ + csi?: pulumi.Input + /** * DownwardAPI represents downward API about the pod that should populate this volume */ @@ -14478,6 +14549,14 @@ export namespace core { */ subPath?: pulumi.Input + /** + * Expanded path within the volume from which the container's volume should be mounted. + * Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded + * using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath + * are mutually exclusive. This field is alpha in 1.14. + */ + subPathExpr?: pulumi.Input + } @@ -14743,6 +14822,18 @@ export namespace events { export namespace extensions { export namespace v1beta1 { + /** + * AllowedCSIDriver represents a single inline CSI Driver that is allowed to be used. + */ + export interface AllowedCSIDriver { + /** + * Name is the registered name of the CSI driver + */ + name: pulumi.Input + + } + + /** * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. Deprecated: use * AllowedFlexVolume from policy API Group instead. @@ -14803,20 +14894,20 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ spec?: pulumi.Input /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ status?: pulumi.Input @@ -14885,7 +14976,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15431,7 +15522,9 @@ export namespace extensions { /** * Ingress is a collection of rules that allow inbound connections to reach the endpoints * defined by a backend. An Ingress can be configured to give services externally-reachable - * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. DEPRECATED - + * This group version of Ingress is deprecated by networking.k8s.io/v1beta1 Ingress. See the + * release notes for more information. */ export interface Ingress { /** @@ -15452,19 +15545,19 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input /** * Spec is the desired state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ spec?: pulumi.Input /** * Status is the current state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ status?: pulumi.Input @@ -15518,7 +15611,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15640,7 +15733,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15737,7 +15830,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15837,15 +15930,15 @@ export namespace extensions { ingress?: pulumi.Input[]> /** - * List of rule types that the NetworkPolicy relates to. Valid options are Ingress, Egress, or - * Ingress,Egress. If this field is not specified, it will default based on the existence of - * Ingress or Egress rules; policies that contain an Egress section are assumed to affect - * Egress, and all policies (whether or not they contain an Ingress section) are assumed to - * affect Ingress. If you want to write an egress-only policy, you must explicitly specify - * policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies that no - * egress is allowed, you must specify a policyTypes value that include "Egress" (since such a - * policy would not include an Egress section and would otherwise default to just [ "Ingress" - * ]). This field is beta-level in 1.8 + * List of rule types that the NetworkPolicy relates to. Valid options are "Ingress", + * "Egress", or "Ingress,Egress". If this field is not specified, it will default based on the + * existence of Ingress or Egress rules; policies that contain an Egress section are assumed + * to affect Egress, and all policies (whether or not they contain an Ingress section) are + * assumed to affect Ingress. If you want to write an egress-only policy, you must explicitly + * specify policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies + * that no egress is allowed, you must specify a policyTypes value that include "Egress" + * (since such a policy would not include an Egress section and would otherwise default to + * just [ "Ingress" ]). This field is beta-level in 1.8 */ policyTypes?: pulumi.Input[]> @@ -15876,7 +15969,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15919,7 +16012,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -15961,6 +16054,13 @@ export namespace extensions { */ allowPrivilegeEscalation?: pulumi.Input + /** + * AllowedCSIDrivers is a whitelist of inline CSI drivers that must be explicitly set to be + * embedded within a pod spec. An empty value means no CSI drivers can run inline within a pod + * spec. + */ + allowedCSIDrivers?: pulumi.Input[]> + /** * allowedCapabilities is a list of capabilities that can be requested to add to the * container. Capabilities in this field may be added at the pod author's discretion. You must @@ -16103,20 +16203,20 @@ export namespace extensions { /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ spec?: pulumi.Input /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ status?: pulumi.Input @@ -16186,7 +16286,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ metadata?: pulumi.Input @@ -16316,7 +16416,7 @@ export namespace extensions { * scaled up immediately when the rolling update starts, such that the total number of old and * new pods do not exceed 130% of desired pods. Once old pods have been killed, new RC can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ maxSurge?: pulumi.Input @@ -16414,19 +16514,19 @@ export namespace extensions { /** * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata. */ metadata?: pulumi.Input /** * defines the behavior of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. */ spec?: pulumi.Input /** * current status of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. * Read-only. */ status?: pulumi.Input @@ -16636,6 +16736,15 @@ export namespace meta { */ shortNames?: pulumi.Input[]> + /** + * The hash value of the storage version, the version this resource is converted to when + * written to the data store. Value must be treated as opaque by clients. Only equality + * comparison on the value is valid. This is an alpha feature and may change or be removed in + * the future. The field is populated by the apiserver only if the StorageVersionHash feature + * gate is enabled. This field will remain optional even if it graduates. + */ + storageVersionHash?: pulumi.Input + /** * version is the preferred version of the resource. Empty implies the version of the * containing resource list For subresources, this may have a different value, for example: v1 @@ -16922,6 +17031,46 @@ export namespace meta { } + /** + * ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that + * the fieldset applies to. + */ + export interface ManagedFieldsEntry { + /** + * APIVersion defines the version of this resource that this field set applies to. The format + * is "group/version" just like the top-level APIVersion field. It is necessary to track the + * version of a field set because it cannot be automatically converted. + */ + apiVersion?: pulumi.Input + + /** + * Fields identifies a set of fields. + */ + fields?: pulumi.Input + + /** + * Manager is an identifier of the workflow managing these fields. + */ + manager?: pulumi.Input + + /** + * Operation is the type of operation which lead to this ManagedFieldsEntry being created. The + * only valid values for this field are 'Apply' and 'Update'. + */ + operation?: pulumi.Input + + /** + * Time is timestamp of when these fields were set. It should always be empty if Operation is + * 'Apply' + */ + time?: pulumi.Input + + } + + export function isManagedFieldsEntry(o: any): o is ManagedFieldsEntry { + return o.apiVersion == "meta/v1" && o.kind == "ManagedFieldsEntry"; + } + /** * ObjectMeta is metadata that all persisted resources must have, which includes all objects * users must create. @@ -17020,6 +17169,8 @@ export namespace meta { * When an object is created, the system will populate this list with the current set of * initializers. Only privileged users may set or modify this list. Once it is empty, it may * not be modified further by any user. + * + * DEPRECATED - initializers are an alpha field and will be removed in v1.15. */ initializers?: pulumi.Input @@ -17030,6 +17181,17 @@ export namespace meta { */ labels?: pulumi.Input<{[key: string]: pulumi.Input}> + /** + * ManagedFields maps workflow-id and version to the set of fields that are managed by that + * workflow. This is mostly for internal housekeeping, and users typically shouldn't need to + * set or understand this field. A workflow can be the user's name, a controller's name, or + * the name of a specific apply path like "ci-cd". The set of fields is always in the version + * that the workflow used when modifying the object. + * + * This field is alpha and can be changed or removed without notice. + */ + managedFields?: pulumi.Input[]> + /** * Name must be unique within a namespace. Is required when creating resources, although some * resources may allow a client to request the generation of an appropriate name @@ -17138,6 +17300,11 @@ export namespace meta { * Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out. */ export interface Preconditions { + /** + * Specifies the target ResourceVersion + */ + resourceVersion?: pulumi.Input + /** * Specifies the target UID. */ @@ -17374,7 +17541,7 @@ export namespace networking { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -17468,7 +17635,7 @@ export namespace networking { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -17565,15 +17732,15 @@ export namespace networking { ingress?: pulumi.Input[]> /** - * List of rule types that the NetworkPolicy relates to. Valid options are Ingress, Egress, or - * Ingress,Egress. If this field is not specified, it will default based on the existence of - * Ingress or Egress rules; policies that contain an Egress section are assumed to affect - * Egress, and all policies (whether or not they contain an Ingress section) are assumed to - * affect Ingress. If you want to write an egress-only policy, you must explicitly specify - * policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies that no - * egress is allowed, you must specify a policyTypes value that include "Egress" (since such a - * policy would not include an Egress section and would otherwise default to just [ "Ingress" - * ]). This field is beta-level in 1.8 + * List of rule types that the NetworkPolicy relates to. Valid options are "Ingress", + * "Egress", or "Ingress,Egress". If this field is not specified, it will default based on the + * existence of Ingress or Egress rules; policies that contain an Egress section are assumed + * to affect Egress, and all policies (whether or not they contain an Ingress section) are + * assumed to affect Ingress. If you want to write an egress-only policy, you must explicitly + * specify policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies + * that no egress is allowed, you must specify a policyTypes value that include "Egress" + * (since such a policy would not include an Egress section and would otherwise default to + * just [ "Ingress" ]). This field is beta-level in 1.8 */ policyTypes?: pulumi.Input[]> @@ -17582,153 +17749,57 @@ export namespace networking { } -} - -export namespace pkg { - export namespace runtime { + export namespace v1beta1 { /** - * RawExtension is used to hold extensions in external versions. - * - * To use this, make a field which has RawExtension as its type in your external, versioned - * struct, and Object in your internal struct. You also need to register your various plugin - * types. - * - * // Internal package: type MyAPIObject struct { - * runtime.TypeMeta `json:",inline"` - * MyPlugin runtime.Object `json:"myPlugin"` - * } type PluginA struct { - * AOption string `json:"aOption"` - * } - * - * // External package: type MyAPIObject struct { - * runtime.TypeMeta `json:",inline"` - * MyPlugin runtime.RawExtension `json:"myPlugin"` - * } type PluginA struct { - * AOption string `json:"aOption"` - * } - * - * // On the wire, the JSON will look something like this: { - * "kind":"MyAPIObject", - * "apiVersion":"v1", - * "myPlugin": { - * "kind":"PluginA", - * "aOption":"foo", - * }, - * } - * - * So what happens? Decode first uses json or yaml to unmarshal the serialized data into your - * external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step - * is to copy (using pkg/conversion) into the internal struct. The runtime package's - * DefaultScheme has conversion functions installed which will unpack the JSON stored in - * RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: - * In the case where the object is of an unknown type, a runtime.Unknown object will be created - * and stored.) + * HTTPIngressPath associates a path regex with a backend. Incoming urls matching the path are + * forwarded to the backend. */ - export interface RawExtension { + export interface HTTPIngressPath { /** - * Raw is the underlying serialization of this object. + * Backend defines the referenced service endpoint to which the traffic will be forwarded to. */ - Raw: pulumi.Input - - } - - - } - - export namespace version { - /** - * Info contains versioning information. how we'll want to distribute that information. - */ - export interface Info { - - buildDate: pulumi.Input - - - compiler: pulumi.Input - - - gitCommit: pulumi.Input - - - gitTreeState: pulumi.Input - - - gitVersion: pulumi.Input - - - goVersion: pulumi.Input - - - major: pulumi.Input - - - minor: pulumi.Input - - - platform: pulumi.Input - - } - + backend: pulumi.Input - } - -} - -export namespace policy { - export namespace v1beta1 { - /** - * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. - */ - export interface AllowedFlexVolume { /** - * driver is the name of the Flexvolume driver. + * Path is an extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the + * egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. + * Currently it can contain characters disallowed from the conventional "path" part of a URL + * as defined by RFC 3986. Paths must begin with a '/'. If unspecified, the path defaults to a + * catch all sending traffic to the backend. */ - driver: pulumi.Input + path?: pulumi.Input } /** - * AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods - * to use. It requires the path prefix to be defined. + * HTTPIngressRuleValue is a list of http selectors pointing to backends. In the example: + * http:///? -> backend where where parts of the url correspond to RFC + * 3986, this resource will be used to match against everything after the last '/' and before + * the first '?' or '#'. */ - export interface AllowedHostPath { - /** - * pathPrefix is the path prefix that the host volume must match. It does not support `*`. - * Trailing slashes are trimmed when validating the path prefix with a host path. - * - * Examples: `/foo` would allow `/foo`, `/foo/` and `/foo/bar` `/foo` would not allow `/food` - * or `/etc/foo` - */ - pathPrefix?: pulumi.Input - + export interface HTTPIngressRuleValue { /** - * when set to true, will allow host volumes matching the pathPrefix only if all volume mounts - * are readOnly. + * A collection of paths that map requests to backends. */ - readOnly?: pulumi.Input + paths: pulumi.Input[]> } /** - * Eviction evicts a pod from its node subject to certain policies and safety constraints. This - * is a subresource of Pod. A request to cause such an eviction is created by POSTing to - * .../pods//evictions. + * Ingress is a collection of rules that allow inbound connections to reach the endpoints + * defined by a backend. An Ingress can be configured to give services externally-reachable + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. */ - export interface Eviction { + export interface Ingress { /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized * values. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources */ - apiVersion?: pulumi.Input - - /** - * DeleteOptions may be provided - */ - deleteOptions?: pulumi.Input + apiVersion?: pulumi.Input<"networking.k8s.io/v1beta1"> /** * Kind is a string value representing the REST resource this object represents. Servers may @@ -17736,10 +17807,539 @@ export namespace policy { * CamelCase. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds */ - kind?: pulumi.Input + kind?: pulumi.Input<"Ingress"> /** - * ObjectMeta describes the pod that is being evicted. + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + /** + * Spec is the desired state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + spec?: pulumi.Input + + /** + * Status is the current state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + status?: pulumi.Input + + } + + export function isIngress(o: any): o is Ingress { + return o.apiVersion == "networking.k8s.io/v1beta1" && o.kind == "Ingress"; + } + + /** + * IngressBackend describes all endpoints for a given service and port. + */ + export interface IngressBackend { + /** + * Specifies the name of the referenced service. + */ + serviceName: pulumi.Input + + /** + * Specifies the port of the referenced service. + */ + servicePort: pulumi.Input + + } + + + /** + * IngressList is a collection of Ingress. + */ + export interface IngressList { + /** + * Items is the list of Ingress. + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"networking.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"IngressList"> + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isIngressList(o: any): o is IngressList { + return o.apiVersion == "networking.k8s.io/v1beta1" && o.kind == "IngressList"; + } + + /** + * IngressRule represents the rules mapping the paths under a specified host to the related + * backend services. Incoming requests are first evaluated for a host match, then routed to the + * backend associated with the matching IngressRuleValue. + */ + export interface IngressRule { + /** + * Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the + * following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not + * allowed. Currently an IngressRuleValue can only apply to the + * IP in the Spec of the parent Ingress. + * 2. The `:` delimiter is not respected because ports are not allowed. + * Currently the port of an Ingress is implicitly :80 for http and + * :443 for https. + * Both these may change in the future. Incoming requests are matched against the host before + * the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on + * the specified IngressRuleValue. + */ + host?: pulumi.Input + + + http?: pulumi.Input + + } + + + /** + * IngressSpec describes the Ingress the user wishes to exist. + */ + export interface IngressSpec { + /** + * A default backend capable of servicing requests that don't match any rule. At least one of + * 'backend' or 'rules' must be specified. This field is optional to allow the loadbalancer + * controller or defaulting logic to specify a global default. + */ + backend?: pulumi.Input + + /** + * A list of host rules used to configure the Ingress. If unspecified, or no rule matches, all + * traffic is sent to the default backend. + */ + rules?: pulumi.Input[]> + + /** + * TLS configuration. Currently the Ingress only supports a single TLS port, 443. If multiple + * members of this list specify different hosts, they will be multiplexed on the same port + * according to the hostname specified through the SNI TLS extension, if the ingress + * controller fulfilling the ingress supports SNI. + */ + tls?: pulumi.Input[]> + + } + + + /** + * IngressStatus describe the current state of the Ingress. + */ + export interface IngressStatus { + /** + * LoadBalancer contains the current status of the load-balancer. + */ + loadBalancer?: pulumi.Input + + } + + + /** + * IngressTLS describes the transport layer security associated with an Ingress. + */ + export interface IngressTLS { + /** + * Hosts are a list of hosts included in the TLS certificate. The values in this list must + * match the name/s used in the tlsSecret. Defaults to the wildcard host setting for the + * loadbalancer controller fulfilling this Ingress, if left unspecified. + */ + hosts?: pulumi.Input[]> + + /** + * SecretName is the name of the secret used to terminate SSL traffic on 443. Field is left + * optional to allow SSL routing based on SNI hostname alone. If the SNI host in a listener + * conflicts with the "Host" header field used by an IngressRule, the SNI host is used for + * termination and value of the Host header is used for routing. + */ + secretName?: pulumi.Input + + } + + + } + +} + +export namespace node { + export namespace v1alpha1 { + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export interface RuntimeClass { + /** + * Specification of the RuntimeClass More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + spec: pulumi.Input + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"node.k8s.io/v1alpha1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"RuntimeClass"> + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isRuntimeClass(o: any): o is RuntimeClass { + return o.apiVersion == "node.k8s.io/v1alpha1" && o.kind == "RuntimeClass"; + } + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export interface RuntimeClassList { + /** + * Items is a list of schema objects. + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"node.k8s.io/v1alpha1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"RuntimeClassList"> + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isRuntimeClassList(o: any): o is RuntimeClassList { + return o.apiVersion == "node.k8s.io/v1alpha1" && o.kind == "RuntimeClassList"; + } + + /** + * RuntimeClassSpec is a specification of a RuntimeClass. It contains parameters that are + * required to describe the RuntimeClass to the Container Runtime Interface (CRI) + * implementation, as well as any other components that need to understand how the pod will be + * run. The RuntimeClassSpec is immutable. + */ + export interface RuntimeClassSpec { + /** + * RuntimeHandler specifies the underlying runtime and configuration that the CRI + * implementation will use to handle pods of this class. The possible values are specific to + * the node & CRI configuration. It is assumed that all handlers are available on every node, + * and handlers of the same name are equivalent on every node. For example, a handler called + * "runc" might specify that the runc OCI runtime (using native Linux containers) will be used + * to run the containers in a pod. The RuntimeHandler must conform to the DNS Label (RFC 1123) + * requirements and is immutable. + */ + runtimeHandler: pulumi.Input + + } + + + } + + export namespace v1beta1 { + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export interface RuntimeClass { + /** + * Handler specifies the underlying runtime and configuration that the CRI implementation will + * use to handle pods of this class. The possible values are specific to the node & CRI + * configuration. It is assumed that all handlers are available on every node, and handlers + * of the same name are equivalent on every node. For example, a handler called "runc" might + * specify that the runc OCI runtime (using native Linux containers) will be used to run the + * containers in a pod. The Handler must conform to the DNS Label (RFC 1123) requirements, and + * is immutable. + */ + handler: pulumi.Input + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"node.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"RuntimeClass"> + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isRuntimeClass(o: any): o is RuntimeClass { + return o.apiVersion == "node.k8s.io/v1beta1" && o.kind == "RuntimeClass"; + } + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export interface RuntimeClassList { + /** + * Items is a list of schema objects. + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"node.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"RuntimeClassList"> + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isRuntimeClassList(o: any): o is RuntimeClassList { + return o.apiVersion == "node.k8s.io/v1beta1" && o.kind == "RuntimeClassList"; + } + + } + +} + +export namespace pkg { + export namespace runtime { + /** + * RawExtension is used to hold extensions in external versions. + * + * To use this, make a field which has RawExtension as its type in your external, versioned + * struct, and Object in your internal struct. You also need to register your various plugin + * types. + * + * // Internal package: type MyAPIObject struct { + * runtime.TypeMeta `json:",inline"` + * MyPlugin runtime.Object `json:"myPlugin"` + * } type PluginA struct { + * AOption string `json:"aOption"` + * } + * + * // External package: type MyAPIObject struct { + * runtime.TypeMeta `json:",inline"` + * MyPlugin runtime.RawExtension `json:"myPlugin"` + * } type PluginA struct { + * AOption string `json:"aOption"` + * } + * + * // On the wire, the JSON will look something like this: { + * "kind":"MyAPIObject", + * "apiVersion":"v1", + * "myPlugin": { + * "kind":"PluginA", + * "aOption":"foo", + * }, + * } + * + * So what happens? Decode first uses json or yaml to unmarshal the serialized data into your + * external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step + * is to copy (using pkg/conversion) into the internal struct. The runtime package's + * DefaultScheme has conversion functions installed which will unpack the JSON stored in + * RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: + * In the case where the object is of an unknown type, a runtime.Unknown object will be created + * and stored.) + */ + export interface RawExtension { + /** + * Raw is the underlying serialization of this object. + */ + Raw: pulumi.Input + + } + + + } + + export namespace version { + /** + * Info contains versioning information. how we'll want to distribute that information. + */ + export interface Info { + + buildDate: pulumi.Input + + + compiler: pulumi.Input + + + gitCommit: pulumi.Input + + + gitTreeState: pulumi.Input + + + gitVersion: pulumi.Input + + + goVersion: pulumi.Input + + + major: pulumi.Input + + + minor: pulumi.Input + + + platform: pulumi.Input + + } + + + } + +} + +export namespace policy { + export namespace v1beta1 { + /** + * AllowedCSIDriver represents a single inline CSI Driver that is allowed to be used. + */ + export interface AllowedCSIDriver { + /** + * Name is the registered name of the CSI driver + */ + name: pulumi.Input + + } + + + /** + * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. + */ + export interface AllowedFlexVolume { + /** + * driver is the name of the Flexvolume driver. + */ + driver: pulumi.Input + + } + + + /** + * AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods + * to use. It requires the path prefix to be defined. + */ + export interface AllowedHostPath { + /** + * pathPrefix is the path prefix that the host volume must match. It does not support `*`. + * Trailing slashes are trimmed when validating the path prefix with a host path. + * + * Examples: `/foo` would allow `/foo`, `/foo/` and `/foo/bar` `/foo` would not allow `/food` + * or `/etc/foo` + */ + pathPrefix?: pulumi.Input + + /** + * when set to true, will allow host volumes matching the pathPrefix only if all volume mounts + * are readOnly. + */ + readOnly?: pulumi.Input + + } + + + /** + * Eviction evicts a pod from its node subject to certain policies and safety constraints. This + * is a subresource of Pod. A request to cause such an eviction is created by POSTing to + * .../pods//evictions. + */ + export interface Eviction { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input + + /** + * DeleteOptions may be provided + */ + deleteOptions?: pulumi.Input + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input + + /** + * ObjectMeta describes the pod that is being evicted. */ metadata?: pulumi.Input @@ -18056,6 +18656,13 @@ export namespace policy { */ allowPrivilegeEscalation?: pulumi.Input + /** + * AllowedCSIDrivers is a whitelist of inline CSI drivers that must be explicitly set to be + * embedded within a pod spec. An empty value means no CSI drivers can run inline within a pod + * spec. + */ + allowedCSIDrivers?: pulumi.Input[]> + /** * allowedCapabilities is a list of capabilities that can be requested to add to the * container. Capabilities in this field may be added at the pod author's discretion. You must @@ -18275,11 +18882,6 @@ export namespace rbac { * unit by a RoleBinding or ClusterRoleBinding. */ export interface ClusterRole { - /** - * Rules holds all the PolicyRules for this ClusterRole - */ - rules: pulumi.Input[]> - /** * AggregationRule is an optional field that describes how to build the Rules for this * ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct @@ -18308,6 +18910,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this ClusterRole + */ + rules?: pulumi.Input[]> + } export function isClusterRole(o: any): o is ClusterRole { @@ -18476,11 +19083,6 @@ export namespace rbac { * RoleBinding. */ export interface Role { - /** - * Rules holds all the PolicyRules for this Role - */ - rules: pulumi.Input[]> - /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized @@ -18502,6 +19104,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this Role + */ + rules?: pulumi.Input[]> + } export function isRole(o: any): o is Role { @@ -18702,11 +19309,6 @@ export namespace rbac { * unit by a RoleBinding or ClusterRoleBinding. */ export interface ClusterRole { - /** - * Rules holds all the PolicyRules for this ClusterRole - */ - rules: pulumi.Input[]> - /** * AggregationRule is an optional field that describes how to build the Rules for this * ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct @@ -18735,6 +19337,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this ClusterRole + */ + rules?: pulumi.Input[]> + } export function isClusterRole(o: any): o is ClusterRole { @@ -18904,11 +19511,6 @@ export namespace rbac { * RoleBinding. */ export interface Role { - /** - * Rules holds all the PolicyRules for this Role - */ - rules: pulumi.Input[]> - /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized @@ -18930,6 +19532,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this Role + */ + rules?: pulumi.Input[]> + } export function isRole(o: any): o is Role { @@ -19134,11 +19741,6 @@ export namespace rbac { * unit by a RoleBinding or ClusterRoleBinding. */ export interface ClusterRole { - /** - * Rules holds all the PolicyRules for this ClusterRole - */ - rules: pulumi.Input[]> - /** * AggregationRule is an optional field that describes how to build the Rules for this * ClusterRole. If AggregationRule is set, then the Rules are controller managed and direct @@ -19167,6 +19769,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this ClusterRole + */ + rules?: pulumi.Input[]> + } export function isClusterRole(o: any): o is ClusterRole { @@ -19333,14 +19940,9 @@ export namespace rbac { /** * Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a - * RoleBinding. - */ - export interface Role { - /** - * Rules holds all the PolicyRules for this Role - */ - rules: pulumi.Input[]> - + * RoleBinding. + */ + export interface Role { /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized @@ -19362,6 +19964,11 @@ export namespace rbac { */ metadata?: pulumi.Input + /** + * Rules holds all the PolicyRules for this Role + */ + rules?: pulumi.Input[]> + } export function isRole(o: any): o is Role { @@ -19545,7 +20152,7 @@ export namespace rbac { } export namespace scheduling { - export namespace v1alpha1 { + export namespace v1 { /** * PriorityClass defines mapping from a priority class name to the priority integer value. The * value can be any valid integer. @@ -19557,6 +20164,101 @@ export namespace scheduling { */ value: pulumi.Input + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"scheduling.k8s.io/v1"> + + /** + * description is an arbitrary string that usually provides guidelines on when this priority + * class should be used. + */ + description?: pulumi.Input + + /** + * globalDefault specifies whether this PriorityClass should be considered as the default + * priority for pods that do not have any priority class. Only one PriorityClass can be marked + * as `globalDefault`. However, if more than one PriorityClasses exists with their + * `globalDefault` field set to true, the smallest value of such global default + * PriorityClasses will be used as the default priority. + */ + globalDefault?: pulumi.Input + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"PriorityClass"> + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isPriorityClass(o: any): o is PriorityClass { + return o.apiVersion == "scheduling.k8s.io/v1" && o.kind == "PriorityClass"; + } + + /** + * PriorityClassList is a collection of priority classes. + */ + export interface PriorityClassList { + /** + * items is the list of PriorityClasses + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"scheduling.k8s.io/v1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"PriorityClassList"> + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isPriorityClassList(o: any): o is PriorityClassList { + return o.apiVersion == "scheduling.k8s.io/v1" && o.kind == "PriorityClassList"; + } + + } + + export namespace v1alpha1 { + /** + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. + */ + export interface PriorityClass { + /** + * The value of this priority class. This is the actual priority that pods receive when they + * have the name of this class in their pod spec. + */ + value: pulumi.Input + /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized @@ -19641,8 +20343,9 @@ export namespace scheduling { export namespace v1beta1 { /** - * PriorityClass defines mapping from a priority class name to the priority integer value. The - * value can be any valid integer. + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. */ export interface PriorityClass { /** @@ -19684,7 +20387,7 @@ export namespace scheduling { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -19721,7 +20424,7 @@ export namespace scheduling { /** * Standard list metadata More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -19796,7 +20499,7 @@ export namespace settings { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ metadata?: pulumi.Input @@ -20119,8 +20822,8 @@ export namespace storage { */ export interface VolumeError { /** - * String detailing the error encountered during Attach or Detach operation. This string maybe - * logged, so it should not contain sensitive information. + * String detailing the error encountered during Attach or Detach operation. This string may + * be logged, so it should not contain sensitive information. */ message?: pulumi.Input @@ -20309,6 +21012,250 @@ export namespace storage { } export namespace v1beta1 { + /** + * CSIDriver captures information about a Container Storage Interface (CSI) volume driver + * deployed on the cluster. CSI drivers do not need to create the CSIDriver object directly. + * Instead they may use the cluster-driver-registrar sidecar container. When deployed with a CSI + * driver it automatically creates a CSIDriver object representing the driver. Kubernetes attach + * detach controller uses this object to determine whether attach is required. Kubelet uses this + * object to determine whether pod information needs to be passed on mount. CSIDriver objects + * are non-namespaced. + */ + export interface CSIDriver { + /** + * Specification of the CSI Driver. + */ + spec: pulumi.Input + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"storage.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"CSIDriver"> + + /** + * Standard object metadata. metadata.Name indicates the name of the CSI driver that this + * object refers to; it MUST be the same name returned by the CSI GetPluginName() call for + * that driver. The driver name must be 63 characters or less, beginning and ending with an + * alphanumeric character ([a-z0-9A-Z]) with dashes (-), dots (.), and alphanumerics between. + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isCSIDriver(o: any): o is CSIDriver { + return o.apiVersion == "storage.k8s.io/v1beta1" && o.kind == "CSIDriver"; + } + + /** + * CSIDriverList is a collection of CSIDriver objects. + */ + export interface CSIDriverList { + /** + * items is the list of CSIDriver + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"storage.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"CSIDriverList"> + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isCSIDriverList(o: any): o is CSIDriverList { + return o.apiVersion == "storage.k8s.io/v1beta1" && o.kind == "CSIDriverList"; + } + + /** + * CSIDriverSpec is the specification of a CSIDriver. + */ + export interface CSIDriverSpec { + /** + * attachRequired indicates this CSI volume driver requires an attach operation (because it + * implements the CSI ControllerPublishVolume() method), and that the Kubernetes attach detach + * controller should call the attach volume interface which checks the volumeattachment status + * and waits until the volume is attached before proceeding to mounting. The CSI + * external-attacher coordinates with CSI volume driver and updates the volumeattachment + * status when the attach operation is complete. If the CSIDriverRegistry feature gate is + * enabled and the value is specified to false, the attach operation will be skipped. + * Otherwise the attach operation will be called. + */ + attachRequired?: pulumi.Input + + /** + * If set to true, podInfoOnMount indicates this CSI volume driver requires additional pod + * information (like podName, podUID, etc.) during mount operations. If set to false, pod + * information will not be passed on mount. Default is false. The CSI driver specifies + * podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as + * VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for + * parsing and validating the information passed in as VolumeContext. The following + * VolumeConext will be passed if podInfoOnMount is set to true. This list might grow, but the + * prefix will be used. "csi.storage.k8s.io/pod.name": pod.Name + * "csi.storage.k8s.io/pod.namespace": pod.Namespace "csi.storage.k8s.io/pod.uid": + * string(pod.UID) + */ + podInfoOnMount?: pulumi.Input + + } + + + /** + * CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need + * to create the CSINode object directly. As long as they use the node-driver-registrar sidecar + * container, the kubelet will automatically populate the CSINode object for the CSI driver as + * part of kubelet plugin registration. CSINode has the same name as a node. If the object is + * missing, it means either there are no CSI Drivers available on the node, or the Kubelet + * version is low enough that it doesn't create this object. CSINode has an OwnerReference that + * points to the corresponding node object. + */ + export interface CSINode { + /** + * spec is the specification of CSINode + */ + spec: pulumi.Input + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"storage.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"CSINode"> + + /** + * metadata.name must be the Kubernetes node name. + */ + metadata?: pulumi.Input + + } + + export function isCSINode(o: any): o is CSINode { + return o.apiVersion == "storage.k8s.io/v1beta1" && o.kind == "CSINode"; + } + + /** + * CSINodeDriver holds information about the specification of one CSI driver installed on a node + */ + export interface CSINodeDriver { + /** + * This is the name of the CSI driver that this object refers to. This MUST be the same name + * returned by the CSI GetPluginName() call for that driver. + */ + name: pulumi.Input + + /** + * nodeID of the node from the driver point of view. This field enables Kubernetes to + * communicate with storage systems that do not share the same nomenclature for nodes. For + * example, Kubernetes may refer to a given node as "node1", but the storage system may refer + * to the same node as "nodeA". When Kubernetes issues a command to the storage system to + * attach a volume to a specific node, it can use this field to refer to the node name using + * the ID that the storage system will understand, e.g. "nodeA" instead of "node1". This field + * is required. + */ + nodeID: pulumi.Input + + /** + * topologyKeys is the list of keys supported by the driver. When a driver is initialized on a + * cluster, it provides a set of topology keys that it understands (e.g. "company.com/zone", + * "company.com/region"). When a driver is initialized on a node, it provides the same + * topology keys along with values. Kubelet will expose these topology keys as labels on its + * own node object. When Kubernetes does topology aware provisioning, it can use this list to + * determine which labels it should retrieve from the node object and pass back to the driver. + * It is possible for different nodes to use different topology keys. This can be empty if + * driver does not support topology. + */ + topologyKeys?: pulumi.Input[]> + + } + + + /** + * CSINodeList is a collection of CSINode objects. + */ + export interface CSINodeList { + /** + * items is the list of CSINode + */ + items: pulumi.Input[]> + + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + apiVersion?: pulumi.Input<"storage.k8s.io/v1beta1"> + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + kind?: pulumi.Input<"CSINodeList"> + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + metadata?: pulumi.Input + + } + + export function isCSINodeList(o: any): o is CSINodeList { + return o.apiVersion == "storage.k8s.io/v1beta1" && o.kind == "CSINodeList"; + } + + /** + * CSINodeSpec holds information about the specification of all CSI drivers installed on a node + */ + export interface CSINodeSpec { + /** + * drivers is a list of information of all CSI Drivers existing on a node. If all drivers in + * the list are uninstalled, this can become empty. + */ + drivers: pulumi.Input[]> + + } + + /** * StorageClass describes the parameters for a class of storage for which PersistentVolumes can * be dynamically provisioned. @@ -20584,8 +21531,8 @@ export namespace storage { */ export interface VolumeError { /** - * String detailing the error encountered during Attach or Detach operation. This string maybe - * logged, so it should not contain sensitive information. + * String detailing the error encountered during Attach or Detach operation. This string may + * be logged, so it should not contain sensitive information. */ message?: pulumi.Input diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 72f15d8b30..fd40282524 100755 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -2,133 +2,6 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** export namespace admissionregistration { - export namespace v1alpha1 { - /** - * Initializer describes the name and the failure policy of an initializer, and what resources - * it applies to. - */ - export interface Initializer { - /** - * Name is the identifier of the initializer. It will be added to the object that needs to be - * initialized. Name should be fully qualified, e.g., alwayspullimages.kubernetes.io, where - * "alwayspullimages" is the name of the webhook, and kubernetes.io is the name of the - * organization. Required - */ - readonly name: string - - /** - * Rules describes what resources/subresources the initializer cares about. The initializer - * cares about an operation if it matches _any_ Rule. Rule.Resources must not include - * subresources. - */ - readonly rules: admissionregistration.v1alpha1.Rule[] - - } - - /** - * InitializerConfiguration describes the configuration of initializers. - */ - export interface InitializerConfiguration { - /** - * APIVersion defines the versioned schema of this representation of an object. Servers should - * convert recognized schemas to the latest internal value, and may reject unrecognized - * values. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources - */ - readonly apiVersion: "admissionregistration.k8s.io/v1alpha1" - - /** - * Initializers is a list of resources and their default initializers Order-sensitive. When - * merging multiple InitializerConfigurations, we sort the initializers from different - * InitializerConfigurations by the name of the InitializerConfigurations; the order of the - * initializers from the same InitializerConfiguration is preserved. - */ - readonly initializers: admissionregistration.v1alpha1.Initializer[] - - /** - * Kind is a string value representing the REST resource this object represents. Servers may - * infer this from the endpoint the client submits requests to. Cannot be updated. In - * CamelCase. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - readonly kind: "InitializerConfiguration" - - /** - * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. - */ - readonly metadata: meta.v1.ObjectMeta - - } - - /** - * InitializerConfigurationList is a list of InitializerConfiguration. - */ - export interface InitializerConfigurationList { - /** - * APIVersion defines the versioned schema of this representation of an object. Servers should - * convert recognized schemas to the latest internal value, and may reject unrecognized - * values. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources - */ - readonly apiVersion: "admissionregistration.k8s.io/v1alpha1" - - /** - * List of InitializerConfiguration. - */ - readonly items: admissionregistration.v1alpha1.InitializerConfiguration[] - - /** - * Kind is a string value representing the REST resource this object represents. Servers may - * infer this from the endpoint the client submits requests to. Cannot be updated. In - * CamelCase. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - readonly kind: "InitializerConfigurationList" - - /** - * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds - */ - readonly metadata: meta.v1.ListMeta - - } - - /** - * Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that - * all the tuple expansions are valid. - */ - export interface Rule { - /** - * APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, - * the length of the slice must be one. Required. - */ - readonly apiGroups: string[] - - /** - * APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is - * present, the length of the slice must be one. Required. - */ - readonly apiVersions: string[] - - /** - * Resources is a list of resources this rule applies to. - * - * For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all - * resources, but not subresources. 'pods/*' means all subresources of pods. '*‍/scale' - * means all scale subresources. '*‍/*' means all resources and their subresources. - * - * If wildcard is present, the validation rule will ensure resources do not overlap with each - * other. - * - * Depending on the enclosing object, subresources might not be allowed. Required. - */ - readonly resources: string[] - - } - - } - export namespace v1beta1 { /** * MutatingWebhookConfiguration describes the configuration of and admission webhook that accept @@ -234,6 +107,15 @@ export namespace admissionregistration { */ readonly resources: string[] + /** + * scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" + * "Cluster" means that only cluster-scoped resources will match this rule. Namespace API + * objects are cluster-scoped. "Namespaced" means that only namespaced resources will match + * this rule. "*" means that there are no scope restrictions. Subresources match the scope of + * their parent resource. Default is "*". + */ + readonly scope: string + } /** @@ -328,6 +210,16 @@ export namespace admissionregistration { * Webhook describes an admission webhook and the resources and operations it applies to. */ export interface Webhook { + /** + * AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the + * Webhook expects. API server will try to use first version in the list which it supports. If + * none of the versions specified in this list supported by API server, validation will fail + * for this object. If a persisted webhook configuration specifies allowed versions and does + * not include any versions known to the API Server, calls to the webhook will fail and be + * subject to the failure policy. Default to `['v1beta1']`. + */ + readonly admissionReviewVersions: string[] + /** * ClientConfig defines how to communicate with the hook. Required */ @@ -408,6 +300,13 @@ export namespace admissionregistration { */ readonly sideEffects: string + /** + * TimeoutSeconds specifies the timeout for this webhook. After the timeout passes, the + * webhook call will be ignored or the API call will fail based on the failure policy. The + * timeout value must be between 1 and 30 seconds. Default to 30 seconds. + */ + readonly timeoutSeconds: number + } /** @@ -510,6 +409,16 @@ export namespace apiextensions { * CustomResourceConversion describes how to convert different versions of a CR. */ export interface CustomResourceConversion { + /** + * ConversionReviewVersions is an ordered list of preferred `ConversionReview` versions the + * Webhook expects. API server will try to use first version in the list which it supports. If + * none of the versions specified in this list supported by API server, conversion will fail + * for this object. If a persisted Webhook configuration specifies allowed versions and does + * not include any versions known to the API Server, calls to the webhook will fail. Default + * to `['v1beta1']`. + */ + readonly conversionReviewVersions: string[] + /** * `strategy` specifies the conversion strategy. Allowed values are: - `None`: The converter * only change the apiVersion and would not touch any other field in the CR. - `Webhook`: API @@ -969,6 +878,9 @@ export namespace apiextensions { readonly not: apiextensions.v1beta1.JSONSchemaProps + readonly nullable: boolean + + readonly oneOf: apiextensions.v1beta1.JSONSchemaProps[] @@ -1103,7 +1015,9 @@ export namespace apiregistration { } - + /** + * APIServiceCondition describes the state of an APIService at a particular point + */ export interface APIServiceCondition { /** * Last time the condition transitioned from one status to another. @@ -1288,7 +1202,9 @@ export namespace apiregistration { } - + /** + * APIServiceCondition describes the state of an APIService at a particular point + */ export interface APIServiceCondition { /** * Last time the condition transitioned from one status to another. @@ -2840,7 +2756,7 @@ export namespace apps { * immediately when the rolling update starts, such that the total number of old and new pods * do not exceed 130% of desired pods. Once old pods have been killed, new ReplicaSet can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ readonly maxSurge: number | string @@ -3236,7 +3152,7 @@ export namespace apps { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta @@ -3273,7 +3189,8 @@ export namespace apps { readonly kind: "ControllerRevisionList" /** - * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * More info: + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -3302,20 +3219,20 @@ export namespace apps { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly spec: apps.v1beta2.DaemonSetSpec /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly status: apps.v1beta2.DaemonSetStatus @@ -3379,7 +3296,7 @@ export namespace apps { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -3761,20 +3678,20 @@ export namespace apps { /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly spec: apps.v1beta2.ReplicaSetSpec /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly status: apps.v1beta2.ReplicaSetStatus @@ -3839,7 +3756,7 @@ export namespace apps { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ readonly metadata: meta.v1.ListMeta @@ -3950,7 +3867,7 @@ export namespace apps { * immediately when the rolling update starts, such that the total number of old and new pods * do not exceed 130% of desired pods. Once old pods have been killed, new ReplicaSet can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ readonly maxSurge: number | string @@ -4003,19 +3920,19 @@ export namespace apps { /** * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata. */ readonly metadata: meta.v1.ObjectMeta /** * defines the behavior of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. */ readonly spec: apps.v1beta2.ScaleSpec /** * current status of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. * Read-only. */ readonly status: apps.v1beta2.ScaleStatus @@ -7517,6 +7434,107 @@ export namespace certificates { } export namespace coordination { + export namespace v1 { + /** + * Lease defines a lease concept. + */ + export interface Lease { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "coordination.k8s.io/v1" + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "Lease" + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * Specification of the Lease. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + readonly spec: coordination.v1.LeaseSpec + + } + + /** + * LeaseList is a list of Lease objects. + */ + export interface LeaseList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "coordination.k8s.io/v1" + + /** + * Items is a list of schema objects. + */ + readonly items: coordination.v1.Lease[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "LeaseList" + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + /** + * LeaseSpec is a specification of a Lease. + */ + export interface LeaseSpec { + /** + * acquireTime is a time when the current lease was acquired. + */ + readonly acquireTime: string + + /** + * holderIdentity contains the identity of the holder of a current lease. + */ + readonly holderIdentity: string + + /** + * leaseDurationSeconds is a duration that candidates for a lease need to wait to force + * acquire it. This is measure against time of last observed RenewTime. + */ + readonly leaseDurationSeconds: number + + /** + * leaseTransitions is the number of transitions of a lease between holders. + */ + readonly leaseTransitions: number + + /** + * renewTime is a time when the current holder of a lease has last updated the lease. + */ + readonly renewTime: string + + } + + } + export namespace v1beta1 { /** * Lease defines a lease concept. @@ -7882,36 +7900,73 @@ export namespace core { } /** - * Adds and removes POSIX capabilities from running containers. + * Represents a source location of a volume to mount, managed by an external CSI driver */ - export interface Capabilities { + export interface CSIVolumeSource { /** - * Added capabilities + * Driver is the name of the CSI driver that handles this volume. Consult with your admin for + * the correct name as registered in the cluster. */ - readonly add: string[] + readonly driver: string /** - * Removed capabilities + * Filesystem type to mount. Ex. "ext4", "xfs", "ntfs". If not provided, the empty value is + * passed to the associated CSI driver which will determine the default filesystem to apply. */ - readonly drop: string[] - - } + readonly fsType: string - /** - * Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not - * support ownership management or SELinux relabeling. - */ - export interface CephFSPersistentVolumeSource { /** - * Required: Monitors is a collection of Ceph monitors More info: - * https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it + * NodePublishSecretRef is a reference to the secret object containing sensitive information + * to pass to the CSI driver to complete the CSI NodePublishVolume and NodeUnpublishVolume + * calls. This field is optional, and may be empty if no secret is required. If the secret + * object contains more than one secret, all secret references are passed. */ - readonly monitors: string[] + readonly nodePublishSecretRef: core.v1.LocalObjectReference /** - * Optional: Used as the mounted root, rather than the full Ceph tree, default is / + * Specifies a read-only configuration for the volume. Defaults to false (read/write). */ - readonly path: string + readonly readOnly: boolean + + /** + * VolumeAttributes stores driver-specific properties that are passed to the CSI driver. + * Consult your driver's documentation for supported values. + */ + readonly volumeAttributes: {[key: string]: string} + + } + + /** + * Adds and removes POSIX capabilities from running containers. + */ + export interface Capabilities { + /** + * Added capabilities + */ + readonly add: string[] + + /** + * Removed capabilities + */ + readonly drop: string[] + + } + + /** + * Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not + * support ownership management or SELinux relabeling. + */ + export interface CephFSPersistentVolumeSource { + /** + * Required: Monitors is a collection of Ceph monitors More info: + * https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it + */ + readonly monitors: string[] + + /** + * Optional: Used as the mounted root, rather than the full Ceph tree, default is / + */ + readonly path: string /** * Optional: Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in @@ -9793,10 +9848,14 @@ export namespace core { readonly postStart: core.v1.Handler /** - * PreStop is called immediately before a container is terminated. The container is terminated - * after the handler completes. The reason for termination is passed to the handler. - * Regardless of the outcome of the handler, the container is eventually terminated. Other - * management of the container blocks until the hook completes. More info: + * PreStop is called immediately before a container is terminated due to an API request or + * management event such as liveness probe failure, preemption, resource contention, etc. The + * handler is not called if the container crashes or exits. The reason for termination is + * passed to the handler. The Pod's termination grace period countdown begins before the + * PreStop hooked is executed. Regardless of the outcome of the handler, the container will + * eventually terminate within the Pod's termination grace period. Other management of the + * container blocks until the hook completes or until the termination grace period is reached. + * More info: * https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks */ readonly preStop: core.v1.Handler @@ -10967,7 +11026,7 @@ export namespace core { readonly claimRef: core.v1.ObjectReference /** - * CSI represents storage that handled by an external CSI driver (Beta feature). + * CSI represents storage that is handled by an external CSI driver (Beta feature). */ readonly csi: core.v1.CSIPersistentVolumeSource @@ -11591,7 +11650,7 @@ export namespace core { * If specified, all readiness gates will be evaluated for pod readiness. A pod is ready when * all its containers are ready AND all conditions specified in the readiness gates have * status equal to "True" More info: - * https://github.com/kubernetes/community/blob/master/keps/sig-network/0007-pod-ready%2B%2B.md + * https://git.k8s.io/enhancements/keps/sig-network/0007-pod-ready%2B%2B.md */ readonly readinessGates: core.v1.PodReadinessGate[] @@ -11607,8 +11666,8 @@ export namespace core { * used to run this pod. If no RuntimeClass resource matches the named class, the pod will * not be run. If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit * class with an empty definition that uses the default runtime handler. More info: - * https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md - * This is an alpha feature and may change in the future. + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md This is an alpha feature and + * may change in the future. */ readonly runtimeClassName: string @@ -11990,6 +12049,12 @@ export namespace core { */ readonly registry: string + /** + * Tenant owning the given Quobyte volume in the Backend Used with dynamically provisioned + * Quobyte volumes, value is set by the plugin + */ + readonly tenant: string + /** * User to map volume access to Defaults to serivceaccount user */ @@ -13269,7 +13334,7 @@ export namespace core { * builds on ClusterIP and allocates a port on every node which routes to the clusterIP. * "LoadBalancer" builds on NodePort and creates an external load-balancer (if supported in * the current cloud) which routes to the clusterIP. More info: - * https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services---service-types + * https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types */ readonly type: string @@ -13570,6 +13635,12 @@ export namespace core { */ readonly configMap: core.v1.ConfigMapVolumeSource + /** + * CSI (Container Storage Interface) represents storage that is handled by an external CSI + * driver (Alpha feature). + */ + readonly csi: core.v1.CSIVolumeSource + /** * DownwardAPI represents downward API about the pod that should populate this volume */ @@ -13751,6 +13822,14 @@ export namespace core { */ readonly subPath: string + /** + * Expanded path within the volume from which the container's volume should be mounted. + * Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded + * using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath + * are mutually exclusive. This field is alpha in 1.14. + */ + readonly subPathExpr: string + } /** @@ -14002,6 +14081,17 @@ export namespace events { export namespace extensions { export namespace v1beta1 { + /** + * AllowedCSIDriver represents a single inline CSI Driver that is allowed to be used. + */ + export interface AllowedCSIDriver { + /** + * Name is the registered name of the CSI driver + */ + readonly name: string + + } + /** * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. Deprecated: use * AllowedFlexVolume from policy API Group instead. @@ -14060,20 +14150,20 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta /** * The desired behavior of this daemon set. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly spec: extensions.v1beta1.DaemonSetSpec /** * The current status of this daemon set. This data may be out of date by some window of time. * Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly status: extensions.v1beta1.DaemonSetStatus @@ -14137,7 +14227,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -14654,7 +14744,9 @@ export namespace extensions { /** * Ingress is a collection of rules that allow inbound connections to reach the endpoints * defined by a backend. An Ingress can be configured to give services externally-reachable - * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. DEPRECATED - + * This group version of Ingress is deprecated by networking.k8s.io/v1beta1 Ingress. See the + * release notes for more information. */ export interface Ingress { /** @@ -14675,19 +14767,19 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta /** * Spec is the desired state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly spec: extensions.v1beta1.IngressSpec /** * Status is the current state of the Ingress. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly status: extensions.v1beta1.IngressStatus @@ -14736,7 +14828,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -14850,7 +14942,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta @@ -14941,7 +15033,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -15035,15 +15127,15 @@ export namespace extensions { readonly podSelector: meta.v1.LabelSelector /** - * List of rule types that the NetworkPolicy relates to. Valid options are Ingress, Egress, or - * Ingress,Egress. If this field is not specified, it will default based on the existence of - * Ingress or Egress rules; policies that contain an Egress section are assumed to affect - * Egress, and all policies (whether or not they contain an Ingress section) are assumed to - * affect Ingress. If you want to write an egress-only policy, you must explicitly specify - * policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies that no - * egress is allowed, you must specify a policyTypes value that include "Egress" (since such a - * policy would not include an Egress section and would otherwise default to just [ "Ingress" - * ]). This field is beta-level in 1.8 + * List of rule types that the NetworkPolicy relates to. Valid options are "Ingress", + * "Egress", or "Ingress,Egress". If this field is not specified, it will default based on the + * existence of Ingress or Egress rules; policies that contain an Egress section are assumed + * to affect Egress, and all policies (whether or not they contain an Ingress section) are + * assumed to affect Ingress. If you want to write an egress-only policy, you must explicitly + * specify policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies + * that no egress is allowed, you must specify a policyTypes value that include "Egress" + * (since such a policy would not include an Egress section and would otherwise default to + * just [ "Ingress" ]). This field is beta-level in 1.8 */ readonly policyTypes: string[] @@ -15073,7 +15165,7 @@ export namespace extensions { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta @@ -15112,7 +15204,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -15129,6 +15221,13 @@ export namespace extensions { */ readonly allowPrivilegeEscalation: boolean + /** + * AllowedCSIDrivers is a whitelist of inline CSI drivers that must be explicitly set to be + * embedded within a pod spec. An empty value means no CSI drivers can run inline within a pod + * spec. + */ + readonly allowedCSIDrivers: extensions.v1beta1.AllowedCSIDriver[] + /** * allowedCapabilities is a list of capabilities that can be requested to add to the * container. Capabilities in this field may be added at the pod author's discretion. You must @@ -15291,20 +15390,20 @@ export namespace extensions { /** * If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) * that the ReplicaSet manages. Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta /** * Spec defines the specification of the desired behavior of the ReplicaSet. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly spec: extensions.v1beta1.ReplicaSetSpec /** * Status is the most recently observed status of the ReplicaSet. This data may be out of date * by some window of time. Populated by the system. Read-only. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status */ readonly status: extensions.v1beta1.ReplicaSetStatus @@ -15369,7 +15468,7 @@ export namespace extensions { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds */ readonly metadata: meta.v1.ListMeta @@ -15491,7 +15590,7 @@ export namespace extensions { * scaled up immediately when the rolling update starts, such that the total number of old and * new pods do not exceed 130% of desired pods. Once old pods have been killed, new RC can be * scaled up further, ensuring that total number of pods running at any time during the update - * is atmost 130% of desired pods. + * is at most 130% of desired pods. */ readonly maxSurge: number | string @@ -15585,19 +15684,19 @@ export namespace extensions { /** * Standard object metadata; More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata. */ readonly metadata: meta.v1.ObjectMeta /** * defines the behavior of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. */ readonly spec: extensions.v1beta1.ScaleSpec /** * current status of the scale. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. * Read-only. */ readonly status: extensions.v1beta1.ScaleStatus @@ -15786,6 +15885,15 @@ export namespace meta { */ readonly singularName: string + /** + * The hash value of the storage version, the version this resource is converted to when + * written to the data store. Value must be treated as opaque by clients. Only equality + * comparison on the value is valid. This is an alpha feature and may change or be removed in + * the future. The field is populated by the apiserver only if the StorageVersionHash feature + * gate is enabled. This field will remain optional even if it graduates. + */ + readonly storageVersionHash: string + /** * verbs is a list of supported kube verbs (this includes get, list, watch, create, update, * patch, delete, deletecollection, and proxy) @@ -16059,6 +16167,42 @@ export namespace meta { } + /** + * ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that + * the fieldset applies to. + */ + export interface ManagedFieldsEntry { + /** + * APIVersion defines the version of this resource that this field set applies to. The format + * is "group/version" just like the top-level APIVersion field. It is necessary to track the + * version of a field set because it cannot be automatically converted. + */ + readonly apiVersion: string + + /** + * Fields identifies a set of fields. + */ + readonly fields: object + + /** + * Manager is an identifier of the workflow managing these fields. + */ + readonly manager: string + + /** + * Operation is the type of operation which lead to this ManagedFieldsEntry being created. The + * only valid values for this field are 'Apply' and 'Update'. + */ + readonly operation: string + + /** + * Time is timestamp of when these fields were set. It should always be empty if Operation is + * 'Apply' + */ + readonly time: string + + } + /** * ObjectMeta is metadata that all persisted resources must have, which includes all objects * users must create. @@ -16157,6 +16301,8 @@ export namespace meta { * When an object is created, the system will populate this list with the current set of * initializers. Only privileged users may set or modify this list. Once it is empty, it may * not be modified further by any user. + * + * DEPRECATED - initializers are an alpha field and will be removed in v1.15. */ readonly initializers: meta.v1.Initializers @@ -16167,6 +16313,17 @@ export namespace meta { */ readonly labels: {[key: string]: string} + /** + * ManagedFields maps workflow-id and version to the set of fields that are managed by that + * workflow. This is mostly for internal housekeeping, and users typically shouldn't need to + * set or understand this field. A workflow can be the user's name, a controller's name, or + * the name of a specific apply path like "ci-cd". The set of fields is always in the version + * that the workflow used when modifying the object. + * + * This field is alpha and can be changed or removed without notice. + */ + readonly managedFields: meta.v1.ManagedFieldsEntry[] + /** * Name must be unique within a namespace. Is required when creating resources, although some * resources may allow a client to request the generation of an appropriate name @@ -16270,6 +16427,11 @@ export namespace meta { * Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out. */ export interface Preconditions { + /** + * Specifies the target ResourceVersion + */ + readonly resourceVersion: string + /** * Specifies the target UID. */ @@ -16496,7 +16658,7 @@ export namespace networking { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta @@ -16584,7 +16746,7 @@ export namespace networking { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -16675,15 +16837,15 @@ export namespace networking { readonly podSelector: meta.v1.LabelSelector /** - * List of rule types that the NetworkPolicy relates to. Valid options are Ingress, Egress, or - * Ingress,Egress. If this field is not specified, it will default based on the existence of - * Ingress or Egress rules; policies that contain an Egress section are assumed to affect - * Egress, and all policies (whether or not they contain an Ingress section) are assumed to - * affect Ingress. If you want to write an egress-only policy, you must explicitly specify - * policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies that no - * egress is allowed, you must specify a policyTypes value that include "Egress" (since such a - * policy would not include an Egress section and would otherwise default to just [ "Ingress" - * ]). This field is beta-level in 1.8 + * List of rule types that the NetworkPolicy relates to. Valid options are "Ingress", + * "Egress", or "Ingress,Egress". If this field is not specified, it will default based on the + * existence of Ingress or Egress rules; policies that contain an Egress section are assumed + * to affect Egress, and all policies (whether or not they contain an Ingress section) are + * assumed to affect Ingress. If you want to write an egress-only policy, you must explicitly + * specify policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies + * that no egress is allowed, you must specify a policyTypes value that include "Egress" + * (since such a policy would not include an Egress section and would otherwise default to + * just [ "Ingress" ]). This field is beta-level in 1.8 */ readonly policyTypes: string[] @@ -16691,149 +16853,55 @@ export namespace networking { } -} - -export namespace pkg { - export namespace runtime { + export namespace v1beta1 { /** - * RawExtension is used to hold extensions in external versions. - * - * To use this, make a field which has RawExtension as its type in your external, versioned - * struct, and Object in your internal struct. You also need to register your various plugin - * types. - * - * // Internal package: type MyAPIObject struct { - * runtime.TypeMeta `json:",inline"` - * MyPlugin runtime.Object `json:"myPlugin"` - * } type PluginA struct { - * AOption string `json:"aOption"` - * } - * - * // External package: type MyAPIObject struct { - * runtime.TypeMeta `json:",inline"` - * MyPlugin runtime.RawExtension `json:"myPlugin"` - * } type PluginA struct { - * AOption string `json:"aOption"` - * } - * - * // On the wire, the JSON will look something like this: { - * "kind":"MyAPIObject", - * "apiVersion":"v1", - * "myPlugin": { - * "kind":"PluginA", - * "aOption":"foo", - * }, - * } - * - * So what happens? Decode first uses json or yaml to unmarshal the serialized data into your - * external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step - * is to copy (using pkg/conversion) into the internal struct. The runtime package's - * DefaultScheme has conversion functions installed which will unpack the JSON stored in - * RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: - * In the case where the object is of an unknown type, a runtime.Unknown object will be created - * and stored.) + * HTTPIngressPath associates a path regex with a backend. Incoming urls matching the path are + * forwarded to the backend. */ - export interface RawExtension { + export interface HTTPIngressPath { /** - * Raw is the underlying serialization of this object. + * Backend defines the referenced service endpoint to which the traffic will be forwarded to. */ - readonly Raw: string - - } - - } - - export namespace version { - /** - * Info contains versioning information. how we'll want to distribute that information. - */ - export interface Info { - - readonly buildDate: string - - - readonly compiler: string - - - readonly gitCommit: string - - - readonly gitTreeState: string - - - readonly gitVersion: string - - - readonly goVersion: string - - - readonly major: string - - - readonly minor: string - - - readonly platform: string + readonly backend: networking.v1beta1.IngressBackend - } - - } - -} - -export namespace policy { - export namespace v1beta1 { - /** - * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. - */ - export interface AllowedFlexVolume { /** - * driver is the name of the Flexvolume driver. + * Path is an extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the + * egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. + * Currently it can contain characters disallowed from the conventional "path" part of a URL + * as defined by RFC 3986. Paths must begin with a '/'. If unspecified, the path defaults to a + * catch all sending traffic to the backend. */ - readonly driver: string + readonly path: string } /** - * AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods - * to use. It requires the path prefix to be defined. + * HTTPIngressRuleValue is a list of http selectors pointing to backends. In the example: + * http:///? -> backend where where parts of the url correspond to RFC + * 3986, this resource will be used to match against everything after the last '/' and before + * the first '?' or '#'. */ - export interface AllowedHostPath { - /** - * pathPrefix is the path prefix that the host volume must match. It does not support `*`. - * Trailing slashes are trimmed when validating the path prefix with a host path. - * - * Examples: `/foo` would allow `/foo`, `/foo/` and `/foo/bar` `/foo` would not allow `/food` - * or `/etc/foo` - */ - readonly pathPrefix: string - + export interface HTTPIngressRuleValue { /** - * when set to true, will allow host volumes matching the pathPrefix only if all volume mounts - * are readOnly. + * A collection of paths that map requests to backends. */ - readonly readOnly: boolean + readonly paths: networking.v1beta1.HTTPIngressPath[] } /** - * Eviction evicts a pod from its node subject to certain policies and safety constraints. This - * is a subresource of Pod. A request to cause such an eviction is created by POSTing to - * .../pods//evictions. + * Ingress is a collection of rules that allow inbound connections to reach the endpoints + * defined by a backend. An Ingress can be configured to give services externally-reachable + * urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. */ - export interface Eviction { + export interface Ingress { /** * APIVersion defines the versioned schema of this representation of an object. Servers should * convert recognized schemas to the latest internal value, and may reject unrecognized * values. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources */ - readonly apiVersion: string - - /** - * DeleteOptions may be provided - */ - readonly deleteOptions: meta.v1.DeleteOptions + readonly apiVersion: "networking.k8s.io/v1beta1" /** * Kind is a string value representing the REST resource this object represents. Servers may @@ -16841,7 +16909,501 @@ export namespace policy { * CamelCase. More info: * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds */ - readonly kind: string + readonly kind: "Ingress" + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * Spec is the desired state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + readonly spec: networking.v1beta1.IngressSpec + + /** + * Status is the current state of the Ingress. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + readonly status: networking.v1beta1.IngressStatus + + } + + /** + * IngressBackend describes all endpoints for a given service and port. + */ + export interface IngressBackend { + /** + * Specifies the name of the referenced service. + */ + readonly serviceName: string + + /** + * Specifies the port of the referenced service. + */ + readonly servicePort: number | string + + } + + /** + * IngressList is a collection of Ingress. + */ + export interface IngressList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "networking.k8s.io/v1beta1" + + /** + * Items is the list of Ingress. + */ + readonly items: networking.v1beta1.Ingress[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "IngressList" + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + /** + * IngressRule represents the rules mapping the paths under a specified host to the related + * backend services. Incoming requests are first evaluated for a host match, then routed to the + * backend associated with the matching IngressRuleValue. + */ + export interface IngressRule { + /** + * Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the + * following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not + * allowed. Currently an IngressRuleValue can only apply to the + * IP in the Spec of the parent Ingress. + * 2. The `:` delimiter is not respected because ports are not allowed. + * Currently the port of an Ingress is implicitly :80 for http and + * :443 for https. + * Both these may change in the future. Incoming requests are matched against the host before + * the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on + * the specified IngressRuleValue. + */ + readonly host: string + + + readonly http: networking.v1beta1.HTTPIngressRuleValue + + } + + /** + * IngressSpec describes the Ingress the user wishes to exist. + */ + export interface IngressSpec { + /** + * A default backend capable of servicing requests that don't match any rule. At least one of + * 'backend' or 'rules' must be specified. This field is optional to allow the loadbalancer + * controller or defaulting logic to specify a global default. + */ + readonly backend: networking.v1beta1.IngressBackend + + /** + * A list of host rules used to configure the Ingress. If unspecified, or no rule matches, all + * traffic is sent to the default backend. + */ + readonly rules: networking.v1beta1.IngressRule[] + + /** + * TLS configuration. Currently the Ingress only supports a single TLS port, 443. If multiple + * members of this list specify different hosts, they will be multiplexed on the same port + * according to the hostname specified through the SNI TLS extension, if the ingress + * controller fulfilling the ingress supports SNI. + */ + readonly tls: networking.v1beta1.IngressTLS[] + + } + + /** + * IngressStatus describe the current state of the Ingress. + */ + export interface IngressStatus { + /** + * LoadBalancer contains the current status of the load-balancer. + */ + readonly loadBalancer: core.v1.LoadBalancerStatus + + } + + /** + * IngressTLS describes the transport layer security associated with an Ingress. + */ + export interface IngressTLS { + /** + * Hosts are a list of hosts included in the TLS certificate. The values in this list must + * match the name/s used in the tlsSecret. Defaults to the wildcard host setting for the + * loadbalancer controller fulfilling this Ingress, if left unspecified. + */ + readonly hosts: string[] + + /** + * SecretName is the name of the secret used to terminate SSL traffic on 443. Field is left + * optional to allow SSL routing based on SNI hostname alone. If the SNI host in a listener + * conflicts with the "Host" header field used by an IngressRule, the SNI host is used for + * termination and value of the Host header is used for routing. + */ + readonly secretName: string + + } + + } + +} + +export namespace node { + export namespace v1alpha1 { + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export interface RuntimeClass { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "node.k8s.io/v1alpha1" + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "RuntimeClass" + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * Specification of the RuntimeClass More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status + */ + readonly spec: node.v1alpha1.RuntimeClassSpec + + } + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export interface RuntimeClassList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "node.k8s.io/v1alpha1" + + /** + * Items is a list of schema objects. + */ + readonly items: node.v1alpha1.RuntimeClass[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "RuntimeClassList" + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + /** + * RuntimeClassSpec is a specification of a RuntimeClass. It contains parameters that are + * required to describe the RuntimeClass to the Container Runtime Interface (CRI) + * implementation, as well as any other components that need to understand how the pod will be + * run. The RuntimeClassSpec is immutable. + */ + export interface RuntimeClassSpec { + /** + * RuntimeHandler specifies the underlying runtime and configuration that the CRI + * implementation will use to handle pods of this class. The possible values are specific to + * the node & CRI configuration. It is assumed that all handlers are available on every node, + * and handlers of the same name are equivalent on every node. For example, a handler called + * "runc" might specify that the runc OCI runtime (using native Linux containers) will be used + * to run the containers in a pod. The RuntimeHandler must conform to the DNS Label (RFC 1123) + * requirements and is immutable. + */ + readonly runtimeHandler: string + + } + + } + + export namespace v1beta1 { + /** + * RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass + * is used to determine which container runtime is used to run all containers in a pod. + * RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and + * referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName + * reference before running the pod. For more details, see + * https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + */ + export interface RuntimeClass { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "node.k8s.io/v1beta1" + + /** + * Handler specifies the underlying runtime and configuration that the CRI implementation will + * use to handle pods of this class. The possible values are specific to the node & CRI + * configuration. It is assumed that all handlers are available on every node, and handlers + * of the same name are equivalent on every node. For example, a handler called "runc" might + * specify that the runc OCI runtime (using native Linux containers) will be used to run the + * containers in a pod. The Handler must conform to the DNS Label (RFC 1123) requirements, and + * is immutable. + */ + readonly handler: string + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "RuntimeClass" + + /** + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + } + + /** + * RuntimeClassList is a list of RuntimeClass objects. + */ + export interface RuntimeClassList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "node.k8s.io/v1beta1" + + /** + * Items is a list of schema objects. + */ + readonly items: node.v1beta1.RuntimeClass[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "RuntimeClassList" + + /** + * Standard list metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + } + +} + +export namespace pkg { + export namespace runtime { + /** + * RawExtension is used to hold extensions in external versions. + * + * To use this, make a field which has RawExtension as its type in your external, versioned + * struct, and Object in your internal struct. You also need to register your various plugin + * types. + * + * // Internal package: type MyAPIObject struct { + * runtime.TypeMeta `json:",inline"` + * MyPlugin runtime.Object `json:"myPlugin"` + * } type PluginA struct { + * AOption string `json:"aOption"` + * } + * + * // External package: type MyAPIObject struct { + * runtime.TypeMeta `json:",inline"` + * MyPlugin runtime.RawExtension `json:"myPlugin"` + * } type PluginA struct { + * AOption string `json:"aOption"` + * } + * + * // On the wire, the JSON will look something like this: { + * "kind":"MyAPIObject", + * "apiVersion":"v1", + * "myPlugin": { + * "kind":"PluginA", + * "aOption":"foo", + * }, + * } + * + * So what happens? Decode first uses json or yaml to unmarshal the serialized data into your + * external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step + * is to copy (using pkg/conversion) into the internal struct. The runtime package's + * DefaultScheme has conversion functions installed which will unpack the JSON stored in + * RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: + * In the case where the object is of an unknown type, a runtime.Unknown object will be created + * and stored.) + */ + export interface RawExtension { + /** + * Raw is the underlying serialization of this object. + */ + readonly Raw: string + + } + + } + + export namespace version { + /** + * Info contains versioning information. how we'll want to distribute that information. + */ + export interface Info { + + readonly buildDate: string + + + readonly compiler: string + + + readonly gitCommit: string + + + readonly gitTreeState: string + + + readonly gitVersion: string + + + readonly goVersion: string + + + readonly major: string + + + readonly minor: string + + + readonly platform: string + + } + + } + +} + +export namespace policy { + export namespace v1beta1 { + /** + * AllowedCSIDriver represents a single inline CSI Driver that is allowed to be used. + */ + export interface AllowedCSIDriver { + /** + * Name is the registered name of the CSI driver + */ + readonly name: string + + } + + /** + * AllowedFlexVolume represents a single Flexvolume that is allowed to be used. + */ + export interface AllowedFlexVolume { + /** + * driver is the name of the Flexvolume driver. + */ + readonly driver: string + + } + + /** + * AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods + * to use. It requires the path prefix to be defined. + */ + export interface AllowedHostPath { + /** + * pathPrefix is the path prefix that the host volume must match. It does not support `*`. + * Trailing slashes are trimmed when validating the path prefix with a host path. + * + * Examples: `/foo` would allow `/foo`, `/foo/` and `/foo/bar` `/foo` would not allow `/food` + * or `/etc/foo` + */ + readonly pathPrefix: string + + /** + * when set to true, will allow host volumes matching the pathPrefix only if all volume mounts + * are readOnly. + */ + readonly readOnly: boolean + + } + + /** + * Eviction evicts a pod from its node subject to certain policies and safety constraints. This + * is a subresource of Pod. A request to cause such an eviction is created by POSTing to + * .../pods//evictions. + */ + export interface Eviction { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: string + + /** + * DeleteOptions may be provided + */ + readonly deleteOptions: meta.v1.DeleteOptions + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: string /** * ObjectMeta describes the pod that is being evicted. @@ -17115,6 +17677,13 @@ export namespace policy { */ readonly allowPrivilegeEscalation: boolean + /** + * AllowedCSIDrivers is a whitelist of inline CSI drivers that must be explicitly set to be + * embedded within a pod spec. An empty value means no CSI drivers can run inline within a pod + * spec. + */ + readonly allowedCSIDrivers: policy.v1beta1.AllowedCSIDriver[] + /** * allowedCapabilities is a list of capabilities that can be requested to add to the * container. Capabilities in this field may be added at the pod author's discretion. You must @@ -18509,11 +19078,98 @@ export namespace rbac { } export namespace scheduling { - export namespace v1alpha1 { + export namespace v1 { /** * PriorityClass defines mapping from a priority class name to the priority integer value. The * value can be any valid integer. */ + export interface PriorityClass { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "scheduling.k8s.io/v1" + + /** + * description is an arbitrary string that usually provides guidelines on when this priority + * class should be used. + */ + readonly description: string + + /** + * globalDefault specifies whether this PriorityClass should be considered as the default + * priority for pods that do not have any priority class. Only one PriorityClass can be marked + * as `globalDefault`. However, if more than one PriorityClasses exists with their + * `globalDefault` field set to true, the smallest value of such global default + * PriorityClasses will be used as the default priority. + */ + readonly globalDefault: boolean + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "PriorityClass" + + /** + * Standard object's metadata. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * The value of this priority class. This is the actual priority that pods receive when they + * have the name of this class in their pod spec. + */ + readonly value: number + + } + + /** + * PriorityClassList is a collection of priority classes. + */ + export interface PriorityClassList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "scheduling.k8s.io/v1" + + /** + * items is the list of PriorityClasses + */ + readonly items: scheduling.v1.PriorityClass[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "PriorityClassList" + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + } + + export namespace v1alpha1 { + /** + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. + */ export interface PriorityClass { /** * APIVersion defines the versioned schema of this representation of an object. Servers should @@ -18597,8 +19253,9 @@ export namespace scheduling { export namespace v1beta1 { /** - * PriorityClass defines mapping from a priority class name to the priority integer value. The - * value can be any valid integer. + * DEPRECATED - This group version of PriorityClass is deprecated by + * scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name + * to the priority integer value. The value can be any valid integer. */ export interface PriorityClass { /** @@ -18634,7 +19291,7 @@ export namespace scheduling { /** * Standard object's metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ObjectMeta @@ -18673,7 +19330,7 @@ export namespace scheduling { /** * Standard list metadata More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -18740,7 +19397,7 @@ export namespace settings { /** * Standard list metadata. More info: - * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + * https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata */ readonly metadata: meta.v1.ListMeta @@ -19039,8 +19696,8 @@ export namespace storage { */ export interface VolumeError { /** - * String detailing the error encountered during Attach or Detach operation. This string maybe - * logged, so it should not contain sensitive information. + * String detailing the error encountered during Attach or Detach operation. This string may + * be logged, so it should not contain sensitive information. */ readonly message: string @@ -19216,6 +19873,231 @@ export namespace storage { } export namespace v1beta1 { + /** + * CSIDriver captures information about a Container Storage Interface (CSI) volume driver + * deployed on the cluster. CSI drivers do not need to create the CSIDriver object directly. + * Instead they may use the cluster-driver-registrar sidecar container. When deployed with a CSI + * driver it automatically creates a CSIDriver object representing the driver. Kubernetes attach + * detach controller uses this object to determine whether attach is required. Kubelet uses this + * object to determine whether pod information needs to be passed on mount. CSIDriver objects + * are non-namespaced. + */ + export interface CSIDriver { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "storage.k8s.io/v1beta1" + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "CSIDriver" + + /** + * Standard object metadata. metadata.Name indicates the name of the CSI driver that this + * object refers to; it MUST be the same name returned by the CSI GetPluginName() call for + * that driver. The driver name must be 63 characters or less, beginning and ending with an + * alphanumeric character ([a-z0-9A-Z]) with dashes (-), dots (.), and alphanumerics between. + * More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * Specification of the CSI Driver. + */ + readonly spec: storage.v1beta1.CSIDriverSpec + + } + + /** + * CSIDriverList is a collection of CSIDriver objects. + */ + export interface CSIDriverList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "storage.k8s.io/v1beta1" + + /** + * items is the list of CSIDriver + */ + readonly items: storage.v1beta1.CSIDriver[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "CSIDriverList" + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + /** + * CSIDriverSpec is the specification of a CSIDriver. + */ + export interface CSIDriverSpec { + /** + * attachRequired indicates this CSI volume driver requires an attach operation (because it + * implements the CSI ControllerPublishVolume() method), and that the Kubernetes attach detach + * controller should call the attach volume interface which checks the volumeattachment status + * and waits until the volume is attached before proceeding to mounting. The CSI + * external-attacher coordinates with CSI volume driver and updates the volumeattachment + * status when the attach operation is complete. If the CSIDriverRegistry feature gate is + * enabled and the value is specified to false, the attach operation will be skipped. + * Otherwise the attach operation will be called. + */ + readonly attachRequired: boolean + + /** + * If set to true, podInfoOnMount indicates this CSI volume driver requires additional pod + * information (like podName, podUID, etc.) during mount operations. If set to false, pod + * information will not be passed on mount. Default is false. The CSI driver specifies + * podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as + * VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for + * parsing and validating the information passed in as VolumeContext. The following + * VolumeConext will be passed if podInfoOnMount is set to true. This list might grow, but the + * prefix will be used. "csi.storage.k8s.io/pod.name": pod.Name + * "csi.storage.k8s.io/pod.namespace": pod.Namespace "csi.storage.k8s.io/pod.uid": + * string(pod.UID) + */ + readonly podInfoOnMount: boolean + + } + + /** + * CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need + * to create the CSINode object directly. As long as they use the node-driver-registrar sidecar + * container, the kubelet will automatically populate the CSINode object for the CSI driver as + * part of kubelet plugin registration. CSINode has the same name as a node. If the object is + * missing, it means either there are no CSI Drivers available on the node, or the Kubelet + * version is low enough that it doesn't create this object. CSINode has an OwnerReference that + * points to the corresponding node object. + */ + export interface CSINode { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "storage.k8s.io/v1beta1" + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "CSINode" + + /** + * metadata.name must be the Kubernetes node name. + */ + readonly metadata: meta.v1.ObjectMeta + + /** + * spec is the specification of CSINode + */ + readonly spec: storage.v1beta1.CSINodeSpec + + } + + /** + * CSINodeDriver holds information about the specification of one CSI driver installed on a node + */ + export interface CSINodeDriver { + /** + * This is the name of the CSI driver that this object refers to. This MUST be the same name + * returned by the CSI GetPluginName() call for that driver. + */ + readonly name: string + + /** + * nodeID of the node from the driver point of view. This field enables Kubernetes to + * communicate with storage systems that do not share the same nomenclature for nodes. For + * example, Kubernetes may refer to a given node as "node1", but the storage system may refer + * to the same node as "nodeA". When Kubernetes issues a command to the storage system to + * attach a volume to a specific node, it can use this field to refer to the node name using + * the ID that the storage system will understand, e.g. "nodeA" instead of "node1". This field + * is required. + */ + readonly nodeID: string + + /** + * topologyKeys is the list of keys supported by the driver. When a driver is initialized on a + * cluster, it provides a set of topology keys that it understands (e.g. "company.com/zone", + * "company.com/region"). When a driver is initialized on a node, it provides the same + * topology keys along with values. Kubelet will expose these topology keys as labels on its + * own node object. When Kubernetes does topology aware provisioning, it can use this list to + * determine which labels it should retrieve from the node object and pass back to the driver. + * It is possible for different nodes to use different topology keys. This can be empty if + * driver does not support topology. + */ + readonly topologyKeys: string[] + + } + + /** + * CSINodeList is a collection of CSINode objects. + */ + export interface CSINodeList { + /** + * APIVersion defines the versioned schema of this representation of an object. Servers should + * convert recognized schemas to the latest internal value, and may reject unrecognized + * values. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#resources + */ + readonly apiVersion: "storage.k8s.io/v1beta1" + + /** + * items is the list of CSINode + */ + readonly items: storage.v1beta1.CSINode[] + + /** + * Kind is a string value representing the REST resource this object represents. Servers may + * infer this from the endpoint the client submits requests to. Cannot be updated. In + * CamelCase. More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + */ + readonly kind: "CSINodeList" + + /** + * Standard list metadata More info: + * https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + */ + readonly metadata: meta.v1.ListMeta + + } + + /** + * CSINodeSpec holds information about the specification of all CSI drivers installed on a node + */ + export interface CSINodeSpec { + /** + * drivers is a list of information of all CSI Drivers existing on a node. If all drivers in + * the list are uninstalled, this can become empty. + */ + readonly drivers: storage.v1beta1.CSINodeDriver[] + + } + /** * StorageClass describes the parameters for a class of storage for which PersistentVolumes can * be dynamically provisioned. @@ -19472,8 +20354,8 @@ export namespace storage { */ export interface VolumeError { /** - * String detailing the error encountered during Attach or Detach operation. This string maybe - * logged, so it should not contain sensitive information. + * String detailing the error encountered during Attach or Detach operation. This string may + * be logged, so it should not contain sensitive information. */ readonly message: string diff --git a/sdk/python/pulumi_kubernetes/__init__.py b/sdk/python/pulumi_kubernetes/__init__.py index 1c6e164588..c37dc2ab6a 100755 --- a/sdk/python/pulumi_kubernetes/__init__.py +++ b/sdk/python/pulumi_kubernetes/__init__.py @@ -20,6 +20,7 @@ "extensions", "meta", "networking", + "node", "policy", "rbac", "scheduling", diff --git a/sdk/python/pulumi_kubernetes/admissionregistration/__init__.py b/sdk/python/pulumi_kubernetes/admissionregistration/__init__.py index 59a85436c9..3569e9ec84 100755 --- a/sdk/python/pulumi_kubernetes/admissionregistration/__init__.py +++ b/sdk/python/pulumi_kubernetes/admissionregistration/__init__.py @@ -4,6 +4,5 @@ # Make subpackages available: __all__ = [ - "v1alpha1", "v1beta1", ] diff --git a/sdk/python/pulumi_kubernetes/coordination/__init__.py b/sdk/python/pulumi_kubernetes/coordination/__init__.py index 3569e9ec84..092556c5fd 100755 --- a/sdk/python/pulumi_kubernetes/coordination/__init__.py +++ b/sdk/python/pulumi_kubernetes/coordination/__init__.py @@ -4,5 +4,6 @@ # Make subpackages available: __all__ = [ + "v1", "v1beta1", ] diff --git a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfiguration.py b/sdk/python/pulumi_kubernetes/coordination/v1/Lease.py similarity index 65% rename from sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfiguration.py rename to sdk/python/pulumi_kubernetes/coordination/v1/Lease.py index 4d86760121..892ebd2e77 100755 --- a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfiguration.py +++ b/sdk/python/pulumi_kubernetes/coordination/v1/Lease.py @@ -7,11 +7,11 @@ from ... import tables -class InitializerConfiguration(pulumi.CustomResource): +class Lease(pulumi.CustomResource): """ - InitializerConfiguration describes the configuration of initializers. + Lease defines a lease concept. """ - def __init__(self, __name__, __opts__=None, initializers=None, metadata=None): + def __init__(self, __name__, __opts__=None, metadata=None, spec=None): if not __name__: raise TypeError('Missing resource name argument (for URN creation)') if not isinstance(__name__, str): @@ -21,13 +21,13 @@ def __init__(self, __name__, __opts__=None, initializers=None, metadata=None): __props__ = dict() - __props__['apiVersion'] = 'admissionregistration.k8s.io/v1alpha1' - __props__['kind'] = 'InitializerConfiguration' - __props__['initializers'] = initializers + __props__['apiVersion'] = 'coordination.k8s.io/v1' + __props__['kind'] = 'Lease' __props__['metadata'] = metadata + __props__['spec'] = spec - super(InitializerConfiguration, self).__init__( - "kubernetes:admissionregistration.k8s.io/v1alpha1:InitializerConfiguration", + super(Lease, self).__init__( + "kubernetes:coordination.k8s.io/v1:Lease", __name__, __props__, __opts__) diff --git a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfigurationList.py b/sdk/python/pulumi_kubernetes/coordination/v1/LeaseList.py similarity index 74% rename from sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfigurationList.py rename to sdk/python/pulumi_kubernetes/coordination/v1/LeaseList.py index 0b83f342aa..1552b5f95e 100755 --- a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/InitializerConfigurationList.py +++ b/sdk/python/pulumi_kubernetes/coordination/v1/LeaseList.py @@ -7,9 +7,9 @@ from ... import tables -class InitializerConfigurationList(pulumi.CustomResource): +class LeaseList(pulumi.CustomResource): """ - InitializerConfigurationList is a list of InitializerConfiguration. + LeaseList is a list of Lease objects. """ def __init__(self, __name__, __opts__=None, items=None, metadata=None): if not __name__: @@ -21,15 +21,15 @@ def __init__(self, __name__, __opts__=None, items=None, metadata=None): __props__ = dict() - __props__['apiVersion'] = 'admissionregistration.k8s.io/v1alpha1' - __props__['kind'] = 'InitializerConfigurationList' + __props__['apiVersion'] = 'coordination.k8s.io/v1' + __props__['kind'] = 'LeaseList' if items is None: raise TypeError('Missing required property items') __props__['items'] = items __props__['metadata'] = metadata - super(InitializerConfigurationList, self).__init__( - "kubernetes:admissionregistration.k8s.io/v1alpha1:InitializerConfigurationList", + super(LeaseList, self).__init__( + "kubernetes:coordination.k8s.io/v1:LeaseList", __name__, __props__, __opts__) diff --git a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/__init__.py b/sdk/python/pulumi_kubernetes/coordination/v1/__init__.py similarity index 72% rename from sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/__init__.py rename to sdk/python/pulumi_kubernetes/coordination/v1/__init__.py index 58251eaed5..619a7757dc 100755 --- a/sdk/python/pulumi_kubernetes/admissionregistration/v1alpha1/__init__.py +++ b/sdk/python/pulumi_kubernetes/coordination/v1/__init__.py @@ -3,5 +3,5 @@ # *** Do not edit by hand unless you're certain you know what you are doing! *** # Export this package's modules as members: -from .InitializerConfiguration import * -from .InitializerConfigurationList import * +from .Lease import * +from .LeaseList import * diff --git a/sdk/python/pulumi_kubernetes/extensions/v1beta1/Ingress.py b/sdk/python/pulumi_kubernetes/extensions/v1beta1/Ingress.py index c64accdc5a..4e069aadd1 100755 --- a/sdk/python/pulumi_kubernetes/extensions/v1beta1/Ingress.py +++ b/sdk/python/pulumi_kubernetes/extensions/v1beta1/Ingress.py @@ -11,7 +11,9 @@ class Ingress(pulumi.CustomResource): """ Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load - balance traffic, terminate SSL, offer name based virtual hosting etc. + balance traffic, terminate SSL, offer name based virtual hosting etc. DEPRECATED - This group + version of Ingress is deprecated by networking.k8s.io/v1beta1 Ingress. See the release notes for + more information. """ def __init__(self, __name__, __opts__=None, metadata=None, spec=None, status=None): if not __name__: diff --git a/sdk/python/pulumi_kubernetes/networking/__init__.py b/sdk/python/pulumi_kubernetes/networking/__init__.py index 4b0a1b1483..092556c5fd 100755 --- a/sdk/python/pulumi_kubernetes/networking/__init__.py +++ b/sdk/python/pulumi_kubernetes/networking/__init__.py @@ -5,4 +5,5 @@ # Make subpackages available: __all__ = [ "v1", + "v1beta1", ] diff --git a/sdk/python/pulumi_kubernetes/networking/v1beta1/Ingress.py b/sdk/python/pulumi_kubernetes/networking/v1beta1/Ingress.py new file mode 100755 index 0000000000..e474fd9fe4 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/networking/v1beta1/Ingress.py @@ -0,0 +1,42 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class Ingress(pulumi.CustomResource): + """ + Ingress is a collection of rules that allow inbound connections to reach the endpoints defined + by a backend. An Ingress can be configured to give services externally-reachable urls, load + balance traffic, terminate SSL, offer name based virtual hosting etc. + """ + def __init__(self, __name__, __opts__=None, metadata=None, spec=None, status=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'networking.k8s.io/v1beta1' + __props__['kind'] = 'Ingress' + __props__['metadata'] = metadata + __props__['spec'] = spec + __props__['status'] = status + + super(Ingress, self).__init__( + "kubernetes:networking.k8s.io/v1beta1:Ingress", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/networking/v1beta1/IngressList.py b/sdk/python/pulumi_kubernetes/networking/v1beta1/IngressList.py new file mode 100755 index 0000000000..6581805501 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/networking/v1beta1/IngressList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class IngressList(pulumi.CustomResource): + """ + IngressList is a collection of Ingress. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'networking.k8s.io/v1beta1' + __props__['kind'] = 'IngressList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(IngressList, self).__init__( + "kubernetes:networking.k8s.io/v1beta1:IngressList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/networking/v1beta1/__init__.py b/sdk/python/pulumi_kubernetes/networking/v1beta1/__init__.py new file mode 100755 index 0000000000..e282262d91 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/networking/v1beta1/__init__.py @@ -0,0 +1,7 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +# Export this package's modules as members: +from .Ingress import * +from .IngressList import * diff --git a/sdk/python/pulumi_kubernetes/node/__init__.py b/sdk/python/pulumi_kubernetes/node/__init__.py new file mode 100755 index 0000000000..59a85436c9 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/__init__.py @@ -0,0 +1,9 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +# Make subpackages available: +__all__ = [ + "v1alpha1", + "v1beta1", +] diff --git a/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClass.py b/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClass.py new file mode 100755 index 0000000000..8af7bc4e94 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClass.py @@ -0,0 +1,45 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class RuntimeClass(pulumi.CustomResource): + """ + RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is + used to determine which container runtime is used to run all containers in a pod. RuntimeClasses + are (currently) manually defined by a user or cluster provisioner, and referenced in the + PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running + the pod. For more details, see https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + """ + def __init__(self, __name__, __opts__=None, metadata=None, spec=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'node.k8s.io/v1alpha1' + __props__['kind'] = 'RuntimeClass' + if spec is None: + raise TypeError('Missing required property spec') + __props__['spec'] = spec + __props__['metadata'] = metadata + + super(RuntimeClass, self).__init__( + "kubernetes:node.k8s.io/v1alpha1:RuntimeClass", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClassList.py b/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClassList.py new file mode 100755 index 0000000000..f61d67921a --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1alpha1/RuntimeClassList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class RuntimeClassList(pulumi.CustomResource): + """ + RuntimeClassList is a list of RuntimeClass objects. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'node.k8s.io/v1alpha1' + __props__['kind'] = 'RuntimeClassList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(RuntimeClassList, self).__init__( + "kubernetes:node.k8s.io/v1alpha1:RuntimeClassList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/node/v1alpha1/__init__.py b/sdk/python/pulumi_kubernetes/node/v1alpha1/__init__.py new file mode 100755 index 0000000000..a2e0a06ac6 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1alpha1/__init__.py @@ -0,0 +1,7 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +# Export this package's modules as members: +from .RuntimeClass import * +from .RuntimeClassList import * diff --git a/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClass.py b/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClass.py new file mode 100755 index 0000000000..8f9a2cb20c --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClass.py @@ -0,0 +1,45 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class RuntimeClass(pulumi.CustomResource): + """ + RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is + used to determine which container runtime is used to run all containers in a pod. RuntimeClasses + are (currently) manually defined by a user or cluster provisioner, and referenced in the + PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running + the pod. For more details, see https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md + """ + def __init__(self, __name__, __opts__=None, handler=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'node.k8s.io/v1beta1' + __props__['kind'] = 'RuntimeClass' + if handler is None: + raise TypeError('Missing required property handler') + __props__['handler'] = handler + __props__['metadata'] = metadata + + super(RuntimeClass, self).__init__( + "kubernetes:node.k8s.io/v1beta1:RuntimeClass", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClassList.py b/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClassList.py new file mode 100755 index 0000000000..cab2eff913 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1beta1/RuntimeClassList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class RuntimeClassList(pulumi.CustomResource): + """ + RuntimeClassList is a list of RuntimeClass objects. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'node.k8s.io/v1beta1' + __props__['kind'] = 'RuntimeClassList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(RuntimeClassList, self).__init__( + "kubernetes:node.k8s.io/v1beta1:RuntimeClassList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/node/v1beta1/__init__.py b/sdk/python/pulumi_kubernetes/node/v1beta1/__init__.py new file mode 100755 index 0000000000..a2e0a06ac6 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/node/v1beta1/__init__.py @@ -0,0 +1,7 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +# Export this package's modules as members: +from .RuntimeClass import * +from .RuntimeClassList import * diff --git a/sdk/python/pulumi_kubernetes/rbac/v1/ClusterRole.py b/sdk/python/pulumi_kubernetes/rbac/v1/ClusterRole.py index eae8b95cc9..bb7f2e6532 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1/ClusterRole.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1/ClusterRole.py @@ -24,11 +24,9 @@ def __init__(self, __name__, __opts__=None, aggregation_rule=None, metadata=None __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1' __props__['kind'] = 'ClusterRole' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['aggregationRule'] = aggregation_rule __props__['metadata'] = metadata + __props__['rules'] = rules super(ClusterRole, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1:ClusterRole", diff --git a/sdk/python/pulumi_kubernetes/rbac/v1/Role.py b/sdk/python/pulumi_kubernetes/rbac/v1/Role.py index 7701b7fc5a..d216cf81c0 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1/Role.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1/Role.py @@ -24,10 +24,8 @@ def __init__(self, __name__, __opts__=None, metadata=None, rules=None): __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1' __props__['kind'] = 'Role' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['metadata'] = metadata + __props__['rules'] = rules super(Role, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1:Role", diff --git a/sdk/python/pulumi_kubernetes/rbac/v1alpha1/ClusterRole.py b/sdk/python/pulumi_kubernetes/rbac/v1alpha1/ClusterRole.py index c78da65206..8571c9259e 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1alpha1/ClusterRole.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1alpha1/ClusterRole.py @@ -24,11 +24,9 @@ def __init__(self, __name__, __opts__=None, aggregation_rule=None, metadata=None __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1alpha1' __props__['kind'] = 'ClusterRole' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['aggregationRule'] = aggregation_rule __props__['metadata'] = metadata + __props__['rules'] = rules super(ClusterRole, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1alpha1:ClusterRole", diff --git a/sdk/python/pulumi_kubernetes/rbac/v1alpha1/Role.py b/sdk/python/pulumi_kubernetes/rbac/v1alpha1/Role.py index e4b0156279..06a74a7641 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1alpha1/Role.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1alpha1/Role.py @@ -24,10 +24,8 @@ def __init__(self, __name__, __opts__=None, metadata=None, rules=None): __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1alpha1' __props__['kind'] = 'Role' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['metadata'] = metadata + __props__['rules'] = rules super(Role, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1alpha1:Role", diff --git a/sdk/python/pulumi_kubernetes/rbac/v1beta1/ClusterRole.py b/sdk/python/pulumi_kubernetes/rbac/v1beta1/ClusterRole.py index d09bcd0c6f..acbd5bd170 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1beta1/ClusterRole.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1beta1/ClusterRole.py @@ -24,11 +24,9 @@ def __init__(self, __name__, __opts__=None, aggregation_rule=None, metadata=None __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1beta1' __props__['kind'] = 'ClusterRole' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['aggregationRule'] = aggregation_rule __props__['metadata'] = metadata + __props__['rules'] = rules super(ClusterRole, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1beta1:ClusterRole", diff --git a/sdk/python/pulumi_kubernetes/rbac/v1beta1/Role.py b/sdk/python/pulumi_kubernetes/rbac/v1beta1/Role.py index 7df268158d..1c658e4d68 100755 --- a/sdk/python/pulumi_kubernetes/rbac/v1beta1/Role.py +++ b/sdk/python/pulumi_kubernetes/rbac/v1beta1/Role.py @@ -24,10 +24,8 @@ def __init__(self, __name__, __opts__=None, metadata=None, rules=None): __props__['apiVersion'] = 'rbac.authorization.k8s.io/v1beta1' __props__['kind'] = 'Role' - if rules is None: - raise TypeError('Missing required property rules') - __props__['rules'] = rules __props__['metadata'] = metadata + __props__['rules'] = rules super(Role, self).__init__( "kubernetes:rbac.authorization.k8s.io/v1beta1:Role", diff --git a/sdk/python/pulumi_kubernetes/scheduling/__init__.py b/sdk/python/pulumi_kubernetes/scheduling/__init__.py index 59a85436c9..e99e4ef1e3 100755 --- a/sdk/python/pulumi_kubernetes/scheduling/__init__.py +++ b/sdk/python/pulumi_kubernetes/scheduling/__init__.py @@ -4,6 +4,7 @@ # Make subpackages available: __all__ = [ + "v1", "v1alpha1", "v1beta1", ] diff --git a/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClass.py b/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClass.py new file mode 100755 index 0000000000..97c48f6faf --- /dev/null +++ b/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClass.py @@ -0,0 +1,44 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class PriorityClass(pulumi.CustomResource): + """ + PriorityClass defines mapping from a priority class name to the priority integer value. The + value can be any valid integer. + """ + def __init__(self, __name__, __opts__=None, description=None, global_default=None, metadata=None, value=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'scheduling.k8s.io/v1' + __props__['kind'] = 'PriorityClass' + if value is None: + raise TypeError('Missing required property value') + __props__['value'] = value + __props__['description'] = description + __props__['globalDefault'] = global_default + __props__['metadata'] = metadata + + super(PriorityClass, self).__init__( + "kubernetes:scheduling.k8s.io/v1:PriorityClass", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClassList.py b/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClassList.py new file mode 100755 index 0000000000..0709daaf1f --- /dev/null +++ b/sdk/python/pulumi_kubernetes/scheduling/v1/PriorityClassList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class PriorityClassList(pulumi.CustomResource): + """ + PriorityClassList is a collection of priority classes. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'scheduling.k8s.io/v1' + __props__['kind'] = 'PriorityClassList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(PriorityClassList, self).__init__( + "kubernetes:scheduling.k8s.io/v1:PriorityClassList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/scheduling/v1/__init__.py b/sdk/python/pulumi_kubernetes/scheduling/v1/__init__.py new file mode 100755 index 0000000000..4a54bc9a5a --- /dev/null +++ b/sdk/python/pulumi_kubernetes/scheduling/v1/__init__.py @@ -0,0 +1,7 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +# Export this package's modules as members: +from .PriorityClass import * +from .PriorityClassList import * diff --git a/sdk/python/pulumi_kubernetes/scheduling/v1alpha1/PriorityClass.py b/sdk/python/pulumi_kubernetes/scheduling/v1alpha1/PriorityClass.py index f5c06d9542..d81c785363 100755 --- a/sdk/python/pulumi_kubernetes/scheduling/v1alpha1/PriorityClass.py +++ b/sdk/python/pulumi_kubernetes/scheduling/v1alpha1/PriorityClass.py @@ -9,8 +9,9 @@ class PriorityClass(pulumi.CustomResource): """ - PriorityClass defines mapping from a priority class name to the priority integer value. The - value can be any valid integer. + DEPRECATED - This group version of PriorityClass is deprecated by + scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name to + the priority integer value. The value can be any valid integer. """ def __init__(self, __name__, __opts__=None, description=None, global_default=None, metadata=None, value=None): if not __name__: diff --git a/sdk/python/pulumi_kubernetes/scheduling/v1beta1/PriorityClass.py b/sdk/python/pulumi_kubernetes/scheduling/v1beta1/PriorityClass.py index 23ce405656..734414350a 100755 --- a/sdk/python/pulumi_kubernetes/scheduling/v1beta1/PriorityClass.py +++ b/sdk/python/pulumi_kubernetes/scheduling/v1beta1/PriorityClass.py @@ -9,8 +9,9 @@ class PriorityClass(pulumi.CustomResource): """ - PriorityClass defines mapping from a priority class name to the priority integer value. The - value can be any valid integer. + DEPRECATED - This group version of PriorityClass is deprecated by + scheduling.k8s.io/v1/PriorityClass. PriorityClass defines mapping from a priority class name to + the priority integer value. The value can be any valid integer. """ def __init__(self, __name__, __opts__=None, description=None, global_default=None, metadata=None, value=None): if not __name__: diff --git a/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriver.py b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriver.py new file mode 100755 index 0000000000..ab19d71e70 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriver.py @@ -0,0 +1,47 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class CSIDriver(pulumi.CustomResource): + """ + CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed + on the cluster. CSI drivers do not need to create the CSIDriver object directly. Instead they + may use the cluster-driver-registrar sidecar container. When deployed with a CSI driver it + automatically creates a CSIDriver object representing the driver. Kubernetes attach detach + controller uses this object to determine whether attach is required. Kubelet uses this object to + determine whether pod information needs to be passed on mount. CSIDriver objects are + non-namespaced. + """ + def __init__(self, __name__, __opts__=None, metadata=None, spec=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'storage.k8s.io/v1beta1' + __props__['kind'] = 'CSIDriver' + if spec is None: + raise TypeError('Missing required property spec') + __props__['spec'] = spec + __props__['metadata'] = metadata + + super(CSIDriver, self).__init__( + "kubernetes:storage.k8s.io/v1beta1:CSIDriver", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriverList.py b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriverList.py new file mode 100755 index 0000000000..a7661651cc --- /dev/null +++ b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSIDriverList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class CSIDriverList(pulumi.CustomResource): + """ + CSIDriverList is a collection of CSIDriver objects. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'storage.k8s.io/v1beta1' + __props__['kind'] = 'CSIDriverList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(CSIDriverList, self).__init__( + "kubernetes:storage.k8s.io/v1beta1:CSIDriverList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINode.py b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINode.py new file mode 100755 index 0000000000..d37d456757 --- /dev/null +++ b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINode.py @@ -0,0 +1,47 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class CSINode(pulumi.CustomResource): + """ + CSINode holds information about all CSI drivers installed on a node. CSI drivers do not need to + create the CSINode object directly. As long as they use the node-driver-registrar sidecar + container, the kubelet will automatically populate the CSINode object for the CSI driver as part + of kubelet plugin registration. CSINode has the same name as a node. If the object is missing, + it means either there are no CSI Drivers available on the node, or the Kubelet version is low + enough that it doesn't create this object. CSINode has an OwnerReference that points to the + corresponding node object. + """ + def __init__(self, __name__, __opts__=None, metadata=None, spec=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'storage.k8s.io/v1beta1' + __props__['kind'] = 'CSINode' + if spec is None: + raise TypeError('Missing required property spec') + __props__['spec'] = spec + __props__['metadata'] = metadata + + super(CSINode, self).__init__( + "kubernetes:storage.k8s.io/v1beta1:CSINode", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINodeList.py b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINodeList.py new file mode 100755 index 0000000000..2c479da0cd --- /dev/null +++ b/sdk/python/pulumi_kubernetes/storage/v1beta1/CSINodeList.py @@ -0,0 +1,41 @@ +# *** WARNING: this file was generated by the Pulumi Kubernetes codegen tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import pulumi +import pulumi.runtime + +from ... import tables + + +class CSINodeList(pulumi.CustomResource): + """ + CSINodeList is a collection of CSINode objects. + """ + def __init__(self, __name__, __opts__=None, items=None, metadata=None): + if not __name__: + raise TypeError('Missing resource name argument (for URN creation)') + if not isinstance(__name__, str): + raise TypeError('Expected resource name to be a string') + if __opts__ and not isinstance(__opts__, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + + __props__ = dict() + + __props__['apiVersion'] = 'storage.k8s.io/v1beta1' + __props__['kind'] = 'CSINodeList' + if items is None: + raise TypeError('Missing required property items') + __props__['items'] = items + __props__['metadata'] = metadata + + super(CSINodeList, self).__init__( + "kubernetes:storage.k8s.io/v1beta1:CSINodeList", + __name__, + __props__, + __opts__) + + def translate_output_property(self, prop: str) -> str: + return tables._CASING_FORWARD_TABLE.get(prop) or prop + + def translate_input_property(self, prop: str) -> str: + return tables._CASING_BACKWARD_TABLE.get(prop) or prop diff --git a/sdk/python/pulumi_kubernetes/storage/v1beta1/__init__.py b/sdk/python/pulumi_kubernetes/storage/v1beta1/__init__.py index 030c324498..f1508f0354 100755 --- a/sdk/python/pulumi_kubernetes/storage/v1beta1/__init__.py +++ b/sdk/python/pulumi_kubernetes/storage/v1beta1/__init__.py @@ -3,6 +3,10 @@ # *** Do not edit by hand unless you're certain you know what you are doing! *** # Export this package's modules as members: +from .CSIDriver import * +from .CSIDriverList import * +from .CSINode import * +from .CSINodeList import * from .StorageClass import * from .StorageClassList import * from .VolumeAttachment import * diff --git a/sdk/python/pulumi_kubernetes/tables.py b/sdk/python/pulumi_kubernetes/tables.py index 2fb6f46eeb..f32ed2f4a6 100644 --- a/sdk/python/pulumi_kubernetes/tables.py +++ b/sdk/python/pulumi_kubernetes/tables.py @@ -9,10 +9,12 @@ "additionalItems": "additional_items", "additionalPrinterColumns": "additional_printer_columns", "additionalProperties": "additional_properties", + "admissionReviewVersions": "admission_review_versions", "aggregationRule": "aggregation_rule", "allOf": "all_of", "allowPrivilegeEscalation": "allow_privilege_escalation", "allowVolumeExpansion": "allow_volume_expansion", + "allowedCSIDrivers": "allowed_csi_drivers", "allowedCapabilities": "allowed_capabilities", "allowedFlexVolumes": "allowed_flex_volumes", "allowedHostPaths": "allowed_host_paths", @@ -25,6 +27,7 @@ "apiVersion": "api_version", "apiVersions": "api_versions", "attachError": "attach_error", + "attachRequired": "attach_required", "attachmentMetadata": "attachment_metadata", "automountServiceAccountToken": "automount_service_account_token", "availableReplicas": "available_replicas", @@ -64,6 +67,7 @@ "containerRuntimeVersion": "container_runtime_version", "containerStatuses": "container_statuses", "controllerPublishSecretRef": "controller_publish_secret_ref", + "conversionReviewVersions": "conversion_review_versions", "creationTimestamp": "creation_timestamp", "currentAverageUtilization": "current_average_utilization", "currentAverageValue": "current_average_value", @@ -191,6 +195,7 @@ "loadBalancerIP": "load_balancer_ip", "loadBalancerSourceRanges": "load_balancer_source_ranges", "machineID": "machine_id", + "managedFields": "managed_fields", "manualSelector": "manual_selector", "matchExpressions": "match_expressions", "matchFields": "match_fields", @@ -217,6 +222,7 @@ "multipleOf": "multiple_of", "namespaceSelector": "namespace_selector", "nodeAffinity": "node_affinity", + "nodeID": "node_id", "nodeInfo": "node_info", "nodeName": "node_name", "nodePort": "node_port", @@ -254,6 +260,7 @@ "podAntiAffinity": "pod_anti_affinity", "podCIDR": "pod_cidr", "podIP": "pod_ip", + "podInfoOnMount": "pod_info_on_mount", "podManagementPolicy": "pod_management_policy", "podSelector": "pod_selector", "policyTypes": "policy_types", @@ -298,6 +305,7 @@ "runAsNonRoot": "run_as_non_root", "runAsUser": "run_as_user", "runtimeClassName": "runtime_class_name", + "runtimeHandler": "runtime_handler", "scaleIO": "scale_io", "scaleTargetRef": "scale_target_ref", "schedulerName": "scheduler_name", @@ -340,9 +348,11 @@ "storagePolicyID": "storage_policy_id", "storagePolicyName": "storage_policy_name", "storagePool": "storage_pool", + "storageVersionHash": "storage_version_hash", "storedVersions": "stored_versions", "stringData": "string_data", "subPath": "sub_path", + "subPathExpr": "sub_path_expr", "successThreshold": "success_threshold", "successfulJobsHistoryLimit": "successful_jobs_history_limit", "supplementalGroups": "supplemental_groups", @@ -365,6 +375,7 @@ "timeoutSeconds": "timeout_seconds", "tolerationSeconds": "toleration_seconds", "topologyKey": "topology_key", + "topologyKeys": "topology_keys", "ttlSecondsAfterFinished": "ttl_seconds_after_finished", "unavailableReplicas": "unavailable_replicas", "uniqueItems": "unique_items", @@ -400,10 +411,12 @@ "additional_items": "additionalItems", "additional_printer_columns": "additionalPrinterColumns", "additional_properties": "additionalProperties", + "admission_review_versions": "admissionReviewVersions", "aggregation_rule": "aggregationRule", "all_of": "allOf", "allow_privilege_escalation": "allowPrivilegeEscalation", "allow_volume_expansion": "allowVolumeExpansion", + "allowed_csi_drivers": "allowedCSIDrivers", "allowed_capabilities": "allowedCapabilities", "allowed_flex_volumes": "allowedFlexVolumes", "allowed_host_paths": "allowedHostPaths", @@ -416,6 +429,7 @@ "api_version": "apiVersion", "api_versions": "apiVersions", "attach_error": "attachError", + "attach_required": "attachRequired", "attachment_metadata": "attachmentMetadata", "automount_service_account_token": "automountServiceAccountToken", "available_replicas": "availableReplicas", @@ -455,6 +469,7 @@ "container_runtime_version": "containerRuntimeVersion", "container_statuses": "containerStatuses", "controller_publish_secret_ref": "controllerPublishSecretRef", + "conversion_review_versions": "conversionReviewVersions", "creation_timestamp": "creationTimestamp", "current_average_utilization": "currentAverageUtilization", "current_average_value": "currentAverageValue", @@ -582,6 +597,7 @@ "load_balancer_ip": "loadBalancerIP", "load_balancer_source_ranges": "loadBalancerSourceRanges", "machine_id": "machineID", + "managed_fields": "managedFields", "manual_selector": "manualSelector", "match_expressions": "matchExpressions", "match_fields": "matchFields", @@ -608,6 +624,7 @@ "multiple_of": "multipleOf", "namespace_selector": "namespaceSelector", "node_affinity": "nodeAffinity", + "node_id": "nodeID", "node_info": "nodeInfo", "node_name": "nodeName", "node_port": "nodePort", @@ -645,6 +662,7 @@ "pod_anti_affinity": "podAntiAffinity", "pod_cidr": "podCIDR", "pod_ip": "podIP", + "pod_info_on_mount": "podInfoOnMount", "pod_management_policy": "podManagementPolicy", "pod_selector": "podSelector", "policy_types": "policyTypes", @@ -689,6 +707,7 @@ "run_as_non_root": "runAsNonRoot", "run_as_user": "runAsUser", "runtime_class_name": "runtimeClassName", + "runtime_handler": "runtimeHandler", "scale_io": "scaleIO", "scale_target_ref": "scaleTargetRef", "scheduler_name": "schedulerName", @@ -731,9 +750,11 @@ "storage_policy_id": "storagePolicyID", "storage_policy_name": "storagePolicyName", "storage_pool": "storagePool", + "storage_version_hash": "storageVersionHash", "stored_versions": "storedVersions", "string_data": "stringData", "sub_path": "subPath", + "sub_path_expr": "subPathExpr", "success_threshold": "successThreshold", "successful_jobs_history_limit": "successfulJobsHistoryLimit", "supplemental_groups": "supplementalGroups", @@ -756,6 +777,7 @@ "timeout_seconds": "timeoutSeconds", "toleration_seconds": "tolerationSeconds", "topology_key": "topologyKey", + "topology_keys": "topologyKeys", "ttl_seconds_after_finished": "ttlSecondsAfterFinished", "unavailable_replicas": "unavailableReplicas", "unique_items": "uniqueItems",