@awboost/cfn-resource-types 0.1.487 → 0.1.488
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/lib/AWS-EKS-Capability.d.ts +210 -0
- package/lib/AWS-EKS-Capability.js +13 -0
- package/package.json +1 -1
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
|
|
3
|
+
/**
|
|
4
|
+
* Resource type definition for `AWS::EKS::Capability`.
|
|
5
|
+
* Resource Type definition for EKS Capability.
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html}
|
|
7
|
+
*/
|
|
8
|
+
export type EKSCapabilityProperties = {
|
|
9
|
+
/**
|
|
10
|
+
* A unique name for the capability. The name must be unique within your cluster and can contain alphanumeric characters, hyphens, and underscores.
|
|
11
|
+
* @minLength `1`
|
|
12
|
+
* @maxLength `100`
|
|
13
|
+
*/
|
|
14
|
+
CapabilityName: string;
|
|
15
|
+
/**
|
|
16
|
+
* The name of the EKS cluster where you want to create the capability.
|
|
17
|
+
* @minLength `1`
|
|
18
|
+
* @maxLength `100`
|
|
19
|
+
*/
|
|
20
|
+
ClusterName: string;
|
|
21
|
+
/**
|
|
22
|
+
* The configuration settings for the capability. The structure of this object varies depending on the capability type. For Argo CD capabilities, you can configure IAM Identity Center integration, RBAC role mappings, and network access settings.
|
|
23
|
+
*/
|
|
24
|
+
Configuration?: CapabilityConfiguration;
|
|
25
|
+
/**
|
|
26
|
+
* Specifies how Kubernetes resources managed by the capability should be handled when the capability is deleted. Currently, the only supported value is RETAIN which retains all Kubernetes resources managed by the capability when the capability is deleted.
|
|
27
|
+
*/
|
|
28
|
+
DeletePropagationPolicy: "RETAIN";
|
|
29
|
+
/**
|
|
30
|
+
* The Amazon Resource Name (ARN) of the IAM role that the capability uses to interact with AWS services. This role must have a trust policy that allows the EKS service principal to assume it, and it must have the necessary permissions for the capability type you're creating.
|
|
31
|
+
* @pattern `^arn:aws[a-z-]*:iam::[0-9]+:role/[a-zA-Z0-9+=,.@_-]+$`
|
|
32
|
+
*/
|
|
33
|
+
RoleArn: string;
|
|
34
|
+
/**
|
|
35
|
+
* An array of key-value pairs to apply to this resource.
|
|
36
|
+
*/
|
|
37
|
+
Tags?: Tag[];
|
|
38
|
+
/**
|
|
39
|
+
* The type of capability to create. Valid values are: ACK (AWS Controllers for Kubernetes, which lets you manage AWS resources directly from Kubernetes), ARGOCD (Argo CD for GitOps-based continuous delivery), or KRO (Kube Resource Orchestrator for composing and managing custom Kubernetes resources).
|
|
40
|
+
*/
|
|
41
|
+
Type: "ARGOCD" | "ACK" | "KRO";
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Attribute type definition for `AWS::EKS::Capability`.
|
|
45
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#aws-resource-eks-capability-return-values}
|
|
46
|
+
*/
|
|
47
|
+
export type EKSCapabilityAttributes = {
|
|
48
|
+
/**
|
|
49
|
+
* The Amazon Resource Name (ARN) of the capability.
|
|
50
|
+
*/
|
|
51
|
+
Arn: string;
|
|
52
|
+
/**
|
|
53
|
+
* The configuration settings for the capability. The structure of this object varies depending on the capability type. For Argo CD capabilities, you can configure IAM Identity Center integration, RBAC role mappings, and network access settings.
|
|
54
|
+
*/
|
|
55
|
+
Configuration: {
|
|
56
|
+
/**
|
|
57
|
+
* Configuration settings for an Argo CD capability. This includes the Kubernetes namespace, IAM Identity Center integration, RBAC role mappings, and network access configuration.
|
|
58
|
+
*/
|
|
59
|
+
ArgoCd: {
|
|
60
|
+
/**
|
|
61
|
+
* Configuration for integrating Argo CD with IAM Identity Center. This allows you to use your organization's identity provider for authentication to Argo CD.
|
|
62
|
+
*/
|
|
63
|
+
AwsIdc: {
|
|
64
|
+
/**
|
|
65
|
+
* The ARN of the managed application created in IAM Identity Center for this Argo CD capability. This application is automatically created and managed by EKS.
|
|
66
|
+
*/
|
|
67
|
+
IdcManagedApplicationArn: string;
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* The URL of the Argo CD server. Use this URL to access the Argo CD web interface and API.
|
|
71
|
+
*/
|
|
72
|
+
ServerUrl: string;
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* The Unix epoch timestamp in seconds for when the capability was created.
|
|
77
|
+
*/
|
|
78
|
+
CreatedAt: string;
|
|
79
|
+
/**
|
|
80
|
+
* The Unix epoch timestamp in seconds for when the capability was last modified.
|
|
81
|
+
*/
|
|
82
|
+
ModifiedAt: string;
|
|
83
|
+
/**
|
|
84
|
+
* The current status of the capability. Valid values include: CREATING (the capability is being created), ACTIVE (the capability is running and available), UPDATING (the capability is being updated), DELETING (the capability is being deleted), CREATE_FAILED (the capability creation failed), UPDATE_FAILED (the capability update failed), or DELETE_FAILED (the capability deletion failed).
|
|
85
|
+
*/
|
|
86
|
+
Status: string;
|
|
87
|
+
/**
|
|
88
|
+
* The version of the capability software that is currently running.
|
|
89
|
+
*/
|
|
90
|
+
Version: string;
|
|
91
|
+
};
|
|
92
|
+
/**
|
|
93
|
+
* Type definition for `AWS::EKS::Capability.ArgoCd`.
|
|
94
|
+
* Configuration settings for an Argo CD capability. This includes the Kubernetes namespace, IAM Identity Center integration, RBAC role mappings, and network access configuration.
|
|
95
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-argocd.html}
|
|
96
|
+
*/
|
|
97
|
+
export type ArgoCd = {
|
|
98
|
+
/**
|
|
99
|
+
* Configuration for integrating Argo CD with IAM Identity Center. This allows you to use your organization's identity provider for authentication to Argo CD.
|
|
100
|
+
*/
|
|
101
|
+
AwsIdc: AwsIdc;
|
|
102
|
+
/**
|
|
103
|
+
* The Kubernetes namespace where Argo CD resources will be created. If not specified, the default namespace is used.
|
|
104
|
+
*/
|
|
105
|
+
Namespace?: string;
|
|
106
|
+
/**
|
|
107
|
+
* Configuration for network access to the Argo CD capability's managed API server endpoint. By default, the Argo CD server is accessible via a public endpoint. You can optionally specify one or more VPC endpoint IDs to enable private connectivity from your VPCs.
|
|
108
|
+
*/
|
|
109
|
+
NetworkAccess?: NetworkAccess;
|
|
110
|
+
/**
|
|
111
|
+
* A list of role mappings that define which IAM Identity Center users or groups have which Argo CD roles. Each mapping associates an Argo CD role (ADMIN, EDITOR, or VIEWER) with one or more IAM Identity Center identities.
|
|
112
|
+
*/
|
|
113
|
+
RbacRoleMappings?: ArgoCdRoleMapping[];
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Type definition for `AWS::EKS::Capability.ArgoCdRoleMapping`.
|
|
117
|
+
* A mapping between an Argo CD role and IAM Identity Center identities. This defines which users or groups have specific permissions in Argo CD.
|
|
118
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-argocdrolemapping.html}
|
|
119
|
+
*/
|
|
120
|
+
export type ArgoCdRoleMapping = {
|
|
121
|
+
/**
|
|
122
|
+
* A list of IAM Identity Center identities (users or groups) that should be assigned this Argo CD role.
|
|
123
|
+
*/
|
|
124
|
+
Identities: SsoIdentity[];
|
|
125
|
+
/**
|
|
126
|
+
* The Argo CD role to assign. Valid values are: ADMIN (full administrative access to Argo CD), EDITOR (edit access to Argo CD resources), or VIEWER (read-only access to Argo CD resources).
|
|
127
|
+
*/
|
|
128
|
+
Role: "ADMIN" | "EDITOR" | "VIEWER";
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Type definition for `AWS::EKS::Capability.AwsIdc`.
|
|
132
|
+
* Configuration for integrating Argo CD with IAM Identity Center. This allows you to use your organization's identity provider for authentication to Argo CD.
|
|
133
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-awsidc.html}
|
|
134
|
+
*/
|
|
135
|
+
export type AwsIdc = {
|
|
136
|
+
/**
|
|
137
|
+
* The ARN of the IAM Identity Center instance to use for authentication.
|
|
138
|
+
*/
|
|
139
|
+
IdcInstanceArn: string;
|
|
140
|
+
/**
|
|
141
|
+
* The Region where your IAM Identity Center instance is located.
|
|
142
|
+
*/
|
|
143
|
+
IdcRegion?: string;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* Type definition for `AWS::EKS::Capability.CapabilityConfiguration`.
|
|
147
|
+
* Configuration settings for a capability. The structure of this object varies depending on the capability type.
|
|
148
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-capabilityconfiguration.html}
|
|
149
|
+
*/
|
|
150
|
+
export type CapabilityConfiguration = {
|
|
151
|
+
/**
|
|
152
|
+
* Configuration settings for an Argo CD capability. This includes the Kubernetes namespace, IAM Identity Center integration, RBAC role mappings, and network access configuration.
|
|
153
|
+
*/
|
|
154
|
+
ArgoCd?: ArgoCd;
|
|
155
|
+
};
|
|
156
|
+
/**
|
|
157
|
+
* Type definition for `AWS::EKS::Capability.NetworkAccess`.
|
|
158
|
+
* Configuration for network access to the Argo CD capability's managed API server endpoint. By default, the Argo CD server is accessible via a public endpoint. You can optionally specify one or more VPC endpoint IDs to enable private connectivity from your VPCs.
|
|
159
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-networkaccess.html}
|
|
160
|
+
*/
|
|
161
|
+
export type NetworkAccess = {
|
|
162
|
+
/**
|
|
163
|
+
* A list of VPC endpoint IDs to associate with the managed Argo CD API server endpoint. Each VPC endpoint provides private connectivity from a specific VPC to the Argo CD server. You can specify multiple VPC endpoint IDs to enable access from multiple VPCs.
|
|
164
|
+
*/
|
|
165
|
+
VpceIds?: string[];
|
|
166
|
+
};
|
|
167
|
+
/**
|
|
168
|
+
* Type definition for `AWS::EKS::Capability.SsoIdentity`.
|
|
169
|
+
* An IAM Identity Center identity (user or group) that can be assigned permissions in a capability.
|
|
170
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-ssoidentity.html}
|
|
171
|
+
*/
|
|
172
|
+
export type SsoIdentity = {
|
|
173
|
+
/**
|
|
174
|
+
* The unique identifier of the IAM Identity Center user or group.
|
|
175
|
+
*/
|
|
176
|
+
Id: string;
|
|
177
|
+
/**
|
|
178
|
+
* The type of identity. Valid values are SSO_USER or SSO_GROUP.
|
|
179
|
+
*/
|
|
180
|
+
Type: "SSO_USER" | "SSO_GROUP";
|
|
181
|
+
};
|
|
182
|
+
/**
|
|
183
|
+
* Type definition for `AWS::EKS::Capability.Tag`.
|
|
184
|
+
* A key-value pair to associate with a resource.
|
|
185
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-capability-tag.html}
|
|
186
|
+
*/
|
|
187
|
+
export type Tag = {
|
|
188
|
+
/**
|
|
189
|
+
* The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
|
|
190
|
+
* @minLength `1`
|
|
191
|
+
* @maxLength `128`
|
|
192
|
+
*/
|
|
193
|
+
Key: string;
|
|
194
|
+
/**
|
|
195
|
+
* The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
|
|
196
|
+
* @minLength `0`
|
|
197
|
+
* @maxLength `256`
|
|
198
|
+
*/
|
|
199
|
+
Value: string;
|
|
200
|
+
};
|
|
201
|
+
/**
|
|
202
|
+
* Resource type definition for `AWS::EKS::Capability`.
|
|
203
|
+
* Resource Type definition for EKS Capability.
|
|
204
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html}
|
|
205
|
+
*/
|
|
206
|
+
export declare class EKSCapability extends $Resource<"AWS::EKS::Capability", EKSCapabilityProperties, EKSCapabilityAttributes> {
|
|
207
|
+
static readonly Type = "AWS::EKS::Capability";
|
|
208
|
+
constructor(logicalId: string, properties: EKSCapabilityProperties, options?: $ResourceOptions);
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=AWS-EKS-Capability.d.ts.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
/**
|
|
3
|
+
* Resource type definition for `AWS::EKS::Capability`.
|
|
4
|
+
* Resource Type definition for EKS Capability.
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html}
|
|
6
|
+
*/
|
|
7
|
+
export class EKSCapability extends $Resource {
|
|
8
|
+
static Type = "AWS::EKS::Capability";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, EKSCapability.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-EKS-Capability.js.map
|