Update CRDs and bump version

This commit is contained in:
github-actions[bot]
2025-11-24 08:22:20 +00:00
parent 7a0d3e81aa
commit 8a5309e4e2
90 changed files with 38138 additions and 74237 deletions

View File

@@ -0,0 +1,65 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
export declare class BackendLBPolicy extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicy resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicy;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicy";
/**
* Returns true if the given object is an instance of BackendLBPolicy. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is BackendLBPolicy;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMeta>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicySpec>;
readonly status: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicyStatus>;
/**
* Create a BackendLBPolicy 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?: BackendLBPolicyArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a BackendLBPolicy resource.
*/
export interface BackendLBPolicyArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicySpec>;
}

View File

@@ -0,0 +1,64 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackendLBPolicy = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
class BackendLBPolicy extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicy resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new BackendLBPolicy(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of BackendLBPolicy. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicy.__pulumiType;
}
/**
* Create a BackendLBPolicy 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "BackendLBPolicy";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicy.__pulumiType, name, resourceInputs, opts);
}
}
exports.BackendLBPolicy = BackendLBPolicy;
/** @internal */
BackendLBPolicy.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicy';

View File

@@ -0,0 +1,100 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
export class BackendLBPolicy extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicy resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicy {
return new BackendLBPolicy(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicy';
/**
* Returns true if the given object is an instance of BackendLBPolicy. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is BackendLBPolicy {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicy.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMeta>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicySpec>;
public /*out*/ readonly status!: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicyStatus>;
/**
* Create a BackendLBPolicy 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?: BackendLBPolicyArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "BackendLBPolicy";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicy.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a BackendLBPolicy resource.
*/
export interface BackendLBPolicyArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicySpec>;
}

View File

@@ -0,0 +1,69 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* BackendLBPolicyList is a list of BackendLBPolicy
*/
export declare class BackendLBPolicyList extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicyList;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyList";
/**
* Returns true if the given object is an instance of BackendLBPolicyList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is BackendLBPolicyList;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of backendlbpolicies. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
readonly items: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicy[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"BackendLBPolicyList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a BackendLBPolicyList 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?: BackendLBPolicyListArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a BackendLBPolicyList resource.
*/
export interface BackendLBPolicyListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of backendlbpolicies. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicy>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicyList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,64 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackendLBPolicyList = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* BackendLBPolicyList is a list of BackendLBPolicy
*/
class BackendLBPolicyList extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new BackendLBPolicyList(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of BackendLBPolicyList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicyList.__pulumiType;
}
/**
* Create a BackendLBPolicyList 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "BackendLBPolicyList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicyList.__pulumiType, name, resourceInputs, opts);
}
}
exports.BackendLBPolicyList = BackendLBPolicyList;
/** @internal */
BackendLBPolicyList.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyList';

View File

@@ -0,0 +1,105 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* BackendLBPolicyList is a list of BackendLBPolicy
*/
export class BackendLBPolicyList extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicyList {
return new BackendLBPolicyList(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyList';
/**
* Returns true if the given object is an instance of BackendLBPolicyList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is BackendLBPolicyList {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicyList.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of backendlbpolicies. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
public readonly items!: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicy[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"BackendLBPolicyList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a BackendLBPolicyList 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?: BackendLBPolicyListArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "BackendLBPolicyList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicyList.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a BackendLBPolicyList resource.
*/
export interface BackendLBPolicyListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of backendlbpolicies. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicy>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicyList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,71 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
export declare class BackendLBPolicyPatch extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicyPatch;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyPatch";
/**
* Returns true if the given object is an instance of BackendLBPolicyPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is BackendLBPolicyPatch;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicySpecPatch>;
readonly status: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicyStatusPatch>;
/**
* Create a BackendLBPolicyPatch 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?: BackendLBPolicyPatchArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a BackendLBPolicyPatch resource.
*/
export interface BackendLBPolicyPatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicySpecPatch>;
}

View File

@@ -0,0 +1,70 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackendLBPolicyPatch = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
class BackendLBPolicyPatch extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new BackendLBPolicyPatch(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of BackendLBPolicyPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicyPatch.__pulumiType;
}
/**
* Create a BackendLBPolicyPatch 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "BackendLBPolicy";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicyPatch.__pulumiType, name, resourceInputs, opts);
}
}
exports.BackendLBPolicyPatch = BackendLBPolicyPatch;
/** @internal */
BackendLBPolicyPatch.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyPatch';

View File

@@ -0,0 +1,106 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* BackendLBPolicy provides a way to define load balancing rules
* for a backend.
*/
export class BackendLBPolicyPatch extends pulumi.CustomResource {
/**
* Get an existing BackendLBPolicyPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): BackendLBPolicyPatch {
return new BackendLBPolicyPatch(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyPatch';
/**
* Returns true if the given object is an instance of BackendLBPolicyPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is BackendLBPolicyPatch {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === BackendLBPolicyPatch.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicySpecPatch>;
public /*out*/ readonly status!: pulumi.Output<outputs.gateway.v1alpha2.BackendLBPolicyStatusPatch>;
/**
* Create a BackendLBPolicyPatch 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?: BackendLBPolicyPatchArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "BackendLBPolicy";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(BackendLBPolicyPatch.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a BackendLBPolicyPatch resource.
*/
export interface BackendLBPolicyPatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"BackendLBPolicy">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.BackendLBPolicySpecPatch>;
}

View File

@@ -0,0 +1,90 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
export declare class GRPCRoute extends pulumi.CustomResource {
/**
* Get an existing GRPCRoute resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRoute;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoute";
/**
* Returns true if the given object is an instance of GRPCRoute. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is GRPCRoute;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMeta>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteSpec>;
readonly status: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteStatus>;
/**
* Create a GRPCRoute 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?: GRPCRouteArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a GRPCRoute resource.
*/
export interface GRPCRouteArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.GRPCRouteSpec>;
}

View File

@@ -0,0 +1,91 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.GRPCRoute = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
class GRPCRoute extends pulumi.CustomResource {
/**
* Get an existing GRPCRoute resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new GRPCRoute(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of GRPCRoute. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRoute.__pulumiType;
}
/**
* Create a GRPCRoute 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "GRPCRoute";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1:GRPCRoute" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(GRPCRoute.__pulumiType, name, resourceInputs, opts);
}
}
exports.GRPCRoute = GRPCRoute;
/** @internal */
GRPCRoute.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoute';

View File

@@ -0,0 +1,127 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
export class GRPCRoute extends pulumi.CustomResource {
/**
* Get an existing GRPCRoute resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRoute {
return new GRPCRoute(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoute';
/**
* Returns true if the given object is an instance of GRPCRoute. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is GRPCRoute {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRoute.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMeta>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteSpec>;
public /*out*/ readonly status!: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteStatus>;
/**
* Create a GRPCRoute 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?: GRPCRouteArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "GRPCRoute";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1:GRPCRoute" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(GRPCRoute.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a GRPCRoute resource.
*/
export interface GRPCRouteArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.GRPCRouteSpec>;
}

View File

@@ -0,0 +1,69 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* GRPCRouteList is a list of GRPCRoute
*/
export declare class GRPCRouteList extends pulumi.CustomResource {
/**
* Get an existing GRPCRouteList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRouteList;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRouteList";
/**
* Returns true if the given object is an instance of GRPCRouteList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is GRPCRouteList;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of grpcroutes. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
readonly items: pulumi.Output<outputs.gateway.v1alpha2.GRPCRoute[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"GRPCRouteList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a GRPCRouteList 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?: GRPCRouteListArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a GRPCRouteList resource.
*/
export interface GRPCRouteListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of grpcroutes. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.GRPCRoute>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRouteList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,64 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.GRPCRouteList = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* GRPCRouteList is a list of GRPCRoute
*/
class GRPCRouteList extends pulumi.CustomResource {
/**
* Get an existing GRPCRouteList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new GRPCRouteList(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of GRPCRouteList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRouteList.__pulumiType;
}
/**
* Create a GRPCRouteList 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "GRPCRouteList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(GRPCRouteList.__pulumiType, name, resourceInputs, opts);
}
}
exports.GRPCRouteList = GRPCRouteList;
/** @internal */
GRPCRouteList.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRouteList';

View File

@@ -0,0 +1,105 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* GRPCRouteList is a list of GRPCRoute
*/
export class GRPCRouteList extends pulumi.CustomResource {
/**
* Get an existing GRPCRouteList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRouteList {
return new GRPCRouteList(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRouteList';
/**
* Returns true if the given object is an instance of GRPCRouteList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is GRPCRouteList {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRouteList.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of grpcroutes. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
public readonly items!: pulumi.Output<outputs.gateway.v1alpha2.GRPCRoute[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"GRPCRouteList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a GRPCRouteList 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?: GRPCRouteListArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "GRPCRouteList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(GRPCRouteList.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a GRPCRouteList resource.
*/
export interface GRPCRouteListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of grpcroutes. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.GRPCRoute>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRouteList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,96 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
export declare class GRPCRoutePatch extends pulumi.CustomResource {
/**
* Get an existing GRPCRoutePatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRoutePatch;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoutePatch";
/**
* Returns true if the given object is an instance of GRPCRoutePatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is GRPCRoutePatch;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteSpecPatch>;
readonly status: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteStatusPatch>;
/**
* Create a GRPCRoutePatch 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?: GRPCRoutePatchArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a GRPCRoutePatch resource.
*/
export interface GRPCRoutePatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.GRPCRouteSpecPatch>;
}

View File

@@ -0,0 +1,97 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.GRPCRoutePatch = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
class GRPCRoutePatch extends pulumi.CustomResource {
/**
* Get an existing GRPCRoutePatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new GRPCRoutePatch(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of GRPCRoutePatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRoutePatch.__pulumiType;
}
/**
* Create a GRPCRoutePatch 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "GRPCRoute";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1:GRPCRoutePatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(GRPCRoutePatch.__pulumiType, name, resourceInputs, opts);
}
}
exports.GRPCRoutePatch = GRPCRoutePatch;
/** @internal */
GRPCRoutePatch.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoutePatch';

View File

@@ -0,0 +1,133 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* GRPCRoute provides a way to route gRPC requests. This includes the capability
* to match requests by hostname, gRPC service, gRPC method, or HTTP/2 header.
* Filters can be used to specify additional processing steps. Backends specify
* where matching requests will be routed.
*
* GRPCRoute falls under extended support within the Gateway API. Within the
* following specification, the word "MUST" indicates that an implementation
* supporting GRPCRoute must conform to the indicated requirement, but an
* implementation not supporting this route type need not follow the requirement
* unless explicitly indicated.
*
* Implementations supporting `GRPCRoute` with the `HTTPS` `ProtocolType` MUST
* accept HTTP/2 connections without an initial upgrade from HTTP/1.1, i.e. via
* ALPN. If the implementation does not support this, then it MUST set the
* "Accepted" condition to "False" for the affected listener with a reason of
* "UnsupportedProtocol". Implementations MAY also accept HTTP/2 connections
* with an upgrade from HTTP/1.
*
* Implementations supporting `GRPCRoute` with the `HTTP` `ProtocolType` MUST
* support HTTP/2 over cleartext TCP (h2c,
* https://www.rfc-editor.org/rfc/rfc7540#section-3.1) without an initial
* upgrade from HTTP/1.1, i.e. with prior knowledge
* (https://www.rfc-editor.org/rfc/rfc7540#section-3.4). If the implementation
* does not support this, then it MUST set the "Accepted" condition to "False"
* for the affected listener with a reason of "UnsupportedProtocol".
* Implementations MAY also accept HTTP/2 connections with an upgrade from
* HTTP/1, i.e. without prior knowledge.
*/
export class GRPCRoutePatch extends pulumi.CustomResource {
/**
* Get an existing GRPCRoutePatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GRPCRoutePatch {
return new GRPCRoutePatch(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoutePatch';
/**
* Returns true if the given object is an instance of GRPCRoutePatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is GRPCRoutePatch {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === GRPCRoutePatch.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteSpecPatch>;
public /*out*/ readonly status!: pulumi.Output<outputs.gateway.v1alpha2.GRPCRouteStatusPatch>;
/**
* Create a GRPCRoutePatch 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?: GRPCRoutePatchArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "GRPCRoute";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
resourceInputs["status"] = undefined /*out*/;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1:GRPCRoutePatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(GRPCRoutePatch.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a GRPCRoutePatch resource.
*/
export interface GRPCRoutePatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"GRPCRoute">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.GRPCRouteSpecPatch>;
}

View File

@@ -1,3 +1,30 @@
export { BackendLBPolicyArgs } from "./backendLBPolicy";
export type BackendLBPolicy = import("./backendLBPolicy").BackendLBPolicy;
export declare const BackendLBPolicy: typeof import("./backendLBPolicy").BackendLBPolicy;
export { BackendLBPolicyListArgs } from "./backendLBPolicyList";
export type BackendLBPolicyList = import("./backendLBPolicyList").BackendLBPolicyList;
export declare const BackendLBPolicyList: typeof import("./backendLBPolicyList").BackendLBPolicyList;
export { BackendLBPolicyPatchArgs } from "./backendLBPolicyPatch";
export type BackendLBPolicyPatch = import("./backendLBPolicyPatch").BackendLBPolicyPatch;
export declare const BackendLBPolicyPatch: typeof import("./backendLBPolicyPatch").BackendLBPolicyPatch;
export { GRPCRouteArgs } from "./grpcroute";
export type GRPCRoute = import("./grpcroute").GRPCRoute;
export declare const GRPCRoute: typeof import("./grpcroute").GRPCRoute;
export { GRPCRouteListArgs } from "./grpcrouteList";
export type GRPCRouteList = import("./grpcrouteList").GRPCRouteList;
export declare const GRPCRouteList: typeof import("./grpcrouteList").GRPCRouteList;
export { GRPCRoutePatchArgs } from "./grpcroutePatch";
export type GRPCRoutePatch = import("./grpcroutePatch").GRPCRoutePatch;
export declare const GRPCRoutePatch: typeof import("./grpcroutePatch").GRPCRoutePatch;
export { ReferenceGrantArgs } from "./referenceGrant";
export type ReferenceGrant = import("./referenceGrant").ReferenceGrant;
export declare const ReferenceGrant: typeof import("./referenceGrant").ReferenceGrant;
export { ReferenceGrantListArgs } from "./referenceGrantList";
export type ReferenceGrantList = import("./referenceGrantList").ReferenceGrantList;
export declare const ReferenceGrantList: typeof import("./referenceGrantList").ReferenceGrantList;
export { ReferenceGrantPatchArgs } from "./referenceGrantPatch";
export type ReferenceGrantPatch = import("./referenceGrantPatch").ReferenceGrantPatch;
export declare const ReferenceGrantPatch: typeof import("./referenceGrantPatch").ReferenceGrantPatch;
export { TCPRouteArgs } from "./tcproute";
export type TCPRoute = import("./tcproute").TCPRoute;
export declare const TCPRoute: typeof import("./tcproute").TCPRoute;

View File

@@ -2,9 +2,27 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.UDPRoutePatch = exports.UDPRouteList = exports.UDPRoute = exports.TLSRoutePatch = exports.TLSRouteList = exports.TLSRoute = exports.TCPRoutePatch = exports.TCPRouteList = exports.TCPRoute = void 0;
exports.UDPRoutePatch = exports.UDPRouteList = exports.UDPRoute = exports.TLSRoutePatch = exports.TLSRouteList = exports.TLSRoute = exports.TCPRoutePatch = exports.TCPRouteList = exports.TCPRoute = exports.ReferenceGrantPatch = exports.ReferenceGrantList = exports.ReferenceGrant = exports.GRPCRoutePatch = exports.GRPCRouteList = exports.GRPCRoute = exports.BackendLBPolicyPatch = exports.BackendLBPolicyList = exports.BackendLBPolicy = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
exports.BackendLBPolicy = null;
utilities.lazyLoad(exports, ["BackendLBPolicy"], () => require("./backendLBPolicy"));
exports.BackendLBPolicyList = null;
utilities.lazyLoad(exports, ["BackendLBPolicyList"], () => require("./backendLBPolicyList"));
exports.BackendLBPolicyPatch = null;
utilities.lazyLoad(exports, ["BackendLBPolicyPatch"], () => require("./backendLBPolicyPatch"));
exports.GRPCRoute = null;
utilities.lazyLoad(exports, ["GRPCRoute"], () => require("./grpcroute"));
exports.GRPCRouteList = null;
utilities.lazyLoad(exports, ["GRPCRouteList"], () => require("./grpcrouteList"));
exports.GRPCRoutePatch = null;
utilities.lazyLoad(exports, ["GRPCRoutePatch"], () => require("./grpcroutePatch"));
exports.ReferenceGrant = null;
utilities.lazyLoad(exports, ["ReferenceGrant"], () => require("./referenceGrant"));
exports.ReferenceGrantList = null;
utilities.lazyLoad(exports, ["ReferenceGrantList"], () => require("./referenceGrantList"));
exports.ReferenceGrantPatch = null;
utilities.lazyLoad(exports, ["ReferenceGrantPatch"], () => require("./referenceGrantPatch"));
exports.TCPRoute = null;
utilities.lazyLoad(exports, ["TCPRoute"], () => require("./tcproute"));
exports.TCPRouteList = null;
@@ -27,6 +45,24 @@ const _module = {
version: utilities.getVersion(),
construct: (name, type, urn) => {
switch (type) {
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicy":
return new exports.BackendLBPolicy(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyList":
return new exports.BackendLBPolicyList(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyPatch":
return new exports.BackendLBPolicyPatch(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoute":
return new exports.GRPCRoute(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRouteList":
return new exports.GRPCRouteList(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoutePatch":
return new exports.GRPCRoutePatch(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrant":
return new exports.ReferenceGrant(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantList":
return new exports.ReferenceGrantList(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantPatch":
return new exports.ReferenceGrantPatch(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:TCPRoute":
return new exports.TCPRoute(name, undefined, { urn });
case "kubernetes:gateway.networking.k8s.io/v1alpha2:TCPRouteList":

View File

@@ -5,6 +5,51 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "../../utilities";
// Export members:
export { BackendLBPolicyArgs } from "./backendLBPolicy";
export type BackendLBPolicy = import("./backendLBPolicy").BackendLBPolicy;
export const BackendLBPolicy: typeof import("./backendLBPolicy").BackendLBPolicy = null as any;
utilities.lazyLoad(exports, ["BackendLBPolicy"], () => require("./backendLBPolicy"));
export { BackendLBPolicyListArgs } from "./backendLBPolicyList";
export type BackendLBPolicyList = import("./backendLBPolicyList").BackendLBPolicyList;
export const BackendLBPolicyList: typeof import("./backendLBPolicyList").BackendLBPolicyList = null as any;
utilities.lazyLoad(exports, ["BackendLBPolicyList"], () => require("./backendLBPolicyList"));
export { BackendLBPolicyPatchArgs } from "./backendLBPolicyPatch";
export type BackendLBPolicyPatch = import("./backendLBPolicyPatch").BackendLBPolicyPatch;
export const BackendLBPolicyPatch: typeof import("./backendLBPolicyPatch").BackendLBPolicyPatch = null as any;
utilities.lazyLoad(exports, ["BackendLBPolicyPatch"], () => require("./backendLBPolicyPatch"));
export { GRPCRouteArgs } from "./grpcroute";
export type GRPCRoute = import("./grpcroute").GRPCRoute;
export const GRPCRoute: typeof import("./grpcroute").GRPCRoute = null as any;
utilities.lazyLoad(exports, ["GRPCRoute"], () => require("./grpcroute"));
export { GRPCRouteListArgs } from "./grpcrouteList";
export type GRPCRouteList = import("./grpcrouteList").GRPCRouteList;
export const GRPCRouteList: typeof import("./grpcrouteList").GRPCRouteList = null as any;
utilities.lazyLoad(exports, ["GRPCRouteList"], () => require("./grpcrouteList"));
export { GRPCRoutePatchArgs } from "./grpcroutePatch";
export type GRPCRoutePatch = import("./grpcroutePatch").GRPCRoutePatch;
export const GRPCRoutePatch: typeof import("./grpcroutePatch").GRPCRoutePatch = null as any;
utilities.lazyLoad(exports, ["GRPCRoutePatch"], () => require("./grpcroutePatch"));
export { ReferenceGrantArgs } from "./referenceGrant";
export type ReferenceGrant = import("./referenceGrant").ReferenceGrant;
export const ReferenceGrant: typeof import("./referenceGrant").ReferenceGrant = null as any;
utilities.lazyLoad(exports, ["ReferenceGrant"], () => require("./referenceGrant"));
export { ReferenceGrantListArgs } from "./referenceGrantList";
export type ReferenceGrantList = import("./referenceGrantList").ReferenceGrantList;
export const ReferenceGrantList: typeof import("./referenceGrantList").ReferenceGrantList = null as any;
utilities.lazyLoad(exports, ["ReferenceGrantList"], () => require("./referenceGrantList"));
export { ReferenceGrantPatchArgs } from "./referenceGrantPatch";
export type ReferenceGrantPatch = import("./referenceGrantPatch").ReferenceGrantPatch;
export const ReferenceGrantPatch: typeof import("./referenceGrantPatch").ReferenceGrantPatch = null as any;
utilities.lazyLoad(exports, ["ReferenceGrantPatch"], () => require("./referenceGrantPatch"));
export { TCPRouteArgs } from "./tcproute";
export type TCPRoute = import("./tcproute").TCPRoute;
export const TCPRoute: typeof import("./tcproute").TCPRoute = null as any;
@@ -55,6 +100,24 @@ const _module = {
version: utilities.getVersion(),
construct: (name: string, type: string, urn: string): pulumi.Resource => {
switch (type) {
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicy":
return new BackendLBPolicy(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyList":
return new BackendLBPolicyList(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:BackendLBPolicyPatch":
return new BackendLBPolicyPatch(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoute":
return new GRPCRoute(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRouteList":
return new GRPCRouteList(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:GRPCRoutePatch":
return new GRPCRoutePatch(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrant":
return new ReferenceGrant(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantList":
return new ReferenceGrantList(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantPatch":
return new ReferenceGrantPatch(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:TCPRoute":
return new TCPRoute(name, <any>undefined, { urn })
case "kubernetes:gateway.networking.k8s.io/v1alpha2:TCPRouteList":

View File

@@ -0,0 +1,82 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
export declare class ReferenceGrant extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrant resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrant;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrant";
/**
* Returns true if the given object is an instance of ReferenceGrant. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ReferenceGrant;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMeta>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrantSpec>;
/**
* Create a ReferenceGrant 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?: ReferenceGrantArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a ReferenceGrant resource.
*/
export interface ReferenceGrantArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrantSpec>;
}

View File

@@ -0,0 +1,82 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReferenceGrant = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
class ReferenceGrant extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrant resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new ReferenceGrant(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of ReferenceGrant. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrant.__pulumiType;
}
/**
* Create a ReferenceGrant 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "ReferenceGrant";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1beta1:ReferenceGrant" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(ReferenceGrant.__pulumiType, name, resourceInputs, opts);
}
}
exports.ReferenceGrant = ReferenceGrant;
/** @internal */
ReferenceGrant.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrant';

View File

@@ -0,0 +1,117 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
export class ReferenceGrant extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrant resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrant {
return new ReferenceGrant(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrant';
/**
* Returns true if the given object is an instance of ReferenceGrant. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is ReferenceGrant {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrant.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMeta>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrantSpec>;
/**
* Create a ReferenceGrant 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?: ReferenceGrantArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "ReferenceGrant";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1beta1:ReferenceGrant" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(ReferenceGrant.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a ReferenceGrant resource.
*/
export interface ReferenceGrantArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrantSpec>;
}

View File

@@ -0,0 +1,69 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* ReferenceGrantList is a list of ReferenceGrant
*/
export declare class ReferenceGrantList extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrantList;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantList";
/**
* Returns true if the given object is an instance of ReferenceGrantList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ReferenceGrantList;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of referencegrants. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
readonly items: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrant[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"ReferenceGrantList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a ReferenceGrantList 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?: ReferenceGrantListArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a ReferenceGrantList resource.
*/
export interface ReferenceGrantListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of referencegrants. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrant>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrantList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,64 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReferenceGrantList = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* ReferenceGrantList is a list of ReferenceGrant
*/
class ReferenceGrantList extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new ReferenceGrantList(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of ReferenceGrantList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrantList.__pulumiType;
}
/**
* Create a ReferenceGrantList 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "ReferenceGrantList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ReferenceGrantList.__pulumiType, name, resourceInputs, opts);
}
}
exports.ReferenceGrantList = ReferenceGrantList;
/** @internal */
ReferenceGrantList.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantList';

View File

@@ -0,0 +1,105 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* ReferenceGrantList is a list of ReferenceGrant
*/
export class ReferenceGrantList extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantList resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrantList {
return new ReferenceGrantList(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantList';
/**
* Returns true if the given object is an instance of ReferenceGrantList. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is ReferenceGrantList {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrantList.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of referencegrants. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
public readonly items!: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrant[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"ReferenceGrantList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ListMeta>;
/**
* Create a ReferenceGrantList 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?: ReferenceGrantListArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.items === undefined) && !opts.urn) {
throw new Error("Missing required property 'items'");
}
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["items"] = args ? args.items : undefined;
resourceInputs["kind"] = "ReferenceGrantList";
resourceInputs["metadata"] = args ? args.metadata : undefined;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["items"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ReferenceGrantList.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a ReferenceGrantList resource.
*/
export interface ReferenceGrantListArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* List of referencegrants. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
*/
items: pulumi.Input<pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrant>[]>;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrantList">;
/**
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
}

View File

@@ -0,0 +1,88 @@
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
export declare class ReferenceGrantPatch extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrantPatch;
/** @internal */
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantPatch";
/**
* Returns true if the given object is an instance of ReferenceGrantPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ReferenceGrantPatch;
/**
* 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/sig-architecture/api-conventions.md#resources
*/
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
readonly kind: pulumi.Output<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
readonly spec: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrantSpecPatch>;
/**
* Create a ReferenceGrantPatch 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?: ReferenceGrantPatchArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a ReferenceGrantPatch resource.
*/
export interface ReferenceGrantPatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrantSpecPatch>;
}

View File

@@ -0,0 +1,88 @@
"use strict";
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReferenceGrantPatch = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../../utilities");
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
class ReferenceGrantPatch extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new ReferenceGrantPatch(name, undefined, { ...opts, id: id });
}
/**
* Returns true if the given object is an instance of ReferenceGrantPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrantPatch.__pulumiType;
}
/**
* Create a ReferenceGrantPatch 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, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "ReferenceGrant";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
}
else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1beta1:ReferenceGrantPatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(ReferenceGrantPatch.__pulumiType, name, resourceInputs, opts);
}
}
exports.ReferenceGrantPatch = ReferenceGrantPatch;
/** @internal */
ReferenceGrantPatch.__pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantPatch';

View File

@@ -0,0 +1,123 @@
// *** WARNING: this file was generated by crd2pulumi. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../../types/input";
import * as outputs from "../../types/output";
import * as utilities from "../../utilities";
/**
* Patch resources are used to modify existing Kubernetes resources by using
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
* ReferenceGrant identifies kinds of resources in other namespaces that are
* trusted to reference the specified kinds of resources in the same namespace
* as the policy.
*
* Each ReferenceGrant can be used to represent a unique trust relationship.
* Additional Reference Grants can be used to add to the set of trusted
* sources of inbound references for the namespace they are defined within.
*
* A ReferenceGrant is required for all cross-namespace references in Gateway API
* (with the exception of cross-namespace Route-Gateway attachment, which is
* governed by the AllowedRoutes configuration on the Gateway, and cross-namespace
* Service ParentRefs on a "consumer" mesh Route, which defines routing rules
* applicable only to workloads in the Route namespace). ReferenceGrants allowing
* a reference from a Route to a Service are only applicable to BackendRefs.
*
* ReferenceGrant is a form of runtime verification allowing users to assert
* which cross-namespace object references are permitted. Implementations that
* support ReferenceGrant MUST NOT permit cross-namespace references which have
* no grant, and MUST respond to the removal of a grant by revoking the access
* that the grant allowed.
*/
export class ReferenceGrantPatch extends pulumi.CustomResource {
/**
* Get an existing ReferenceGrantPatch resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
public static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ReferenceGrantPatch {
return new ReferenceGrantPatch(name, undefined as any, { ...opts, id: id });
}
/** @internal */
public static readonly __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1alpha2:ReferenceGrantPatch';
/**
* Returns true if the given object is an instance of ReferenceGrantPatch. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
public static isInstance(obj: any): obj is ReferenceGrantPatch {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ReferenceGrantPatch.__pulumiType;
}
/**
* 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/sig-architecture/api-conventions.md#resources
*/
public readonly apiVersion!: pulumi.Output<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
public readonly kind!: pulumi.Output<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
public readonly metadata!: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
public readonly spec!: pulumi.Output<outputs.gateway.v1alpha2.ReferenceGrantSpecPatch>;
/**
* Create a ReferenceGrantPatch 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?: ReferenceGrantPatchArgs, opts?: pulumi.CustomResourceOptions) {
let resourceInputs: pulumi.Inputs = {};
opts = opts || {};
if (!opts.id) {
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1alpha2";
resourceInputs["kind"] = "ReferenceGrant";
resourceInputs["metadata"] = args ? args.metadata : undefined;
resourceInputs["spec"] = args ? args.spec : undefined;
} else {
resourceInputs["apiVersion"] = undefined /*out*/;
resourceInputs["kind"] = undefined /*out*/;
resourceInputs["metadata"] = undefined /*out*/;
resourceInputs["spec"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1beta1:ReferenceGrantPatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(ReferenceGrantPatch.__pulumiType, name, resourceInputs, opts);
}
}
/**
* The set of arguments for constructing a ReferenceGrantPatch resource.
*/
export interface ReferenceGrantPatchArgs {
/**
* 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/sig-architecture/api-conventions.md#resources
*/
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1alpha2">;
/**
* 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/sig-architecture/api-conventions.md#types-kinds
*/
kind?: pulumi.Input<"ReferenceGrant">;
/**
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
*/
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
spec?: pulumi.Input<inputs.gateway.v1alpha2.ReferenceGrantSpecPatch>;
}

View File

@@ -60,8 +60,6 @@ class TLSRoute extends pulumi.CustomResource {
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1alpha3:TLSRoute" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(TLSRoute.__pulumiType, name, resourceInputs, opts);
}
}

View File

@@ -80,8 +80,6 @@ export class TLSRoute extends pulumi.CustomResource {
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1alpha3:TLSRoute" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(TLSRoute.__pulumiType, name, resourceInputs, opts);
}
}

View File

@@ -66,8 +66,6 @@ class TLSRoutePatch extends pulumi.CustomResource {
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1alpha3:TLSRoutePatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(TLSRoutePatch.__pulumiType, name, resourceInputs, opts);
}
}

View File

@@ -86,8 +86,6 @@ export class TLSRoutePatch extends pulumi.CustomResource {
resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const aliasOpts = { aliases: [{ type: "kubernetes:gateway.networking.k8s.io/v1alpha3:TLSRoutePatch" }] };
opts = pulumi.mergeOptions(opts, aliasOpts);
super(TLSRoutePatch.__pulumiType, name, resourceInputs, opts);
}
}