@upcloud/pulumi-upcloud 0.0.5

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.
Files changed (198) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +61 -0
  3. package/config/index.d.ts +1 -0
  4. package/config/index.js +21 -0
  5. package/config/index.js.map +1 -0
  6. package/config/vars.d.ts +25 -0
  7. package/config/vars.js +43 -0
  8. package/config/vars.js.map +1 -0
  9. package/floatingIpAddress.d.ts +128 -0
  10. package/floatingIpAddress.js +90 -0
  11. package/floatingIpAddress.js.map +1 -0
  12. package/gateway.d.ts +206 -0
  13. package/gateway.js +111 -0
  14. package/gateway.js.map +1 -0
  15. package/gatewayConnection.d.ts +157 -0
  16. package/gatewayConnection.js +105 -0
  17. package/gatewayConnection.js.map +1 -0
  18. package/gatewayConnectionTunnel.d.ts +129 -0
  19. package/gatewayConnectionTunnel.js +78 -0
  20. package/gatewayConnectionTunnel.js.map +1 -0
  21. package/getHosts.d.ts +55 -0
  22. package/getHosts.js +52 -0
  23. package/getHosts.js.map +1 -0
  24. package/getIpAddresses.d.ts +51 -0
  25. package/getIpAddresses.js +48 -0
  26. package/getIpAddresses.js.map +1 -0
  27. package/getKubernetesCluster.d.ts +33 -0
  28. package/getKubernetesCluster.js +28 -0
  29. package/getKubernetesCluster.js.map +1 -0
  30. package/getLoadBalancerDnsChallengeDomain.d.ts +40 -0
  31. package/getLoadBalancerDnsChallengeDomain.js +42 -0
  32. package/getLoadBalancerDnsChallengeDomain.js.map +1 -0
  33. package/getManagedDatabaseMysqlSessions.d.ts +83 -0
  34. package/getManagedDatabaseMysqlSessions.js +74 -0
  35. package/getManagedDatabaseMysqlSessions.js.map +1 -0
  36. package/getManagedDatabaseOpensearchIndices.d.ts +82 -0
  37. package/getManagedDatabaseOpensearchIndices.js +76 -0
  38. package/getManagedDatabaseOpensearchIndices.js.map +1 -0
  39. package/getManagedDatabasePostgresqlSessions.d.ts +83 -0
  40. package/getManagedDatabasePostgresqlSessions.js +74 -0
  41. package/getManagedDatabasePostgresqlSessions.js.map +1 -0
  42. package/getManagedDatabaseRedisSessions.d.ts +87 -0
  43. package/getManagedDatabaseRedisSessions.js +78 -0
  44. package/getManagedDatabaseRedisSessions.js.map +1 -0
  45. package/getManagedDatabaseValkeySessions.d.ts +83 -0
  46. package/getManagedDatabaseValkeySessions.js +74 -0
  47. package/getManagedDatabaseValkeySessions.js.map +1 -0
  48. package/getManagedObjectStoragePolicies.d.ts +33 -0
  49. package/getManagedObjectStoragePolicies.js +28 -0
  50. package/getManagedObjectStoragePolicies.js.map +1 -0
  51. package/getManagedObjectStorageRegions.d.ts +33 -0
  52. package/getManagedObjectStorageRegions.js +30 -0
  53. package/getManagedObjectStorageRegions.js.map +1 -0
  54. package/getNetworks.d.ts +60 -0
  55. package/getNetworks.js +56 -0
  56. package/getNetworks.js.map +1 -0
  57. package/getStorage.d.ts +163 -0
  58. package/getStorage.js +122 -0
  59. package/getStorage.js.map +1 -0
  60. package/getTags.d.ts +20 -0
  61. package/getTags.js +24 -0
  62. package/getTags.js.map +1 -0
  63. package/getZone.d.ts +42 -0
  64. package/getZone.js +32 -0
  65. package/getZone.js.map +1 -0
  66. package/getZones.d.ts +29 -0
  67. package/getZones.js +30 -0
  68. package/getZones.js.map +1 -0
  69. package/index.d.ts +177 -0
  70. package/index.js +287 -0
  71. package/index.js.map +1 -0
  72. package/kubernetesCluster.d.ts +237 -0
  73. package/kubernetesCluster.js +131 -0
  74. package/kubernetesCluster.js.map +1 -0
  75. package/kubernetesNodeGroup.d.ts +243 -0
  76. package/kubernetesNodeGroup.js +120 -0
  77. package/kubernetesNodeGroup.js.map +1 -0
  78. package/loadbalancer.d.ts +261 -0
  79. package/loadbalancer.js +122 -0
  80. package/loadbalancer.js.map +1 -0
  81. package/loadbalancerBackend.d.ts +121 -0
  82. package/loadbalancerBackend.js +90 -0
  83. package/loadbalancerBackend.js.map +1 -0
  84. package/loadbalancerBackendTlsConfig.d.ts +75 -0
  85. package/loadbalancerBackendTlsConfig.js +62 -0
  86. package/loadbalancerBackendTlsConfig.js.map +1 -0
  87. package/loadbalancerDynamicBackendMember.d.ts +169 -0
  88. package/loadbalancerDynamicBackendMember.js +119 -0
  89. package/loadbalancerDynamicBackendMember.js.map +1 -0
  90. package/loadbalancerDynamicCertificateBundle.d.ts +114 -0
  91. package/loadbalancerDynamicCertificateBundle.js +83 -0
  92. package/loadbalancerDynamicCertificateBundle.js.map +1 -0
  93. package/loadbalancerFrontend.d.ts +184 -0
  94. package/loadbalancerFrontend.js +126 -0
  95. package/loadbalancerFrontend.js.map +1 -0
  96. package/loadbalancerFrontendRule.d.ts +170 -0
  97. package/loadbalancerFrontendRule.js +125 -0
  98. package/loadbalancerFrontendRule.js.map +1 -0
  99. package/loadbalancerFrontendTlsConfig.d.ts +114 -0
  100. package/loadbalancerFrontendTlsConfig.js +101 -0
  101. package/loadbalancerFrontendTlsConfig.js.map +1 -0
  102. package/loadbalancerManualCertificateBundle.d.ts +111 -0
  103. package/loadbalancerManualCertificateBundle.js +72 -0
  104. package/loadbalancerManualCertificateBundle.js.map +1 -0
  105. package/loadbalancerResolver.d.ts +171 -0
  106. package/loadbalancerResolver.js +120 -0
  107. package/loadbalancerResolver.js.map +1 -0
  108. package/loadbalancerStaticBackendMember.d.ts +156 -0
  109. package/loadbalancerStaticBackendMember.js +106 -0
  110. package/loadbalancerStaticBackendMember.js.map +1 -0
  111. package/managedDatabaseLogicalDatabase.d.ts +109 -0
  112. package/managedDatabaseLogicalDatabase.js +83 -0
  113. package/managedDatabaseLogicalDatabase.js.map +1 -0
  114. package/managedDatabaseMysql.d.ts +298 -0
  115. package/managedDatabaseMysql.js +139 -0
  116. package/managedDatabaseMysql.js.map +1 -0
  117. package/managedDatabaseOpensearch.d.ts +317 -0
  118. package/managedDatabaseOpensearch.js +132 -0
  119. package/managedDatabaseOpensearch.js.map +1 -0
  120. package/managedDatabasePostgresql.d.ts +295 -0
  121. package/managedDatabasePostgresql.js +130 -0
  122. package/managedDatabasePostgresql.js.map +1 -0
  123. package/managedDatabaseRedis.d.ts +287 -0
  124. package/managedDatabaseRedis.js +128 -0
  125. package/managedDatabaseRedis.js.map +1 -0
  126. package/managedDatabaseUser.d.ts +163 -0
  127. package/managedDatabaseUser.js +94 -0
  128. package/managedDatabaseUser.js.map +1 -0
  129. package/managedDatabaseValkey.d.ts +285 -0
  130. package/managedDatabaseValkey.js +126 -0
  131. package/managedDatabaseValkey.js.map +1 -0
  132. package/managedObjectStorage.d.ts +178 -0
  133. package/managedObjectStorage.js +107 -0
  134. package/managedObjectStorage.js.map +1 -0
  135. package/managedObjectStorageBucket.d.ts +94 -0
  136. package/managedObjectStorageBucket.js +76 -0
  137. package/managedObjectStorageBucket.js.map +1 -0
  138. package/managedObjectStorageCustomDomain.d.ts +105 -0
  139. package/managedObjectStorageCustomDomain.js +89 -0
  140. package/managedObjectStorageCustomDomain.js.map +1 -0
  141. package/managedObjectStoragePolicy.d.ts +155 -0
  142. package/managedObjectStoragePolicy.js +93 -0
  143. package/managedObjectStoragePolicy.js.map +1 -0
  144. package/managedObjectStorageUser.d.ts +101 -0
  145. package/managedObjectStorageUser.js +80 -0
  146. package/managedObjectStorageUser.js.map +1 -0
  147. package/managedObjectStorageUserAccessKey.d.ts +128 -0
  148. package/managedObjectStorageUserAccessKey.js +96 -0
  149. package/managedObjectStorageUserAccessKey.js.map +1 -0
  150. package/managedObjectStorageUserPolicy.d.ts +100 -0
  151. package/managedObjectStorageUserPolicy.js +87 -0
  152. package/managedObjectStorageUserPolicy.js.map +1 -0
  153. package/network.d.ts +142 -0
  154. package/network.js +95 -0
  155. package/network.js.map +1 -0
  156. package/networkPeering.d.ts +137 -0
  157. package/networkPeering.js +96 -0
  158. package/networkPeering.js.map +1 -0
  159. package/objectStorage.d.ts +196 -0
  160. package/objectStorage.js +132 -0
  161. package/objectStorage.js.map +1 -0
  162. package/package.json +29 -0
  163. package/provider.d.ts +60 -0
  164. package/provider.js +50 -0
  165. package/provider.js.map +1 -0
  166. package/router.d.ts +124 -0
  167. package/router.js +77 -0
  168. package/router.js.map +1 -0
  169. package/server.d.ts +332 -0
  170. package/server.js +106 -0
  171. package/server.js.map +1 -0
  172. package/serverFirewallRules.d.ts +124 -0
  173. package/serverFirewallRules.js +107 -0
  174. package/serverFirewallRules.js.map +1 -0
  175. package/serverGroup.d.ts +160 -0
  176. package/serverGroup.js +91 -0
  177. package/serverGroup.js.map +1 -0
  178. package/storage.d.ts +210 -0
  179. package/storage.js +91 -0
  180. package/storage.js.map +1 -0
  181. package/storageTemplate.d.ts +151 -0
  182. package/storageTemplate.js +90 -0
  183. package/storageTemplate.js.map +1 -0
  184. package/tag.d.ts +75 -0
  185. package/tag.js +56 -0
  186. package/tag.js.map +1 -0
  187. package/types/index.d.ts +3 -0
  188. package/types/index.js +11 -0
  189. package/types/index.js.map +1 -0
  190. package/types/input.d.ts +3721 -0
  191. package/types/input.js +5 -0
  192. package/types/input.js.map +1 -0
  193. package/types/output.d.ts +3459 -0
  194. package/types/output.js +5 -0
  195. package/types/output.js.map +1 -0
  196. package/utilities.d.ts +8 -0
  197. package/utilities.js +101 -0
  198. package/utilities.js.map +1 -0
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,237 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * This resource represents a [Managed Kubernetes](https://upcloud.com/products/managed-kubernetes) cluster.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as upcloud from "@upcloud/pulumi-upcloud";
10
+ *
11
+ * // Create a network for the Kubernetes cluster
12
+ * const exampleNetwork = new upcloud.Network("exampleNetwork", {
13
+ * zone: "de-fra1",
14
+ * ipNetwork: {
15
+ * address: "172.16.1.0/24",
16
+ * dhcp: true,
17
+ * family: "IPv4",
18
+ * },
19
+ * });
20
+ * // Create a Kubernetes cluster
21
+ * const exampleKubernetesCluster = new upcloud.KubernetesCluster("exampleKubernetesCluster", {
22
+ * controlPlaneIpFilters: ["0.0.0.0/0"],
23
+ * network: exampleNetwork.id,
24
+ * zone: "de-fra1",
25
+ * });
26
+ * // Kubernetes cluster with private node groups requires a network that is routed through NAT gateway.
27
+ * const example2Router = new upcloud.Router("example2Router", {});
28
+ * const example2Gateway = new upcloud.Gateway("example2Gateway", {
29
+ * zone: "de-fra1",
30
+ * features: ["nat"],
31
+ * router: {
32
+ * id: example2Router.id,
33
+ * },
34
+ * });
35
+ * const example2Network = new upcloud.Network("example2Network", {
36
+ * zone: "de-fra1",
37
+ * ipNetwork: {
38
+ * address: "10.10.0.0/24",
39
+ * dhcp: true,
40
+ * family: "IPv4",
41
+ * dhcpDefaultRoute: true,
42
+ * },
43
+ * router: example2Router.id,
44
+ * });
45
+ * const example2KubernetesCluster = new upcloud.KubernetesCluster("example2KubernetesCluster", {
46
+ * network: example2Network.id,
47
+ * zone: "de-fra1",
48
+ * plan: "production-small",
49
+ * privateNodeGroups: true,
50
+ * });
51
+ * ```
52
+ */
53
+ export declare class KubernetesCluster extends pulumi.CustomResource {
54
+ /**
55
+ * Get an existing KubernetesCluster resource's state with the given name, ID, and optional extra
56
+ * properties used to qualify the lookup.
57
+ *
58
+ * @param name The _unique_ name of the resulting resource.
59
+ * @param id The _unique_ provider ID of the resource to lookup.
60
+ * @param state Any extra arguments used during the lookup.
61
+ * @param opts Optional settings to control the behavior of the CustomResource.
62
+ */
63
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: KubernetesClusterState, opts?: pulumi.CustomResourceOptions): KubernetesCluster;
64
+ /**
65
+ * Returns true if the given object is an instance of KubernetesCluster. This is designed to work even
66
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
67
+ */
68
+ static isInstance(obj: any): obj is KubernetesCluster;
69
+ /**
70
+ * IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any
71
+ * source, use `["0.0.0.0/0"]`. To deny access from all sources, use `[]`. Values set here do not restrict access to node
72
+ * groups or exposed Kubernetes services.
73
+ */
74
+ readonly controlPlaneIpFilters: pulumi.Output<string[]>;
75
+ /**
76
+ * User defined key-value pairs to classify the cluster.
77
+ */
78
+ readonly labels: pulumi.Output<{
79
+ [key: string]: string;
80
+ }>;
81
+ /**
82
+ * Cluster name. Needs to be unique within the account.
83
+ */
84
+ readonly name: pulumi.Output<string>;
85
+ /**
86
+ * Network ID for the cluster to run in.
87
+ */
88
+ readonly network: pulumi.Output<string>;
89
+ /**
90
+ * Network CIDR for the given network. Computed automatically.
91
+ */
92
+ readonly networkCidr: pulumi.Output<string>;
93
+ /**
94
+ * Names of the node groups configured to cluster
95
+ */
96
+ readonly nodeGroups: pulumi.Output<string[]>;
97
+ /**
98
+ * The pricing plan used for the cluster. Default plan is `development`. You can list available plans with `upctl
99
+ * kubernetes plans`.
100
+ */
101
+ readonly plan: pulumi.Output<string>;
102
+ /**
103
+ * Enable private node groups. Private node groups requires a network that is routed through NAT gateway.
104
+ */
105
+ readonly privateNodeGroups: pulumi.Output<boolean>;
106
+ /**
107
+ * Operational state of the cluster.
108
+ */
109
+ readonly state: pulumi.Output<string>;
110
+ /**
111
+ * Set default storage encryption strategy for all nodes in the cluster.
112
+ */
113
+ readonly storageEncryption: pulumi.Output<string | undefined>;
114
+ /**
115
+ * Kubernetes version ID, e.g. `1.29`. You can list available version IDs with `upctl kubernetes versions`.
116
+ */
117
+ readonly version: pulumi.Output<string>;
118
+ /**
119
+ * Zone in which the Kubernetes cluster will be hosted, e.g. `de-fra1`. You can list available zones with `upctl zone
120
+ * list`.
121
+ */
122
+ readonly zone: pulumi.Output<string>;
123
+ /**
124
+ * Create a KubernetesCluster resource with the given unique name, arguments, and options.
125
+ *
126
+ * @param name The _unique_ name of the resource.
127
+ * @param args The arguments to use to populate this resource's properties.
128
+ * @param opts A bag of options that control this resource's behavior.
129
+ */
130
+ constructor(name: string, args: KubernetesClusterArgs, opts?: pulumi.CustomResourceOptions);
131
+ }
132
+ /**
133
+ * Input properties used for looking up and filtering KubernetesCluster resources.
134
+ */
135
+ export interface KubernetesClusterState {
136
+ /**
137
+ * IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any
138
+ * source, use `["0.0.0.0/0"]`. To deny access from all sources, use `[]`. Values set here do not restrict access to node
139
+ * groups or exposed Kubernetes services.
140
+ */
141
+ controlPlaneIpFilters?: pulumi.Input<pulumi.Input<string>[]>;
142
+ /**
143
+ * User defined key-value pairs to classify the cluster.
144
+ */
145
+ labels?: pulumi.Input<{
146
+ [key: string]: pulumi.Input<string>;
147
+ }>;
148
+ /**
149
+ * Cluster name. Needs to be unique within the account.
150
+ */
151
+ name?: pulumi.Input<string>;
152
+ /**
153
+ * Network ID for the cluster to run in.
154
+ */
155
+ network?: pulumi.Input<string>;
156
+ /**
157
+ * Network CIDR for the given network. Computed automatically.
158
+ */
159
+ networkCidr?: pulumi.Input<string>;
160
+ /**
161
+ * Names of the node groups configured to cluster
162
+ */
163
+ nodeGroups?: pulumi.Input<pulumi.Input<string>[]>;
164
+ /**
165
+ * The pricing plan used for the cluster. Default plan is `development`. You can list available plans with `upctl
166
+ * kubernetes plans`.
167
+ */
168
+ plan?: pulumi.Input<string>;
169
+ /**
170
+ * Enable private node groups. Private node groups requires a network that is routed through NAT gateway.
171
+ */
172
+ privateNodeGroups?: pulumi.Input<boolean>;
173
+ /**
174
+ * Operational state of the cluster.
175
+ */
176
+ state?: pulumi.Input<string>;
177
+ /**
178
+ * Set default storage encryption strategy for all nodes in the cluster.
179
+ */
180
+ storageEncryption?: pulumi.Input<string>;
181
+ /**
182
+ * Kubernetes version ID, e.g. `1.29`. You can list available version IDs with `upctl kubernetes versions`.
183
+ */
184
+ version?: pulumi.Input<string>;
185
+ /**
186
+ * Zone in which the Kubernetes cluster will be hosted, e.g. `de-fra1`. You can list available zones with `upctl zone
187
+ * list`.
188
+ */
189
+ zone?: pulumi.Input<string>;
190
+ }
191
+ /**
192
+ * The set of arguments for constructing a KubernetesCluster resource.
193
+ */
194
+ export interface KubernetesClusterArgs {
195
+ /**
196
+ * IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any
197
+ * source, use `["0.0.0.0/0"]`. To deny access from all sources, use `[]`. Values set here do not restrict access to node
198
+ * groups or exposed Kubernetes services.
199
+ */
200
+ controlPlaneIpFilters: pulumi.Input<pulumi.Input<string>[]>;
201
+ /**
202
+ * User defined key-value pairs to classify the cluster.
203
+ */
204
+ labels?: pulumi.Input<{
205
+ [key: string]: pulumi.Input<string>;
206
+ }>;
207
+ /**
208
+ * Cluster name. Needs to be unique within the account.
209
+ */
210
+ name?: pulumi.Input<string>;
211
+ /**
212
+ * Network ID for the cluster to run in.
213
+ */
214
+ network: pulumi.Input<string>;
215
+ /**
216
+ * The pricing plan used for the cluster. Default plan is `development`. You can list available plans with `upctl
217
+ * kubernetes plans`.
218
+ */
219
+ plan?: pulumi.Input<string>;
220
+ /**
221
+ * Enable private node groups. Private node groups requires a network that is routed through NAT gateway.
222
+ */
223
+ privateNodeGroups?: pulumi.Input<boolean>;
224
+ /**
225
+ * Set default storage encryption strategy for all nodes in the cluster.
226
+ */
227
+ storageEncryption?: pulumi.Input<string>;
228
+ /**
229
+ * Kubernetes version ID, e.g. `1.29`. You can list available version IDs with `upctl kubernetes versions`.
230
+ */
231
+ version?: pulumi.Input<string>;
232
+ /**
233
+ * Zone in which the Kubernetes cluster will be hosted, e.g. `de-fra1`. You can list available zones with `upctl zone
234
+ * list`.
235
+ */
236
+ zone: pulumi.Input<string>;
237
+ }
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.KubernetesCluster = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * This resource represents a [Managed Kubernetes](https://upcloud.com/products/managed-kubernetes) cluster.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as upcloud from "@upcloud/pulumi-upcloud";
16
+ *
17
+ * // Create a network for the Kubernetes cluster
18
+ * const exampleNetwork = new upcloud.Network("exampleNetwork", {
19
+ * zone: "de-fra1",
20
+ * ipNetwork: {
21
+ * address: "172.16.1.0/24",
22
+ * dhcp: true,
23
+ * family: "IPv4",
24
+ * },
25
+ * });
26
+ * // Create a Kubernetes cluster
27
+ * const exampleKubernetesCluster = new upcloud.KubernetesCluster("exampleKubernetesCluster", {
28
+ * controlPlaneIpFilters: ["0.0.0.0/0"],
29
+ * network: exampleNetwork.id,
30
+ * zone: "de-fra1",
31
+ * });
32
+ * // Kubernetes cluster with private node groups requires a network that is routed through NAT gateway.
33
+ * const example2Router = new upcloud.Router("example2Router", {});
34
+ * const example2Gateway = new upcloud.Gateway("example2Gateway", {
35
+ * zone: "de-fra1",
36
+ * features: ["nat"],
37
+ * router: {
38
+ * id: example2Router.id,
39
+ * },
40
+ * });
41
+ * const example2Network = new upcloud.Network("example2Network", {
42
+ * zone: "de-fra1",
43
+ * ipNetwork: {
44
+ * address: "10.10.0.0/24",
45
+ * dhcp: true,
46
+ * family: "IPv4",
47
+ * dhcpDefaultRoute: true,
48
+ * },
49
+ * router: example2Router.id,
50
+ * });
51
+ * const example2KubernetesCluster = new upcloud.KubernetesCluster("example2KubernetesCluster", {
52
+ * network: example2Network.id,
53
+ * zone: "de-fra1",
54
+ * plan: "production-small",
55
+ * privateNodeGroups: true,
56
+ * });
57
+ * ```
58
+ */
59
+ class KubernetesCluster extends pulumi.CustomResource {
60
+ /**
61
+ * Get an existing KubernetesCluster resource's state with the given name, ID, and optional extra
62
+ * properties used to qualify the lookup.
63
+ *
64
+ * @param name The _unique_ name of the resulting resource.
65
+ * @param id The _unique_ provider ID of the resource to lookup.
66
+ * @param state Any extra arguments used during the lookup.
67
+ * @param opts Optional settings to control the behavior of the CustomResource.
68
+ */
69
+ static get(name, id, state, opts) {
70
+ return new KubernetesCluster(name, state, Object.assign(Object.assign({}, opts), { id: id }));
71
+ }
72
+ /**
73
+ * Returns true if the given object is an instance of KubernetesCluster. This is designed to work even
74
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
75
+ */
76
+ static isInstance(obj) {
77
+ if (obj === undefined || obj === null) {
78
+ return false;
79
+ }
80
+ return obj['__pulumiType'] === KubernetesCluster.__pulumiType;
81
+ }
82
+ constructor(name, argsOrState, opts) {
83
+ let resourceInputs = {};
84
+ opts = opts || {};
85
+ if (opts.id) {
86
+ const state = argsOrState;
87
+ resourceInputs["controlPlaneIpFilters"] = state ? state.controlPlaneIpFilters : undefined;
88
+ resourceInputs["labels"] = state ? state.labels : undefined;
89
+ resourceInputs["name"] = state ? state.name : undefined;
90
+ resourceInputs["network"] = state ? state.network : undefined;
91
+ resourceInputs["networkCidr"] = state ? state.networkCidr : undefined;
92
+ resourceInputs["nodeGroups"] = state ? state.nodeGroups : undefined;
93
+ resourceInputs["plan"] = state ? state.plan : undefined;
94
+ resourceInputs["privateNodeGroups"] = state ? state.privateNodeGroups : undefined;
95
+ resourceInputs["state"] = state ? state.state : undefined;
96
+ resourceInputs["storageEncryption"] = state ? state.storageEncryption : undefined;
97
+ resourceInputs["version"] = state ? state.version : undefined;
98
+ resourceInputs["zone"] = state ? state.zone : undefined;
99
+ }
100
+ else {
101
+ const args = argsOrState;
102
+ if ((!args || args.controlPlaneIpFilters === undefined) && !opts.urn) {
103
+ throw new Error("Missing required property 'controlPlaneIpFilters'");
104
+ }
105
+ if ((!args || args.network === undefined) && !opts.urn) {
106
+ throw new Error("Missing required property 'network'");
107
+ }
108
+ if ((!args || args.zone === undefined) && !opts.urn) {
109
+ throw new Error("Missing required property 'zone'");
110
+ }
111
+ resourceInputs["controlPlaneIpFilters"] = args ? args.controlPlaneIpFilters : undefined;
112
+ resourceInputs["labels"] = args ? args.labels : undefined;
113
+ resourceInputs["name"] = args ? args.name : undefined;
114
+ resourceInputs["network"] = args ? args.network : undefined;
115
+ resourceInputs["plan"] = args ? args.plan : undefined;
116
+ resourceInputs["privateNodeGroups"] = args ? args.privateNodeGroups : undefined;
117
+ resourceInputs["storageEncryption"] = args ? args.storageEncryption : undefined;
118
+ resourceInputs["version"] = args ? args.version : undefined;
119
+ resourceInputs["zone"] = args ? args.zone : undefined;
120
+ resourceInputs["networkCidr"] = undefined /*out*/;
121
+ resourceInputs["nodeGroups"] = undefined /*out*/;
122
+ resourceInputs["state"] = undefined /*out*/;
123
+ }
124
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
125
+ super(KubernetesCluster.__pulumiType, name, resourceInputs, opts);
126
+ }
127
+ }
128
+ exports.KubernetesCluster = KubernetesCluster;
129
+ /** @internal */
130
+ KubernetesCluster.__pulumiType = 'upcloud:index/kubernetesCluster:KubernetesCluster';
131
+ //# sourceMappingURL=kubernetesCluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kubernetesCluster.js","sourceRoot":"","sources":["../kubernetesCluster.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,243 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * This resource represents a [Managed Kubernetes](https://upcloud.com/products/managed-kubernetes) cluster.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as upcloud from "@upcloud/pulumi-upcloud";
12
+ *
13
+ * // Create a network for the Kubernetes cluster
14
+ * const exampleNetwork = new upcloud.Network("exampleNetwork", {
15
+ * zone: "de-fra1",
16
+ * ipNetwork: {
17
+ * address: "172.16.1.0/24",
18
+ * dhcp: true,
19
+ * family: "IPv4",
20
+ * },
21
+ * });
22
+ * // Create a Kubernetes cluster
23
+ * const exampleKubernetesCluster = new upcloud.KubernetesCluster("exampleKubernetesCluster", {
24
+ * controlPlaneIpFilters: ["0.0.0.0/0"],
25
+ * network: exampleNetwork.id,
26
+ * zone: "de-fra1",
27
+ * });
28
+ * // Create a Kubernetes cluster node group
29
+ * const group = new upcloud.KubernetesNodeGroup("group", {
30
+ * cluster: resource.upcloud_kubernetes_cluster.example.id,
31
+ * nodeCount: 2,
32
+ * plan: "2xCPU-4GB",
33
+ * labels: {
34
+ * managedBy: "terraform",
35
+ * },
36
+ * taints: [{
37
+ * effect: "NoExecute",
38
+ * key: "taintKey",
39
+ * value: "taintValue",
40
+ * }],
41
+ * });
42
+ * ```
43
+ */
44
+ export declare class KubernetesNodeGroup extends pulumi.CustomResource {
45
+ /**
46
+ * Get an existing KubernetesNodeGroup 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 state Any extra arguments used during the lookup.
52
+ * @param opts Optional settings to control the behavior of the CustomResource.
53
+ */
54
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: KubernetesNodeGroupState, opts?: pulumi.CustomResourceOptions): KubernetesNodeGroup;
55
+ /**
56
+ * Returns true if the given object is an instance of KubernetesNodeGroup. This is designed to work even
57
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
58
+ */
59
+ static isInstance(obj: any): obj is KubernetesNodeGroup;
60
+ /**
61
+ * If set to true, nodes in this group will be placed on separate compute hosts. Please note that anti-affinity policy is
62
+ * considered 'best effort' and enabling it does not fully guarantee that the nodes will end up on different hardware.
63
+ */
64
+ readonly antiAffinity: pulumi.Output<boolean>;
65
+ /**
66
+ * UUID of the cluster.
67
+ */
68
+ readonly cluster: pulumi.Output<string>;
69
+ /**
70
+ * Resource properties for custom plan
71
+ */
72
+ readonly customPlan: pulumi.Output<outputs.KubernetesNodeGroupCustomPlan | undefined>;
73
+ /**
74
+ * Additional arguments for kubelet for the nodes in this group. WARNING - those arguments will be passed directly to
75
+ * kubelet CLI on each worker node without any validation. Passing invalid arguments can break your whole cluster. Be extra
76
+ * careful when adding kubelet args.
77
+ */
78
+ readonly kubeletArgs: pulumi.Output<outputs.KubernetesNodeGroupKubeletArg[] | undefined>;
79
+ /**
80
+ * User defined key-value pairs to classify the node_group.
81
+ */
82
+ readonly labels: pulumi.Output<{
83
+ [key: string]: string;
84
+ }>;
85
+ /**
86
+ * The name of the node group. Needs to be unique within a cluster.
87
+ */
88
+ readonly name: pulumi.Output<string>;
89
+ /**
90
+ * Amount of nodes to provision in the node group.
91
+ */
92
+ readonly nodeCount: pulumi.Output<number>;
93
+ /**
94
+ * The server plan used for the node group. You can list available plans with `upctl server plans`
95
+ */
96
+ readonly plan: pulumi.Output<string>;
97
+ /**
98
+ * You can optionally select SSH keys to be added as authorized keys to the nodes in this node group. This allows you to
99
+ * connect to the nodes via SSH once they are running.
100
+ */
101
+ readonly sshKeys: pulumi.Output<string[]>;
102
+ /**
103
+ * The storage encryption strategy to use for the nodes in this group. If not set, the cluster's storage encryption
104
+ * strategy will be used, if applicable.
105
+ */
106
+ readonly storageEncryption: pulumi.Output<string>;
107
+ /**
108
+ * Taints for the nodes in this group.
109
+ */
110
+ readonly taints: pulumi.Output<outputs.KubernetesNodeGroupTaint[] | undefined>;
111
+ /**
112
+ * If set to false, nodes in this group will not have access to utility network.
113
+ */
114
+ readonly utilityNetworkAccess: pulumi.Output<boolean>;
115
+ /**
116
+ * Create a KubernetesNodeGroup resource with the given unique name, arguments, and options.
117
+ *
118
+ * @param name The _unique_ name of the resource.
119
+ * @param args The arguments to use to populate this resource's properties.
120
+ * @param opts A bag of options that control this resource's behavior.
121
+ */
122
+ constructor(name: string, args: KubernetesNodeGroupArgs, opts?: pulumi.CustomResourceOptions);
123
+ }
124
+ /**
125
+ * Input properties used for looking up and filtering KubernetesNodeGroup resources.
126
+ */
127
+ export interface KubernetesNodeGroupState {
128
+ /**
129
+ * If set to true, nodes in this group will be placed on separate compute hosts. Please note that anti-affinity policy is
130
+ * considered 'best effort' and enabling it does not fully guarantee that the nodes will end up on different hardware.
131
+ */
132
+ antiAffinity?: pulumi.Input<boolean>;
133
+ /**
134
+ * UUID of the cluster.
135
+ */
136
+ cluster?: pulumi.Input<string>;
137
+ /**
138
+ * Resource properties for custom plan
139
+ */
140
+ customPlan?: pulumi.Input<inputs.KubernetesNodeGroupCustomPlan>;
141
+ /**
142
+ * Additional arguments for kubelet for the nodes in this group. WARNING - those arguments will be passed directly to
143
+ * kubelet CLI on each worker node without any validation. Passing invalid arguments can break your whole cluster. Be extra
144
+ * careful when adding kubelet args.
145
+ */
146
+ kubeletArgs?: pulumi.Input<pulumi.Input<inputs.KubernetesNodeGroupKubeletArg>[]>;
147
+ /**
148
+ * User defined key-value pairs to classify the node_group.
149
+ */
150
+ labels?: pulumi.Input<{
151
+ [key: string]: pulumi.Input<string>;
152
+ }>;
153
+ /**
154
+ * The name of the node group. Needs to be unique within a cluster.
155
+ */
156
+ name?: pulumi.Input<string>;
157
+ /**
158
+ * Amount of nodes to provision in the node group.
159
+ */
160
+ nodeCount?: pulumi.Input<number>;
161
+ /**
162
+ * The server plan used for the node group. You can list available plans with `upctl server plans`
163
+ */
164
+ plan?: pulumi.Input<string>;
165
+ /**
166
+ * You can optionally select SSH keys to be added as authorized keys to the nodes in this node group. This allows you to
167
+ * connect to the nodes via SSH once they are running.
168
+ */
169
+ sshKeys?: pulumi.Input<pulumi.Input<string>[]>;
170
+ /**
171
+ * The storage encryption strategy to use for the nodes in this group. If not set, the cluster's storage encryption
172
+ * strategy will be used, if applicable.
173
+ */
174
+ storageEncryption?: pulumi.Input<string>;
175
+ /**
176
+ * Taints for the nodes in this group.
177
+ */
178
+ taints?: pulumi.Input<pulumi.Input<inputs.KubernetesNodeGroupTaint>[]>;
179
+ /**
180
+ * If set to false, nodes in this group will not have access to utility network.
181
+ */
182
+ utilityNetworkAccess?: pulumi.Input<boolean>;
183
+ }
184
+ /**
185
+ * The set of arguments for constructing a KubernetesNodeGroup resource.
186
+ */
187
+ export interface KubernetesNodeGroupArgs {
188
+ /**
189
+ * If set to true, nodes in this group will be placed on separate compute hosts. Please note that anti-affinity policy is
190
+ * considered 'best effort' and enabling it does not fully guarantee that the nodes will end up on different hardware.
191
+ */
192
+ antiAffinity?: pulumi.Input<boolean>;
193
+ /**
194
+ * UUID of the cluster.
195
+ */
196
+ cluster: pulumi.Input<string>;
197
+ /**
198
+ * Resource properties for custom plan
199
+ */
200
+ customPlan?: pulumi.Input<inputs.KubernetesNodeGroupCustomPlan>;
201
+ /**
202
+ * Additional arguments for kubelet for the nodes in this group. WARNING - those arguments will be passed directly to
203
+ * kubelet CLI on each worker node without any validation. Passing invalid arguments can break your whole cluster. Be extra
204
+ * careful when adding kubelet args.
205
+ */
206
+ kubeletArgs?: pulumi.Input<pulumi.Input<inputs.KubernetesNodeGroupKubeletArg>[]>;
207
+ /**
208
+ * User defined key-value pairs to classify the node_group.
209
+ */
210
+ labels?: pulumi.Input<{
211
+ [key: string]: pulumi.Input<string>;
212
+ }>;
213
+ /**
214
+ * The name of the node group. Needs to be unique within a cluster.
215
+ */
216
+ name?: pulumi.Input<string>;
217
+ /**
218
+ * Amount of nodes to provision in the node group.
219
+ */
220
+ nodeCount: pulumi.Input<number>;
221
+ /**
222
+ * The server plan used for the node group. You can list available plans with `upctl server plans`
223
+ */
224
+ plan: pulumi.Input<string>;
225
+ /**
226
+ * You can optionally select SSH keys to be added as authorized keys to the nodes in this node group. This allows you to
227
+ * connect to the nodes via SSH once they are running.
228
+ */
229
+ sshKeys?: pulumi.Input<pulumi.Input<string>[]>;
230
+ /**
231
+ * The storage encryption strategy to use for the nodes in this group. If not set, the cluster's storage encryption
232
+ * strategy will be used, if applicable.
233
+ */
234
+ storageEncryption?: pulumi.Input<string>;
235
+ /**
236
+ * Taints for the nodes in this group.
237
+ */
238
+ taints?: pulumi.Input<pulumi.Input<inputs.KubernetesNodeGroupTaint>[]>;
239
+ /**
240
+ * If set to false, nodes in this group will not have access to utility network.
241
+ */
242
+ utilityNetworkAccess?: pulumi.Input<boolean>;
243
+ }