@kilic.dev/pulumi-k8s-crds 2.0.9 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gateway/v1/index.d.ts +9 -0
- package/dist/gateway/v1/index.js +13 -1
- package/dist/gateway/v1/listenerSet.d.ts +91 -0
- package/dist/gateway/v1/listenerSet.js +123 -0
- package/dist/gateway/v1/listenerSetList.d.ts +69 -0
- package/dist/gateway/v1/listenerSetList.js +97 -0
- package/dist/gateway/v1/listenerSetPatch.d.ts +97 -0
- package/dist/gateway/v1/listenerSetPatch.js +129 -0
- package/dist/types/input.d.ts +10236 -2165
- package/dist/types/output.d.ts +10661 -2293
- package/package.json +5 -5
|
@@ -43,6 +43,15 @@ export declare const HTTPRouteList: typeof import("./httprouteList").HTTPRouteLi
|
|
|
43
43
|
export { HTTPRoutePatchArgs } from "./httproutePatch";
|
|
44
44
|
export type HTTPRoutePatch = import("./httproutePatch").HTTPRoutePatch;
|
|
45
45
|
export declare const HTTPRoutePatch: typeof import("./httproutePatch").HTTPRoutePatch;
|
|
46
|
+
export { ListenerSetArgs } from "./listenerSet";
|
|
47
|
+
export type ListenerSet = import("./listenerSet").ListenerSet;
|
|
48
|
+
export declare const ListenerSet: typeof import("./listenerSet").ListenerSet;
|
|
49
|
+
export { ListenerSetListArgs } from "./listenerSetList";
|
|
50
|
+
export type ListenerSetList = import("./listenerSetList").ListenerSetList;
|
|
51
|
+
export declare const ListenerSetList: typeof import("./listenerSetList").ListenerSetList;
|
|
52
|
+
export { ListenerSetPatchArgs } from "./listenerSetPatch";
|
|
53
|
+
export type ListenerSetPatch = import("./listenerSetPatch").ListenerSetPatch;
|
|
54
|
+
export declare const ListenerSetPatch: typeof import("./listenerSetPatch").ListenerSetPatch;
|
|
46
55
|
export { ReferenceGrantArgs } from "./referenceGrant";
|
|
47
56
|
export type ReferenceGrant = import("./referenceGrant").ReferenceGrant;
|
|
48
57
|
export declare const ReferenceGrant: typeof import("./referenceGrant").ReferenceGrant;
|
package/dist/gateway/v1/index.js
CHANGED
|
@@ -35,7 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
};
|
|
36
36
|
})();
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
exports.TLSRoutePatch = exports.TLSRouteList = exports.TLSRoute = exports.ReferenceGrantPatch = exports.ReferenceGrantList = exports.ReferenceGrant = exports.HTTPRoutePatch = exports.HTTPRouteList = exports.HTTPRoute = exports.GRPCRoutePatch = exports.GRPCRouteList = exports.GRPCRoute = exports.GatewayPatch = exports.GatewayList = exports.GatewayClassPatch = exports.GatewayClassList = exports.GatewayClass = exports.Gateway = exports.BackendTLSPolicyPatch = exports.BackendTLSPolicyList = exports.BackendTLSPolicy = void 0;
|
|
38
|
+
exports.TLSRoutePatch = exports.TLSRouteList = exports.TLSRoute = exports.ReferenceGrantPatch = exports.ReferenceGrantList = exports.ReferenceGrant = exports.ListenerSetPatch = exports.ListenerSetList = exports.ListenerSet = exports.HTTPRoutePatch = exports.HTTPRouteList = exports.HTTPRoute = exports.GRPCRoutePatch = exports.GRPCRouteList = exports.GRPCRoute = exports.GatewayPatch = exports.GatewayList = exports.GatewayClassPatch = exports.GatewayClassList = exports.GatewayClass = exports.Gateway = exports.BackendTLSPolicyPatch = exports.BackendTLSPolicyList = exports.BackendTLSPolicy = void 0;
|
|
39
39
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
40
40
|
const utilities = __importStar(require("../../utilities"));
|
|
41
41
|
exports.BackendTLSPolicy = null;
|
|
@@ -68,6 +68,12 @@ exports.HTTPRouteList = null;
|
|
|
68
68
|
utilities.lazyLoad(exports, ["HTTPRouteList"], () => require("./httprouteList"));
|
|
69
69
|
exports.HTTPRoutePatch = null;
|
|
70
70
|
utilities.lazyLoad(exports, ["HTTPRoutePatch"], () => require("./httproutePatch"));
|
|
71
|
+
exports.ListenerSet = null;
|
|
72
|
+
utilities.lazyLoad(exports, ["ListenerSet"], () => require("./listenerSet"));
|
|
73
|
+
exports.ListenerSetList = null;
|
|
74
|
+
utilities.lazyLoad(exports, ["ListenerSetList"], () => require("./listenerSetList"));
|
|
75
|
+
exports.ListenerSetPatch = null;
|
|
76
|
+
utilities.lazyLoad(exports, ["ListenerSetPatch"], () => require("./listenerSetPatch"));
|
|
71
77
|
exports.ReferenceGrant = null;
|
|
72
78
|
utilities.lazyLoad(exports, ["ReferenceGrant"], () => require("./referenceGrant"));
|
|
73
79
|
exports.ReferenceGrantList = null;
|
|
@@ -114,6 +120,12 @@ const _module = {
|
|
|
114
120
|
return new exports.HTTPRouteList(name, undefined, { urn });
|
|
115
121
|
case "kubernetes:gateway.networking.k8s.io/v1:HTTPRoutePatch":
|
|
116
122
|
return new exports.HTTPRoutePatch(name, undefined, { urn });
|
|
123
|
+
case "kubernetes:gateway.networking.k8s.io/v1:ListenerSet":
|
|
124
|
+
return new exports.ListenerSet(name, undefined, { urn });
|
|
125
|
+
case "kubernetes:gateway.networking.k8s.io/v1:ListenerSetList":
|
|
126
|
+
return new exports.ListenerSetList(name, undefined, { urn });
|
|
127
|
+
case "kubernetes:gateway.networking.k8s.io/v1:ListenerSetPatch":
|
|
128
|
+
return new exports.ListenerSetPatch(name, undefined, { urn });
|
|
117
129
|
case "kubernetes:gateway.networking.k8s.io/v1:ReferenceGrant":
|
|
118
130
|
return new exports.ReferenceGrant(name, undefined, { urn });
|
|
119
131
|
case "kubernetes:gateway.networking.k8s.io/v1:ReferenceGrantList":
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../../types/input";
|
|
3
|
+
import * as outputs from "../../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* ListenerSet defines a set of additional listeners to attach to an existing Gateway.
|
|
6
|
+
* This resource provides a mechanism to merge multiple listeners into a single Gateway.
|
|
7
|
+
*
|
|
8
|
+
* The parent Gateway must explicitly allow ListenerSet attachment through its
|
|
9
|
+
* AllowedListeners configuration. By default, Gateways do not allow ListenerSet
|
|
10
|
+
* attachment.
|
|
11
|
+
*
|
|
12
|
+
* Routes can attach to a ListenerSet by specifying it as a parentRef, and can
|
|
13
|
+
* optionally target specific listeners using the sectionName field.
|
|
14
|
+
*
|
|
15
|
+
* Policy Attachment:
|
|
16
|
+
* - Policies that attach to a ListenerSet apply to all listeners defined in that resource
|
|
17
|
+
* - Policies do not impact listeners in the parent Gateway
|
|
18
|
+
* - Different ListenerSets attached to the same Gateway can have different policies
|
|
19
|
+
* - If an implementation cannot apply a policy to specific listeners, it should reject the policy
|
|
20
|
+
*
|
|
21
|
+
* ReferenceGrant Semantics:
|
|
22
|
+
* - ReferenceGrants applied to a Gateway are not inherited by child ListenerSets
|
|
23
|
+
* - ReferenceGrants applied to a ListenerSet do not grant permission to the parent Gateway's listeners
|
|
24
|
+
* - A ListenerSet can reference secrets/backends in its own namespace without a ReferenceGrant
|
|
25
|
+
*
|
|
26
|
+
* Gateway Integration:
|
|
27
|
+
* - The parent Gateway's status will include "AttachedListenerSets"
|
|
28
|
+
* which is the count of ListenerSets that have successfully attached to a Gateway
|
|
29
|
+
* A ListenerSet is successfully attached to a Gateway when all the following conditions are met:
|
|
30
|
+
* - The ListenerSet is selected by the Gateway's AllowedListeners field
|
|
31
|
+
* - The ListenerSet has a valid ParentRef selecting the Gateway
|
|
32
|
+
* - The ListenerSet's status has the condition "Accepted: true"
|
|
33
|
+
*/
|
|
34
|
+
export declare class ListenerSet extends pulumi.CustomResource {
|
|
35
|
+
/**
|
|
36
|
+
* Get an existing ListenerSet resource's state with the given name, ID, and optional extra
|
|
37
|
+
* properties used to qualify the lookup.
|
|
38
|
+
*
|
|
39
|
+
* @param name The _unique_ name of the resulting resource.
|
|
40
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
41
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
42
|
+
*/
|
|
43
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ListenerSet;
|
|
44
|
+
/** @internal */
|
|
45
|
+
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1:ListenerSet";
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if the given object is an instance of ListenerSet. This is designed to work even
|
|
48
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
49
|
+
*/
|
|
50
|
+
static isInstance(obj: any): obj is ListenerSet;
|
|
51
|
+
/**
|
|
52
|
+
* 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
|
|
53
|
+
*/
|
|
54
|
+
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1">;
|
|
55
|
+
/**
|
|
56
|
+
* 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
|
|
57
|
+
*/
|
|
58
|
+
readonly kind: pulumi.Output<"ListenerSet">;
|
|
59
|
+
/**
|
|
60
|
+
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
61
|
+
*/
|
|
62
|
+
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMeta>;
|
|
63
|
+
readonly spec: pulumi.Output<outputs.gateway.v1.ListenerSetSpec>;
|
|
64
|
+
readonly status: pulumi.Output<outputs.gateway.v1.ListenerSetStatus>;
|
|
65
|
+
/**
|
|
66
|
+
* Create a ListenerSet resource with the given unique name, arguments, and options.
|
|
67
|
+
*
|
|
68
|
+
* @param name The _unique_ name of the resource.
|
|
69
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
70
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
71
|
+
*/
|
|
72
|
+
constructor(name: string, args?: ListenerSetArgs, opts?: pulumi.CustomResourceOptions);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* The set of arguments for constructing a ListenerSet resource.
|
|
76
|
+
*/
|
|
77
|
+
export interface ListenerSetArgs {
|
|
78
|
+
/**
|
|
79
|
+
* 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
|
|
80
|
+
*/
|
|
81
|
+
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1">;
|
|
82
|
+
/**
|
|
83
|
+
* 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
|
|
84
|
+
*/
|
|
85
|
+
kind?: pulumi.Input<"ListenerSet">;
|
|
86
|
+
/**
|
|
87
|
+
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
88
|
+
*/
|
|
89
|
+
metadata?: pulumi.Input<inputs.meta.v1.ObjectMeta>;
|
|
90
|
+
spec?: pulumi.Input<inputs.gateway.v1.ListenerSetSpec>;
|
|
91
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by crd2pulumi. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.ListenerSet = void 0;
|
|
39
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
40
|
+
const utilities = __importStar(require("../../utilities"));
|
|
41
|
+
/**
|
|
42
|
+
* ListenerSet defines a set of additional listeners to attach to an existing Gateway.
|
|
43
|
+
* This resource provides a mechanism to merge multiple listeners into a single Gateway.
|
|
44
|
+
*
|
|
45
|
+
* The parent Gateway must explicitly allow ListenerSet attachment through its
|
|
46
|
+
* AllowedListeners configuration. By default, Gateways do not allow ListenerSet
|
|
47
|
+
* attachment.
|
|
48
|
+
*
|
|
49
|
+
* Routes can attach to a ListenerSet by specifying it as a parentRef, and can
|
|
50
|
+
* optionally target specific listeners using the sectionName field.
|
|
51
|
+
*
|
|
52
|
+
* Policy Attachment:
|
|
53
|
+
* - Policies that attach to a ListenerSet apply to all listeners defined in that resource
|
|
54
|
+
* - Policies do not impact listeners in the parent Gateway
|
|
55
|
+
* - Different ListenerSets attached to the same Gateway can have different policies
|
|
56
|
+
* - If an implementation cannot apply a policy to specific listeners, it should reject the policy
|
|
57
|
+
*
|
|
58
|
+
* ReferenceGrant Semantics:
|
|
59
|
+
* - ReferenceGrants applied to a Gateway are not inherited by child ListenerSets
|
|
60
|
+
* - ReferenceGrants applied to a ListenerSet do not grant permission to the parent Gateway's listeners
|
|
61
|
+
* - A ListenerSet can reference secrets/backends in its own namespace without a ReferenceGrant
|
|
62
|
+
*
|
|
63
|
+
* Gateway Integration:
|
|
64
|
+
* - The parent Gateway's status will include "AttachedListenerSets"
|
|
65
|
+
* which is the count of ListenerSets that have successfully attached to a Gateway
|
|
66
|
+
* A ListenerSet is successfully attached to a Gateway when all the following conditions are met:
|
|
67
|
+
* - The ListenerSet is selected by the Gateway's AllowedListeners field
|
|
68
|
+
* - The ListenerSet has a valid ParentRef selecting the Gateway
|
|
69
|
+
* - The ListenerSet's status has the condition "Accepted: true"
|
|
70
|
+
*/
|
|
71
|
+
class ListenerSet extends pulumi.CustomResource {
|
|
72
|
+
/**
|
|
73
|
+
* Get an existing ListenerSet resource's state with the given name, ID, and optional extra
|
|
74
|
+
* properties used to qualify the lookup.
|
|
75
|
+
*
|
|
76
|
+
* @param name The _unique_ name of the resulting resource.
|
|
77
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
78
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
79
|
+
*/
|
|
80
|
+
static get(name, id, opts) {
|
|
81
|
+
return new ListenerSet(name, undefined, { ...opts, id: id });
|
|
82
|
+
}
|
|
83
|
+
/** @internal */
|
|
84
|
+
static __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1:ListenerSet';
|
|
85
|
+
/**
|
|
86
|
+
* Returns true if the given object is an instance of ListenerSet. This is designed to work even
|
|
87
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
88
|
+
*/
|
|
89
|
+
static isInstance(obj) {
|
|
90
|
+
if (obj === undefined || obj === null) {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
return obj['__pulumiType'] === ListenerSet.__pulumiType;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Create a ListenerSet resource with the given unique name, arguments, and options.
|
|
97
|
+
*
|
|
98
|
+
* @param name The _unique_ name of the resource.
|
|
99
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
100
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
101
|
+
*/
|
|
102
|
+
constructor(name, args, opts) {
|
|
103
|
+
let resourceInputs = {};
|
|
104
|
+
opts = opts || {};
|
|
105
|
+
if (!opts.id) {
|
|
106
|
+
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1";
|
|
107
|
+
resourceInputs["kind"] = "ListenerSet";
|
|
108
|
+
resourceInputs["metadata"] = args?.metadata;
|
|
109
|
+
resourceInputs["spec"] = args?.spec;
|
|
110
|
+
resourceInputs["status"] = undefined /*out*/;
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
resourceInputs["apiVersion"] = undefined /*out*/;
|
|
114
|
+
resourceInputs["kind"] = undefined /*out*/;
|
|
115
|
+
resourceInputs["metadata"] = undefined /*out*/;
|
|
116
|
+
resourceInputs["spec"] = undefined /*out*/;
|
|
117
|
+
resourceInputs["status"] = undefined /*out*/;
|
|
118
|
+
}
|
|
119
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
120
|
+
super(ListenerSet.__pulumiType, name, resourceInputs, opts);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
exports.ListenerSet = ListenerSet;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../../types/input";
|
|
3
|
+
import * as outputs from "../../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* ListenerSetList is a list of ListenerSet
|
|
6
|
+
*/
|
|
7
|
+
export declare class ListenerSetList extends pulumi.CustomResource {
|
|
8
|
+
/**
|
|
9
|
+
* Get an existing ListenerSetList resource's state with the given name, ID, and optional extra
|
|
10
|
+
* properties used to qualify the lookup.
|
|
11
|
+
*
|
|
12
|
+
* @param name The _unique_ name of the resulting resource.
|
|
13
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
14
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
15
|
+
*/
|
|
16
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ListenerSetList;
|
|
17
|
+
/** @internal */
|
|
18
|
+
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1:ListenerSetList";
|
|
19
|
+
/**
|
|
20
|
+
* Returns true if the given object is an instance of ListenerSetList. This is designed to work even
|
|
21
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
22
|
+
*/
|
|
23
|
+
static isInstance(obj: any): obj is ListenerSetList;
|
|
24
|
+
/**
|
|
25
|
+
* 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
|
|
26
|
+
*/
|
|
27
|
+
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1">;
|
|
28
|
+
/**
|
|
29
|
+
* List of listenersets. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
|
|
30
|
+
*/
|
|
31
|
+
readonly items: pulumi.Output<outputs.gateway.v1.ListenerSet[]>;
|
|
32
|
+
/**
|
|
33
|
+
* 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
|
|
34
|
+
*/
|
|
35
|
+
readonly kind: pulumi.Output<"ListenerSetList">;
|
|
36
|
+
/**
|
|
37
|
+
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
38
|
+
*/
|
|
39
|
+
readonly metadata: pulumi.Output<outputs.meta.v1.ListMeta>;
|
|
40
|
+
/**
|
|
41
|
+
* Create a ListenerSetList resource with the given unique name, arguments, and options.
|
|
42
|
+
*
|
|
43
|
+
* @param name The _unique_ name of the resource.
|
|
44
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
45
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
46
|
+
*/
|
|
47
|
+
constructor(name: string, args?: ListenerSetListArgs, opts?: pulumi.CustomResourceOptions);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The set of arguments for constructing a ListenerSetList resource.
|
|
51
|
+
*/
|
|
52
|
+
export interface ListenerSetListArgs {
|
|
53
|
+
/**
|
|
54
|
+
* 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
|
|
55
|
+
*/
|
|
56
|
+
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1">;
|
|
57
|
+
/**
|
|
58
|
+
* List of listenersets. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md
|
|
59
|
+
*/
|
|
60
|
+
items: pulumi.Input<pulumi.Input<inputs.gateway.v1.ListenerSet>[]>;
|
|
61
|
+
/**
|
|
62
|
+
* 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
|
|
63
|
+
*/
|
|
64
|
+
kind?: pulumi.Input<"ListenerSetList">;
|
|
65
|
+
/**
|
|
66
|
+
* Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
67
|
+
*/
|
|
68
|
+
metadata?: pulumi.Input<inputs.meta.v1.ListMeta>;
|
|
69
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by crd2pulumi. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.ListenerSetList = void 0;
|
|
39
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
40
|
+
const utilities = __importStar(require("../../utilities"));
|
|
41
|
+
/**
|
|
42
|
+
* ListenerSetList is a list of ListenerSet
|
|
43
|
+
*/
|
|
44
|
+
class ListenerSetList extends pulumi.CustomResource {
|
|
45
|
+
/**
|
|
46
|
+
* Get an existing ListenerSetList resource's state with the given name, ID, and optional extra
|
|
47
|
+
* properties used to qualify the lookup.
|
|
48
|
+
*
|
|
49
|
+
* @param name The _unique_ name of the resulting resource.
|
|
50
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
51
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
52
|
+
*/
|
|
53
|
+
static get(name, id, opts) {
|
|
54
|
+
return new ListenerSetList(name, undefined, { ...opts, id: id });
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
static __pulumiType = 'kubernetes:gateway.networking.k8s.io/v1:ListenerSetList';
|
|
58
|
+
/**
|
|
59
|
+
* Returns true if the given object is an instance of ListenerSetList. This is designed to work even
|
|
60
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
61
|
+
*/
|
|
62
|
+
static isInstance(obj) {
|
|
63
|
+
if (obj === undefined || obj === null) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
return obj['__pulumiType'] === ListenerSetList.__pulumiType;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Create a ListenerSetList resource with the given unique name, arguments, and options.
|
|
70
|
+
*
|
|
71
|
+
* @param name The _unique_ name of the resource.
|
|
72
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
73
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
74
|
+
*/
|
|
75
|
+
constructor(name, args, opts) {
|
|
76
|
+
let resourceInputs = {};
|
|
77
|
+
opts = opts || {};
|
|
78
|
+
if (!opts.id) {
|
|
79
|
+
if (args?.items === undefined && !opts.urn) {
|
|
80
|
+
throw new Error("Missing required property 'items'");
|
|
81
|
+
}
|
|
82
|
+
resourceInputs["apiVersion"] = "gateway.networking.k8s.io/v1";
|
|
83
|
+
resourceInputs["items"] = args?.items;
|
|
84
|
+
resourceInputs["kind"] = "ListenerSetList";
|
|
85
|
+
resourceInputs["metadata"] = args?.metadata;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
resourceInputs["apiVersion"] = undefined /*out*/;
|
|
89
|
+
resourceInputs["items"] = undefined /*out*/;
|
|
90
|
+
resourceInputs["kind"] = undefined /*out*/;
|
|
91
|
+
resourceInputs["metadata"] = undefined /*out*/;
|
|
92
|
+
}
|
|
93
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
94
|
+
super(ListenerSetList.__pulumiType, name, resourceInputs, opts);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.ListenerSetList = ListenerSetList;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../../types/input";
|
|
3
|
+
import * as outputs from "../../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Patch resources are used to modify existing Kubernetes resources by using
|
|
6
|
+
* Server-Side Apply updates. The name of the resource must be specified, but all other properties are optional. More than
|
|
7
|
+
* one patch may be applied to the same resource, and a random FieldManager name will be used for each Patch resource.
|
|
8
|
+
* Conflicts will result in an error by default, but can be forced using the "pulumi.com/patchForce" annotation. See the
|
|
9
|
+
* [Server-Side Apply Docs](https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/) for
|
|
10
|
+
* additional information about using Server-Side Apply to manage Kubernetes resources with Pulumi.
|
|
11
|
+
* ListenerSet defines a set of additional listeners to attach to an existing Gateway.
|
|
12
|
+
* This resource provides a mechanism to merge multiple listeners into a single Gateway.
|
|
13
|
+
*
|
|
14
|
+
* The parent Gateway must explicitly allow ListenerSet attachment through its
|
|
15
|
+
* AllowedListeners configuration. By default, Gateways do not allow ListenerSet
|
|
16
|
+
* attachment.
|
|
17
|
+
*
|
|
18
|
+
* Routes can attach to a ListenerSet by specifying it as a parentRef, and can
|
|
19
|
+
* optionally target specific listeners using the sectionName field.
|
|
20
|
+
*
|
|
21
|
+
* Policy Attachment:
|
|
22
|
+
* - Policies that attach to a ListenerSet apply to all listeners defined in that resource
|
|
23
|
+
* - Policies do not impact listeners in the parent Gateway
|
|
24
|
+
* - Different ListenerSets attached to the same Gateway can have different policies
|
|
25
|
+
* - If an implementation cannot apply a policy to specific listeners, it should reject the policy
|
|
26
|
+
*
|
|
27
|
+
* ReferenceGrant Semantics:
|
|
28
|
+
* - ReferenceGrants applied to a Gateway are not inherited by child ListenerSets
|
|
29
|
+
* - ReferenceGrants applied to a ListenerSet do not grant permission to the parent Gateway's listeners
|
|
30
|
+
* - A ListenerSet can reference secrets/backends in its own namespace without a ReferenceGrant
|
|
31
|
+
*
|
|
32
|
+
* Gateway Integration:
|
|
33
|
+
* - The parent Gateway's status will include "AttachedListenerSets"
|
|
34
|
+
* which is the count of ListenerSets that have successfully attached to a Gateway
|
|
35
|
+
* A ListenerSet is successfully attached to a Gateway when all the following conditions are met:
|
|
36
|
+
* - The ListenerSet is selected by the Gateway's AllowedListeners field
|
|
37
|
+
* - The ListenerSet has a valid ParentRef selecting the Gateway
|
|
38
|
+
* - The ListenerSet's status has the condition "Accepted: true"
|
|
39
|
+
*/
|
|
40
|
+
export declare class ListenerSetPatch extends pulumi.CustomResource {
|
|
41
|
+
/**
|
|
42
|
+
* Get an existing ListenerSetPatch resource's state with the given name, ID, and optional extra
|
|
43
|
+
* properties used to qualify the lookup.
|
|
44
|
+
*
|
|
45
|
+
* @param name The _unique_ name of the resulting resource.
|
|
46
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
47
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
48
|
+
*/
|
|
49
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ListenerSetPatch;
|
|
50
|
+
/** @internal */
|
|
51
|
+
static readonly __pulumiType = "kubernetes:gateway.networking.k8s.io/v1:ListenerSetPatch";
|
|
52
|
+
/**
|
|
53
|
+
* Returns true if the given object is an instance of ListenerSetPatch. This is designed to work even
|
|
54
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
55
|
+
*/
|
|
56
|
+
static isInstance(obj: any): obj is ListenerSetPatch;
|
|
57
|
+
/**
|
|
58
|
+
* 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
|
|
59
|
+
*/
|
|
60
|
+
readonly apiVersion: pulumi.Output<"gateway.networking.k8s.io/v1">;
|
|
61
|
+
/**
|
|
62
|
+
* 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
|
|
63
|
+
*/
|
|
64
|
+
readonly kind: pulumi.Output<"ListenerSet">;
|
|
65
|
+
/**
|
|
66
|
+
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
67
|
+
*/
|
|
68
|
+
readonly metadata: pulumi.Output<outputs.meta.v1.ObjectMetaPatch>;
|
|
69
|
+
readonly spec: pulumi.Output<outputs.gateway.v1.ListenerSetSpecPatch>;
|
|
70
|
+
readonly status: pulumi.Output<outputs.gateway.v1.ListenerSetStatusPatch>;
|
|
71
|
+
/**
|
|
72
|
+
* Create a ListenerSetPatch resource with the given unique name, arguments, and options.
|
|
73
|
+
*
|
|
74
|
+
* @param name The _unique_ name of the resource.
|
|
75
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
76
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
77
|
+
*/
|
|
78
|
+
constructor(name: string, args?: ListenerSetPatchArgs, opts?: pulumi.CustomResourceOptions);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* The set of arguments for constructing a ListenerSetPatch resource.
|
|
82
|
+
*/
|
|
83
|
+
export interface ListenerSetPatchArgs {
|
|
84
|
+
/**
|
|
85
|
+
* 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
|
|
86
|
+
*/
|
|
87
|
+
apiVersion?: pulumi.Input<"gateway.networking.k8s.io/v1">;
|
|
88
|
+
/**
|
|
89
|
+
* 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
|
|
90
|
+
*/
|
|
91
|
+
kind?: pulumi.Input<"ListenerSet">;
|
|
92
|
+
/**
|
|
93
|
+
* Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
|
|
94
|
+
*/
|
|
95
|
+
metadata?: pulumi.Input<inputs.meta.v1.ObjectMetaPatch>;
|
|
96
|
+
spec?: pulumi.Input<inputs.gateway.v1.ListenerSetSpecPatch>;
|
|
97
|
+
}
|