@pulumi/ec 0.5.2-alpha.1691409334 → 0.6.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.
Files changed (45) hide show
  1. package/deployment.d.ts +75 -293
  2. package/deployment.js +10 -167
  3. package/deployment.js.map +1 -1
  4. package/deploymentElasticsearchKeystore.d.ts +27 -24
  5. package/deploymentElasticsearchKeystore.js +17 -14
  6. package/deploymentElasticsearchKeystore.js.map +1 -1
  7. package/deploymentExtension.d.ts +31 -88
  8. package/deploymentExtension.js +5 -62
  9. package/deploymentExtension.js.map +1 -1
  10. package/deploymentTrafficFilter.d.ts +41 -30
  11. package/deploymentTrafficFilter.js +20 -12
  12. package/deploymentTrafficFilter.js.map +1 -1
  13. package/deploymentTrafficFilterAssociation.d.ts +7 -7
  14. package/deploymentTrafficFilterAssociation.js +1 -1
  15. package/getAwsPrivatelinkEndpoint.d.ts +7 -8
  16. package/getAwsPrivatelinkEndpoint.js +4 -8
  17. package/getAwsPrivatelinkEndpoint.js.map +1 -1
  18. package/getAzurePrivatelinkEndpoint.d.ts +3 -4
  19. package/getAzurePrivatelinkEndpoint.js +0 -4
  20. package/getAzurePrivatelinkEndpoint.js.map +1 -1
  21. package/getDeployment.d.ts +5 -83
  22. package/getDeployment.js.map +1 -1
  23. package/getDeployments.d.ts +75 -85
  24. package/getDeployments.js +21 -21
  25. package/getDeployments.js.map +1 -1
  26. package/getGcpPrivateServiceConnectEndpoint.d.ts +5 -6
  27. package/getGcpPrivateServiceConnectEndpoint.js +0 -4
  28. package/getGcpPrivateServiceConnectEndpoint.js.map +1 -1
  29. package/getStack.d.ts +23 -32
  30. package/getStack.js +4 -0
  31. package/getStack.js.map +1 -1
  32. package/getTrafficFilter.d.ts +99 -0
  33. package/getTrafficFilter.js +62 -0
  34. package/getTrafficFilter.js.map +1 -0
  35. package/index.d.ts +6 -0
  36. package/index.js +9 -1
  37. package/index.js.map +1 -1
  38. package/package.json +2 -2
  39. package/provider.js +1 -1
  40. package/provider.js.map +1 -1
  41. package/snapshotRepository.d.ts +87 -0
  42. package/snapshotRepository.js +66 -0
  43. package/snapshotRepository.js.map +1 -0
  44. package/types/input.d.ts +317 -353
  45. package/types/output.d.ts +586 -384
package/types/input.d.ts CHANGED
@@ -2,617 +2,581 @@ import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "../types/input";
3
3
  export interface DeploymentApm {
4
4
  /**
5
- * APM settings applied to all topologies unless overridden in the `topology` element.
5
+ * Optionally define the Apm configuration options for the APM Server
6
6
  */
7
7
  config?: pulumi.Input<inputs.DeploymentApmConfig>;
8
- /**
9
- * This field references the `refId` of the deployment Elasticsearch cluster. The default value `main-elasticsearch` is recommended.
10
- */
11
8
  elasticsearchClusterRefId?: pulumi.Input<string>;
12
9
  httpEndpoint?: pulumi.Input<string>;
13
10
  httpsEndpoint?: pulumi.Input<string>;
14
- /**
15
- * Can be set on the APM resource. The default value `main-apm` is recommended.
16
- */
11
+ instanceConfigurationId?: pulumi.Input<string>;
17
12
  refId?: pulumi.Input<string>;
18
13
  /**
19
- * Elasticsearch Service (ESS) region where to create the deployment. For Elastic Cloud Enterprise (ECE) installations, set `"ece-region"`.
14
+ * Elasticsearch Service (ESS) region where the deployment should be hosted. For Elastic Cloud Enterprise (ECE) installations, set to `"ece-region".
20
15
  */
21
16
  region?: pulumi.Input<string>;
22
17
  resourceId?: pulumi.Input<string>;
18
+ size?: pulumi.Input<string>;
23
19
  /**
24
- * Can be set multiple times to compose complex topologies.
20
+ * Optional size type, defaults to "memory".
25
21
  */
26
- topology?: pulumi.Input<inputs.DeploymentApmTopology>;
22
+ sizeResource?: pulumi.Input<string>;
23
+ zoneCount?: pulumi.Input<number>;
27
24
  }
28
25
  export interface DeploymentApmConfig {
29
- /**
30
- * Enable debug mode for APM servers. Defaults to `false`.
31
- */
32
26
  debugEnabled?: pulumi.Input<boolean>;
33
27
  dockerImage?: pulumi.Input<string>;
34
- /**
35
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
36
- */
37
28
  userSettingsJson?: pulumi.Input<string>;
38
- /**
39
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
40
- */
41
29
  userSettingsOverrideJson?: pulumi.Input<string>;
42
- /**
43
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
44
- */
45
30
  userSettingsOverrideYaml?: pulumi.Input<string>;
46
- /**
47
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
48
- */
49
31
  userSettingsYaml?: pulumi.Input<string>;
50
32
  }
51
- export interface DeploymentApmTopology {
33
+ export interface DeploymentElasticsearch {
52
34
  /**
53
- * Default instance configuration of the deployment template. To change it, use the [full list](https://www.elastic.co/guide/en/cloud/current/ec-regions-templates-instances.html) of regions and deployment templates available in ESS.
35
+ * Enable or disable autoscaling. Defaults to the setting coming from the deployment template.
54
36
  */
55
- instanceConfigurationId?: pulumi.Input<string>;
37
+ autoscale?: pulumi.Input<boolean>;
38
+ cloudId?: pulumi.Input<string>;
56
39
  /**
57
- * Amount of memory (RAM) per `topology` element in the "<size in GB>g" notation. When omitted, it defaults to the deployment template value.
40
+ * 'cold' topology element
58
41
  */
59
- size?: pulumi.Input<string>;
42
+ cold?: pulumi.Input<inputs.DeploymentElasticsearchCold>;
60
43
  /**
61
- * Type of resource to which the size is assigned. Defaults to `"memory"`.
44
+ * Elasticsearch settings which will be applied to all topologies
62
45
  */
63
- sizeResource?: pulumi.Input<string>;
46
+ config?: pulumi.Input<inputs.DeploymentElasticsearchConfig>;
64
47
  /**
65
- * Number of zones that the Enterprise Search deployment will span. This is used to set HA. When omitted, it defaults to the deployment template value.
48
+ * 'coordinating' topology element
66
49
  */
67
- zoneCount?: pulumi.Input<number>;
68
- }
69
- export interface DeploymentElasticsearch {
50
+ coordinating?: pulumi.Input<inputs.DeploymentElasticsearchCoordinating>;
70
51
  /**
71
- * Enable or disable autoscaling. Defaults to the setting coming from the deployment template. Accepted values are `"true"` or `"false"`.
52
+ * Optional Elasticsearch extensions such as custom bundles or plugins.
72
53
  */
73
- autoscale?: pulumi.Input<string>;
74
- cloudId?: pulumi.Input<string>;
54
+ extensions?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchExtension>[]>;
75
55
  /**
76
- * Elasticsearch settings applied to all topologies unless overridden in the `topology` element.
56
+ * 'frozen' topology element
77
57
  */
78
- config?: pulumi.Input<inputs.DeploymentElasticsearchConfig>;
58
+ frozen?: pulumi.Input<inputs.DeploymentElasticsearchFrozen>;
79
59
  /**
80
- * Custom Elasticsearch bundles or plugins. Can be set multiple times.
60
+ * 'hot' topology element
81
61
  */
82
- extensions?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchExtension>[]>;
62
+ hot: pulumi.Input<inputs.DeploymentElasticsearchHot>;
83
63
  httpEndpoint?: pulumi.Input<string>;
84
64
  httpsEndpoint?: pulumi.Input<string>;
85
65
  /**
86
- * Can be set on the Elasticsearch resource. The default value `main-elasticsearch` is recommended.
66
+ * 'master' topology element
67
+ */
68
+ master?: pulumi.Input<inputs.DeploymentElasticsearchMaster>;
69
+ /**
70
+ * 'ml' topology element
71
+ */
72
+ ml?: pulumi.Input<inputs.DeploymentElasticsearchMl>;
73
+ /**
74
+ * A human readable reference for the Elasticsearch resource. The default value `main-elasticsearch` is recommended.
87
75
  */
88
76
  refId?: pulumi.Input<string>;
89
77
  /**
90
- * Elasticsearch Service (ESS) region where to create the deployment. For Elastic Cloud Enterprise (ECE) installations, set `"ece-region"`.
78
+ * Elasticsearch Service (ESS) region where the deployment should be hosted. For Elastic Cloud Enterprise (ECE) installations, set to `"ece-region".
91
79
  */
92
80
  region?: pulumi.Input<string>;
93
81
  /**
94
- * Elasticsearch remote clusters to configure for the Elasticsearch resource. Can be set multiple times.
82
+ * Optional Elasticsearch remote clusters to configure for the Elasticsearch resource, can be set multiple times
95
83
  */
96
84
  remoteClusters?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchRemoteCluster>[]>;
97
85
  resourceId?: pulumi.Input<string>;
98
86
  /**
99
- * Restores data from a snapshot of another deployment.
87
+ * (ECE only) Snapshot configuration settings for an Elasticsearch cluster.
100
88
  */
89
+ snapshot?: pulumi.Input<inputs.DeploymentElasticsearchSnapshot>;
101
90
  snapshotSource?: pulumi.Input<inputs.DeploymentElasticsearchSnapshotSource>;
102
- /**
103
- * Choose the configuration strategy used to apply the changes.
104
- */
105
- strategy?: pulumi.Input<inputs.DeploymentElasticsearchStrategy>;
106
- /**
107
- * Can be set multiple times to compose complex topologies.
108
- */
109
- topologies?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchTopology>[]>;
110
- /**
111
- * The trust relationships with other ESS accounts.
112
- */
91
+ strategy?: pulumi.Input<string>;
113
92
  trustAccounts?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchTrustAccount>[]>;
114
- /**
115
- * The trust relationship with external entities (remote environments, remote accounts...).
116
- */
117
93
  trustExternals?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchTrustExternal>[]>;
94
+ warm?: pulumi.Input<inputs.DeploymentElasticsearchWarm>;
95
+ }
96
+ export interface DeploymentElasticsearchCold {
97
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchColdAutoscaling>;
98
+ instanceConfigurationId?: pulumi.Input<string>;
99
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
100
+ nodeTypeData?: pulumi.Input<string>;
101
+ nodeTypeIngest?: pulumi.Input<string>;
102
+ nodeTypeMaster?: pulumi.Input<string>;
103
+ nodeTypeMl?: pulumi.Input<string>;
104
+ size?: pulumi.Input<string>;
105
+ sizeResource?: pulumi.Input<string>;
106
+ zoneCount?: pulumi.Input<number>;
107
+ }
108
+ export interface DeploymentElasticsearchColdAutoscaling {
109
+ maxSize?: pulumi.Input<string>;
110
+ maxSizeResource?: pulumi.Input<string>;
111
+ minSize?: pulumi.Input<string>;
112
+ minSizeResource?: pulumi.Input<string>;
113
+ policyOverrideJson?: pulumi.Input<string>;
118
114
  }
119
115
  export interface DeploymentElasticsearchConfig {
120
116
  dockerImage?: pulumi.Input<string>;
121
- /**
122
- * List of Elasticsearch supported plugins. Check the Stack Pack version to see which plugins are supported for each version. This is currently only available from the UI and [ecctl](https://www.elastic.co/guide/en/ecctl/master/ecctl_stack_list.html).
123
- */
124
117
  plugins?: pulumi.Input<pulumi.Input<string>[]>;
125
- /**
126
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
127
- */
128
118
  userSettingsJson?: pulumi.Input<string>;
129
- /**
130
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
131
- */
132
119
  userSettingsOverrideJson?: pulumi.Input<string>;
133
- /**
134
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
135
- */
136
120
  userSettingsOverrideYaml?: pulumi.Input<string>;
137
- /**
138
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
139
- */
140
121
  userSettingsYaml?: pulumi.Input<string>;
141
122
  }
123
+ export interface DeploymentElasticsearchCoordinating {
124
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchCoordinatingAutoscaling>;
125
+ instanceConfigurationId?: pulumi.Input<string>;
126
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
127
+ nodeTypeData?: pulumi.Input<string>;
128
+ nodeTypeIngest?: pulumi.Input<string>;
129
+ nodeTypeMaster?: pulumi.Input<string>;
130
+ nodeTypeMl?: pulumi.Input<string>;
131
+ size?: pulumi.Input<string>;
132
+ sizeResource?: pulumi.Input<string>;
133
+ zoneCount?: pulumi.Input<number>;
134
+ }
135
+ export interface DeploymentElasticsearchCoordinatingAutoscaling {
136
+ maxSize?: pulumi.Input<string>;
137
+ maxSizeResource?: pulumi.Input<string>;
138
+ minSize?: pulumi.Input<string>;
139
+ minSizeResource?: pulumi.Input<string>;
140
+ policyOverrideJson?: pulumi.Input<string>;
141
+ }
142
142
  export interface DeploymentElasticsearchExtension {
143
- /**
144
- * Extension name.
145
- */
146
143
  name: pulumi.Input<string>;
147
- /**
148
- * Extension type, only `bundle` or `plugin` are supported.
149
- */
150
144
  type: pulumi.Input<string>;
151
- /**
152
- * Bundle or plugin URL, the extension URL can be obtained from the `ec_deployment_extension.<name>.url` attribute or the API and cannot be a random HTTP address that is hosted elsewhere.
153
- */
154
145
  url: pulumi.Input<string>;
155
146
  /**
156
- * Elasticsearch compatibility version. Bundles should specify major or minor versions with wildcards, such as `7.*` or `*` but **plugins must use full version notation down to the patch level**, such as `7.10.1` and wildcards are not allowed.
147
+ * Elastic Stack version to use for all of the deployment resources.
157
148
  */
158
149
  version: pulumi.Input<string>;
159
150
  }
160
- export interface DeploymentElasticsearchRemoteCluster {
161
- /**
162
- * Alias for the Cross Cluster Search binding.
163
- */
164
- alias: pulumi.Input<string>;
165
- /**
166
- * Remote deployment ID.
167
- */
168
- deploymentId: pulumi.Input<string>;
169
- /**
170
- * Remote Elasticsearch `refId`. The default value `main-elasticsearch` is recommended.
171
- */
172
- refId?: pulumi.Input<string>;
173
- /**
174
- * If true, skip the cluster during search when disconnected. Defaults to `false`.
175
- */
176
- skipUnavailable?: pulumi.Input<boolean>;
151
+ export interface DeploymentElasticsearchFrozen {
152
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchFrozenAutoscaling>;
153
+ instanceConfigurationId?: pulumi.Input<string>;
154
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
155
+ nodeTypeData?: pulumi.Input<string>;
156
+ nodeTypeIngest?: pulumi.Input<string>;
157
+ nodeTypeMaster?: pulumi.Input<string>;
158
+ nodeTypeMl?: pulumi.Input<string>;
159
+ size?: pulumi.Input<string>;
160
+ sizeResource?: pulumi.Input<string>;
161
+ zoneCount?: pulumi.Input<number>;
177
162
  }
178
- export interface DeploymentElasticsearchSnapshotSource {
179
- /**
180
- * Name of the snapshot to restore. Use `__latest_success__` to get the most recent successful snapshot (Defaults to `__latest_success__`).
181
- */
182
- snapshotName?: pulumi.Input<string>;
183
- /**
184
- * ID of the Elasticsearch cluster, not to be confused with the deployment ID, that will be used as the source of the snapshot. The Elasticsearch cluster must be in the same region and must have a compatible version of the Elastic Stack.
185
- */
186
- sourceElasticsearchClusterId: pulumi.Input<string>;
163
+ export interface DeploymentElasticsearchFrozenAutoscaling {
164
+ maxSize?: pulumi.Input<string>;
165
+ maxSizeResource?: pulumi.Input<string>;
166
+ minSize?: pulumi.Input<string>;
167
+ minSizeResource?: pulumi.Input<string>;
168
+ policyOverrideJson?: pulumi.Input<string>;
187
169
  }
188
- export interface DeploymentElasticsearchStrategy {
189
- /**
190
- * Set the type of configuration strategy [autodetect, grow_and_shrink, rolling_grow_and_shrink, rollingAll].
191
- */
192
- type: pulumi.Input<string>;
170
+ export interface DeploymentElasticsearchHot {
171
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchHotAutoscaling>;
172
+ instanceConfigurationId?: pulumi.Input<string>;
173
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
174
+ nodeTypeData?: pulumi.Input<string>;
175
+ nodeTypeIngest?: pulumi.Input<string>;
176
+ nodeTypeMaster?: pulumi.Input<string>;
177
+ nodeTypeMl?: pulumi.Input<string>;
178
+ size?: pulumi.Input<string>;
179
+ sizeResource?: pulumi.Input<string>;
180
+ zoneCount?: pulumi.Input<number>;
193
181
  }
194
- export interface DeploymentElasticsearchTopology {
195
- /**
196
- * Autoscaling policy defining the maximum and / or minimum total size for this topology element. For more information refer to the `autoscaling` block.
197
- */
198
- autoscaling?: pulumi.Input<inputs.DeploymentElasticsearchTopologyAutoscaling>;
199
- /**
200
- * Elasticsearch settings applied to all topologies unless overridden in the `topology` element.
201
- */
202
- configs?: pulumi.Input<pulumi.Input<inputs.DeploymentElasticsearchTopologyConfig>[]>;
203
- /**
204
- * Unique topology identifier. It generally refers to an Elasticsearch data tier, such as `hotContent`, `warm`, `cold`, `coordinating`, `frozen`, `ml` or `master`.
205
- */
206
- id: pulumi.Input<string>;
207
- /**
208
- * Default instance configuration of the deployment template. To change it, use the [full list](https://www.elastic.co/guide/en/cloud/current/ec-regions-templates-instances.html) of regions and deployment templates available in ESS.
209
- */
182
+ export interface DeploymentElasticsearchHotAutoscaling {
183
+ maxSize?: pulumi.Input<string>;
184
+ maxSizeResource?: pulumi.Input<string>;
185
+ minSize?: pulumi.Input<string>;
186
+ minSizeResource?: pulumi.Input<string>;
187
+ policyOverrideJson?: pulumi.Input<string>;
188
+ }
189
+ export interface DeploymentElasticsearchMaster {
190
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchMasterAutoscaling>;
210
191
  instanceConfigurationId?: pulumi.Input<string>;
211
192
  nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
212
- /**
213
- * The node type for the Elasticsearch cluster (data node).
214
- */
215
193
  nodeTypeData?: pulumi.Input<string>;
216
- /**
217
- * The node type for the Elasticsearch cluster (ingest node).
218
- */
219
194
  nodeTypeIngest?: pulumi.Input<string>;
220
- /**
221
- * The node type for the Elasticsearch cluster (master node).
222
- */
223
195
  nodeTypeMaster?: pulumi.Input<string>;
224
- /**
225
- * The node type for the Elasticsearch cluster (machine learning node).
226
- */
227
196
  nodeTypeMl?: pulumi.Input<string>;
228
- /**
229
- * Amount of memory (RAM) per `topology` element in the "<size in GB>g" notation. When omitted, it defaults to the deployment template value.
230
- */
231
197
  size?: pulumi.Input<string>;
232
- /**
233
- * Type of resource to which the size is assigned. Defaults to `"memory"`.
234
- */
235
198
  sizeResource?: pulumi.Input<string>;
236
- /**
237
- * Number of zones that the Enterprise Search deployment will span. This is used to set HA. When omitted, it defaults to the deployment template value.
238
- */
239
199
  zoneCount?: pulumi.Input<number>;
240
200
  }
241
- export interface DeploymentElasticsearchTopologyAutoscaling {
242
- /**
243
- * Defines the maximum size the deployment will scale up to. When set, scaling up will be enabled. All tiers should support this option.
244
- */
201
+ export interface DeploymentElasticsearchMasterAutoscaling {
245
202
  maxSize?: pulumi.Input<string>;
246
- /**
247
- * Defines the resource type the scale up will use (Defaults to `"memory"`).
248
- */
249
203
  maxSizeResource?: pulumi.Input<string>;
250
- /**
251
- * Defines the minimum size the deployment will scale down to. When set, scale down will be enabled, please note that not all the tiers support this option.
252
- */
253
204
  minSize?: pulumi.Input<string>;
254
- /**
255
- * Defines the resource type the scale down will use (Defaults to `"memory"`).
256
- */
257
205
  minSizeResource?: pulumi.Input<string>;
258
206
  policyOverrideJson?: pulumi.Input<string>;
259
207
  }
260
- export interface DeploymentElasticsearchTopologyConfig {
261
- /**
262
- * List of Elasticsearch supported plugins. Check the Stack Pack version to see which plugins are supported for each version. This is currently only available from the UI and [ecctl](https://www.elastic.co/guide/en/ecctl/master/ecctl_stack_list.html).
263
- */
264
- plugins?: pulumi.Input<pulumi.Input<string>[]>;
265
- /**
266
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
267
- */
268
- userSettingsJson?: pulumi.Input<string>;
269
- /**
270
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
271
- */
272
- userSettingsOverrideJson?: pulumi.Input<string>;
273
- /**
274
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
275
- */
276
- userSettingsOverrideYaml?: pulumi.Input<string>;
277
- /**
278
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
279
- */
280
- userSettingsYaml?: pulumi.Input<string>;
208
+ export interface DeploymentElasticsearchMl {
209
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchMlAutoscaling>;
210
+ instanceConfigurationId?: pulumi.Input<string>;
211
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
212
+ nodeTypeData?: pulumi.Input<string>;
213
+ nodeTypeIngest?: pulumi.Input<string>;
214
+ nodeTypeMaster?: pulumi.Input<string>;
215
+ nodeTypeMl?: pulumi.Input<string>;
216
+ size?: pulumi.Input<string>;
217
+ sizeResource?: pulumi.Input<string>;
218
+ zoneCount?: pulumi.Input<number>;
219
+ }
220
+ export interface DeploymentElasticsearchMlAutoscaling {
221
+ maxSize?: pulumi.Input<string>;
222
+ maxSizeResource?: pulumi.Input<string>;
223
+ minSize?: pulumi.Input<string>;
224
+ minSizeResource?: pulumi.Input<string>;
225
+ policyOverrideJson?: pulumi.Input<string>;
226
+ }
227
+ export interface DeploymentElasticsearchRemoteCluster {
228
+ alias: pulumi.Input<string>;
229
+ deploymentId: pulumi.Input<string>;
230
+ refId?: pulumi.Input<string>;
231
+ skipUnavailable?: pulumi.Input<boolean>;
232
+ }
233
+ export interface DeploymentElasticsearchSnapshot {
234
+ enabled: pulumi.Input<boolean>;
235
+ repository?: pulumi.Input<inputs.DeploymentElasticsearchSnapshotRepository>;
236
+ }
237
+ export interface DeploymentElasticsearchSnapshotRepository {
238
+ reference?: pulumi.Input<inputs.DeploymentElasticsearchSnapshotRepositoryReference>;
239
+ }
240
+ export interface DeploymentElasticsearchSnapshotRepositoryReference {
241
+ repositoryName: pulumi.Input<string>;
242
+ }
243
+ export interface DeploymentElasticsearchSnapshotSource {
244
+ snapshotName?: pulumi.Input<string>;
245
+ sourceElasticsearchClusterId: pulumi.Input<string>;
281
246
  }
282
247
  export interface DeploymentElasticsearchTrustAccount {
283
- /**
284
- * The account identifier to establish the new trust with.
285
- */
286
248
  accountId: pulumi.Input<string>;
287
- /**
288
- * If true, all clusters in this account will by default be trusted and the `trustAllowlist` is ignored.
289
- */
290
249
  trustAll: pulumi.Input<boolean>;
291
- /**
292
- * The list of clusters to trust. Only used when `trustAll` is `false`.
293
- */
294
250
  trustAllowlists?: pulumi.Input<pulumi.Input<string>[]>;
295
251
  }
296
252
  export interface DeploymentElasticsearchTrustExternal {
297
- /**
298
- * Identifier of the the trust relationship with external entities (remote environments, remote accounts...).
299
- */
300
253
  relationshipId: pulumi.Input<string>;
301
- /**
302
- * If true, all clusters in this external entity will be trusted and the `trustAllowlist` is ignored.
303
- */
304
254
  trustAll: pulumi.Input<boolean>;
305
- /**
306
- * The list of clusters to trust. Only used when `trustAll` is `false`.
307
- */
308
255
  trustAllowlists?: pulumi.Input<pulumi.Input<string>[]>;
309
256
  }
257
+ export interface DeploymentElasticsearchWarm {
258
+ autoscaling: pulumi.Input<inputs.DeploymentElasticsearchWarmAutoscaling>;
259
+ instanceConfigurationId?: pulumi.Input<string>;
260
+ nodeRoles?: pulumi.Input<pulumi.Input<string>[]>;
261
+ nodeTypeData?: pulumi.Input<string>;
262
+ nodeTypeIngest?: pulumi.Input<string>;
263
+ nodeTypeMaster?: pulumi.Input<string>;
264
+ nodeTypeMl?: pulumi.Input<string>;
265
+ size?: pulumi.Input<string>;
266
+ sizeResource?: pulumi.Input<string>;
267
+ zoneCount?: pulumi.Input<number>;
268
+ }
269
+ export interface DeploymentElasticsearchWarmAutoscaling {
270
+ maxSize?: pulumi.Input<string>;
271
+ maxSizeResource?: pulumi.Input<string>;
272
+ minSize?: pulumi.Input<string>;
273
+ minSizeResource?: pulumi.Input<string>;
274
+ policyOverrideJson?: pulumi.Input<string>;
275
+ }
310
276
  export interface DeploymentEnterpriseSearch {
311
277
  /**
312
- * Enterprise Search settings applied to all topologies unless overridden in the `topology` element.
278
+ * Optionally define the Enterprise Search configuration options for the Enterprise Search Server
313
279
  */
314
280
  config?: pulumi.Input<inputs.DeploymentEnterpriseSearchConfig>;
315
- /**
316
- * This field references the `refId` of the deployment Elasticsearch cluster. The default value `main-elasticsearch` is recommended.
317
- */
318
281
  elasticsearchClusterRefId?: pulumi.Input<string>;
319
282
  httpEndpoint?: pulumi.Input<string>;
320
283
  httpsEndpoint?: pulumi.Input<string>;
321
- /**
322
- * Can be set on the Enterprise Search resource. The default value `main-enterprise_search` is recommended.
323
- */
284
+ instanceConfigurationId?: pulumi.Input<string>;
285
+ nodeTypeAppserver?: pulumi.Input<boolean>;
286
+ nodeTypeConnector?: pulumi.Input<boolean>;
287
+ nodeTypeWorker?: pulumi.Input<boolean>;
324
288
  refId?: pulumi.Input<string>;
325
289
  /**
326
- * Elasticsearch Service (ESS) region where to create the deployment. For Elastic Cloud Enterprise (ECE) installations, set `"ece-region"`.
290
+ * Elasticsearch Service (ESS) region where the deployment should be hosted. For Elastic Cloud Enterprise (ECE) installations, set to `"ece-region".
327
291
  */
328
292
  region?: pulumi.Input<string>;
329
293
  resourceId?: pulumi.Input<string>;
294
+ size?: pulumi.Input<string>;
330
295
  /**
331
- * Can be set multiple times to compose complex topologies.
296
+ * Optional size type, defaults to "memory".
332
297
  */
333
- topology?: pulumi.Input<inputs.DeploymentEnterpriseSearchTopology>;
298
+ sizeResource?: pulumi.Input<string>;
299
+ zoneCount?: pulumi.Input<number>;
334
300
  }
335
301
  export interface DeploymentEnterpriseSearchConfig {
336
302
  dockerImage?: pulumi.Input<string>;
337
- /**
338
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
339
- */
340
303
  userSettingsJson?: pulumi.Input<string>;
341
- /**
342
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
343
- */
344
304
  userSettingsOverrideJson?: pulumi.Input<string>;
345
- /**
346
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
347
- */
348
305
  userSettingsOverrideYaml?: pulumi.Input<string>;
349
- /**
350
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
351
- */
352
306
  userSettingsYaml?: pulumi.Input<string>;
353
307
  }
354
- export interface DeploymentEnterpriseSearchTopology {
355
- /**
356
- * Default instance configuration of the deployment template. To change it, use the [full list](https://www.elastic.co/guide/en/cloud/current/ec-regions-templates-instances.html) of regions and deployment templates available in ESS.
357
- */
358
- instanceConfigurationId?: pulumi.Input<string>;
359
- nodeTypeAppserver?: pulumi.Input<boolean>;
360
- nodeTypeConnector?: pulumi.Input<boolean>;
361
- nodeTypeWorker?: pulumi.Input<boolean>;
362
- /**
363
- * Amount of memory (RAM) per `topology` element in the "<size in GB>g" notation. When omitted, it defaults to the deployment template value.
364
- */
365
- size?: pulumi.Input<string>;
366
- /**
367
- * Type of resource to which the size is assigned. Defaults to `"memory"`.
368
- */
369
- sizeResource?: pulumi.Input<string>;
370
- /**
371
- * Number of zones that the Enterprise Search deployment will span. This is used to set HA. When omitted, it defaults to the deployment template value.
372
- */
373
- zoneCount?: pulumi.Input<number>;
374
- }
375
308
  export interface DeploymentIntegrationsServer {
376
- apmHttpsEndpoint?: pulumi.Input<string>;
377
309
  /**
378
- * Integrations Server settings applied to all topologies unless overridden in the `topology` element.
310
+ * Optionally define the Integrations Server configuration options for the IntegrationsServer Server
379
311
  */
380
312
  config?: pulumi.Input<inputs.DeploymentIntegrationsServerConfig>;
313
+ elasticsearchClusterRefId?: pulumi.Input<string>;
381
314
  /**
382
- * This field references the `refId` of the deployment Elasticsearch cluster. The default value `main-elasticsearch` is recommended.
315
+ * URLs for the accessing the Fleet and APM API's within this Integrations Server resource.
383
316
  */
384
- elasticsearchClusterRefId?: pulumi.Input<string>;
385
- fleetHttpsEndpoint?: pulumi.Input<string>;
317
+ endpoints?: pulumi.Input<inputs.DeploymentIntegrationsServerEndpoints>;
386
318
  httpEndpoint?: pulumi.Input<string>;
387
319
  httpsEndpoint?: pulumi.Input<string>;
388
- /**
389
- * Can be set on the Integrations Server resource. The default value `main-integrations_server` is recommended.
390
- */
320
+ instanceConfigurationId?: pulumi.Input<string>;
391
321
  refId?: pulumi.Input<string>;
392
322
  /**
393
- * Elasticsearch Service (ESS) region where to create the deployment. For Elastic Cloud Enterprise (ECE) installations, set `"ece-region"`.
323
+ * Elasticsearch Service (ESS) region where the deployment should be hosted. For Elastic Cloud Enterprise (ECE) installations, set to `"ece-region".
394
324
  */
395
325
  region?: pulumi.Input<string>;
396
326
  resourceId?: pulumi.Input<string>;
327
+ size?: pulumi.Input<string>;
397
328
  /**
398
- * Can be set multiple times to compose complex topologies.
329
+ * Optional size type, defaults to "memory".
399
330
  */
400
- topology?: pulumi.Input<inputs.DeploymentIntegrationsServerTopology>;
331
+ sizeResource?: pulumi.Input<string>;
332
+ zoneCount?: pulumi.Input<number>;
401
333
  }
402
334
  export interface DeploymentIntegrationsServerConfig {
403
- /**
404
- * Enable debug mode for APM servers. Defaults to `false`.
405
- */
406
335
  debugEnabled?: pulumi.Input<boolean>;
407
336
  dockerImage?: pulumi.Input<string>;
408
- /**
409
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
410
- */
411
337
  userSettingsJson?: pulumi.Input<string>;
412
- /**
413
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
414
- */
415
338
  userSettingsOverrideJson?: pulumi.Input<string>;
416
- /**
417
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
418
- */
419
339
  userSettingsOverrideYaml?: pulumi.Input<string>;
420
- /**
421
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
422
- */
423
340
  userSettingsYaml?: pulumi.Input<string>;
424
341
  }
425
- export interface DeploymentIntegrationsServerTopology {
426
- /**
427
- * Default instance configuration of the deployment template. To change it, use the [full list](https://www.elastic.co/guide/en/cloud/current/ec-regions-templates-instances.html) of regions and deployment templates available in ESS.
428
- */
429
- instanceConfigurationId?: pulumi.Input<string>;
430
- /**
431
- * Amount of memory (RAM) per `topology` element in the "<size in GB>g" notation. When omitted, it defaults to the deployment template value.
432
- */
433
- size?: pulumi.Input<string>;
434
- /**
435
- * Type of resource to which the size is assigned. Defaults to `"memory"`.
436
- */
437
- sizeResource?: pulumi.Input<string>;
438
- /**
439
- * Number of zones that the Enterprise Search deployment will span. This is used to set HA. When omitted, it defaults to the deployment template value.
440
- */
441
- zoneCount?: pulumi.Input<number>;
342
+ export interface DeploymentIntegrationsServerEndpoints {
343
+ apm: pulumi.Input<string>;
344
+ fleet: pulumi.Input<string>;
442
345
  }
443
346
  export interface DeploymentKibana {
444
347
  /**
445
- * Kibana settings applied to all topologies unless overridden in the `topology` element.
348
+ * Optionally define the Kibana configuration options for the Kibana Server
446
349
  */
447
350
  config?: pulumi.Input<inputs.DeploymentKibanaConfig>;
448
- /**
449
- * This field references the `refId` of the deployment Elasticsearch cluster. The default value `main-elasticsearch` is recommended.
450
- */
451
351
  elasticsearchClusterRefId?: pulumi.Input<string>;
452
352
  httpEndpoint?: pulumi.Input<string>;
453
353
  httpsEndpoint?: pulumi.Input<string>;
454
- /**
455
- * Can be set on the Kibana resource. The default value `main-kibana` is recommended.
456
- */
354
+ instanceConfigurationId?: pulumi.Input<string>;
457
355
  refId?: pulumi.Input<string>;
458
356
  /**
459
- * Elasticsearch Service (ESS) region where to create the deployment. For Elastic Cloud Enterprise (ECE) installations, set `"ece-region"`.
357
+ * Elasticsearch Service (ESS) region where the deployment should be hosted. For Elastic Cloud Enterprise (ECE) installations, set to `"ece-region".
460
358
  */
461
359
  region?: pulumi.Input<string>;
462
360
  resourceId?: pulumi.Input<string>;
361
+ size?: pulumi.Input<string>;
463
362
  /**
464
- * Can be set multiple times to compose complex topologies.
363
+ * Optional size type, defaults to "memory".
465
364
  */
466
- topology?: pulumi.Input<inputs.DeploymentKibanaTopology>;
365
+ sizeResource?: pulumi.Input<string>;
366
+ zoneCount?: pulumi.Input<number>;
467
367
  }
468
368
  export interface DeploymentKibanaConfig {
469
369
  dockerImage?: pulumi.Input<string>;
470
- /**
471
- * JSON-formatted user level `enterprise_search.yml` setting overrides.
472
- */
473
370
  userSettingsJson?: pulumi.Input<string>;
474
- /**
475
- * JSON-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
476
- */
477
371
  userSettingsOverrideJson?: pulumi.Input<string>;
478
- /**
479
- * YAML-formatted admin (ECE) level `enterprise_search.yml` setting overrides.
480
- */
481
372
  userSettingsOverrideYaml?: pulumi.Input<string>;
482
- /**
483
- * YAML-formatted user level `enterprise_search.yml` setting overrides.
484
- */
485
373
  userSettingsYaml?: pulumi.Input<string>;
486
374
  }
487
- export interface DeploymentKibanaTopology {
488
- /**
489
- * Default instance configuration of the deployment template. To change it, use the [full list](https://www.elastic.co/guide/en/cloud/current/ec-regions-templates-instances.html) of regions and deployment templates available in ESS.
490
- */
491
- instanceConfigurationId?: pulumi.Input<string>;
492
- /**
493
- * Amount of memory (RAM) per `topology` element in the "<size in GB>g" notation. When omitted, it defaults to the deployment template value.
494
- */
495
- size?: pulumi.Input<string>;
496
- /**
497
- * Type of resource to which the size is assigned. Defaults to `"memory"`.
498
- */
499
- sizeResource?: pulumi.Input<string>;
500
- /**
501
- * Number of zones that the Enterprise Search deployment will span. This is used to set HA. When omitted, it defaults to the deployment template value.
502
- */
503
- zoneCount?: pulumi.Input<number>;
504
- }
505
375
  export interface DeploymentObservability {
506
- /**
507
- * Remote deployment ID.
508
- */
509
376
  deploymentId: pulumi.Input<string>;
510
377
  logs?: pulumi.Input<boolean>;
511
378
  metrics?: pulumi.Input<boolean>;
512
- /**
513
- * Can be set on the Elasticsearch resource. The default value `main-elasticsearch` is recommended.
514
- */
515
379
  refId?: pulumi.Input<string>;
516
380
  }
517
381
  export interface DeploymentTrafficFilterRule {
518
382
  /**
519
- * Azure endpoint GUID. Only applicable when the ruleset type is set to `"azurePrivateEndpoint"`.
383
+ * Azure endpoint GUID. Only applicable when the ruleset type is set to `azurePrivateEndpoint`
520
384
  */
521
385
  azureEndpointGuid?: pulumi.Input<string>;
522
386
  /**
523
- * Azure endpoint name. Only applicable when the ruleset type is set to `"azurePrivateEndpoint"`.
387
+ * Azure endpoint name. Only applicable when the ruleset type is set to `azurePrivateEndpoint`
524
388
  */
525
389
  azureEndpointName?: pulumi.Input<string>;
526
390
  /**
527
- * Description of this individual rule.
391
+ * Description of this individual rule
528
392
  */
529
393
  description?: pulumi.Input<string>;
530
394
  /**
531
- * The ruleset ID.
395
+ * Computed rule ID
532
396
  */
533
397
  id?: pulumi.Input<string>;
534
398
  /**
535
- * traffic filter source: IP address, CIDR mask, or VPC endpoint ID, **only required** when the type is not `"azurePrivateEndpoint"`.
399
+ * Traffic filter source: IP address, CIDR mask, or VPC endpoint ID, **only required** when the type is not `azurePrivateEndpoint`
536
400
  */
537
401
  source?: pulumi.Input<string>;
538
402
  }
539
403
  export interface GetDeploymentsApm {
540
404
  /**
541
- * Overall health status of the deployment.
405
+ * Overall health status of the resource instances.
542
406
  */
543
407
  healthy?: string;
408
+ /**
409
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
410
+ */
544
411
  status?: string;
412
+ /**
413
+ * Elastic stack version.
414
+ */
545
415
  version?: string;
546
416
  }
547
417
  export interface GetDeploymentsApmArgs {
548
418
  /**
549
- * Overall health status of the deployment.
419
+ * Overall health status of the resource instances.
550
420
  */
551
421
  healthy?: pulumi.Input<string>;
422
+ /**
423
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
424
+ */
552
425
  status?: pulumi.Input<string>;
426
+ /**
427
+ * Elastic stack version.
428
+ */
553
429
  version?: pulumi.Input<string>;
554
430
  }
555
431
  export interface GetDeploymentsElasticsearch {
556
432
  /**
557
- * Overall health status of the deployment.
433
+ * Overall health status of the resource instances.
558
434
  */
559
435
  healthy?: string;
436
+ /**
437
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
438
+ */
560
439
  status?: string;
440
+ /**
441
+ * Elastic stack version.
442
+ */
561
443
  version?: string;
562
444
  }
563
445
  export interface GetDeploymentsElasticsearchArgs {
564
446
  /**
565
- * Overall health status of the deployment.
447
+ * Overall health status of the resource instances.
566
448
  */
567
449
  healthy?: pulumi.Input<string>;
450
+ /**
451
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
452
+ */
568
453
  status?: pulumi.Input<string>;
454
+ /**
455
+ * Elastic stack version.
456
+ */
569
457
  version?: pulumi.Input<string>;
570
458
  }
571
459
  export interface GetDeploymentsEnterpriseSearch {
572
460
  /**
573
- * Overall health status of the deployment.
461
+ * Overall health status of the resource instances.
574
462
  */
575
463
  healthy?: string;
464
+ /**
465
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
466
+ */
576
467
  status?: string;
468
+ /**
469
+ * Elastic stack version.
470
+ */
577
471
  version?: string;
578
472
  }
579
473
  export interface GetDeploymentsEnterpriseSearchArgs {
580
474
  /**
581
- * Overall health status of the deployment.
475
+ * Overall health status of the resource instances.
582
476
  */
583
477
  healthy?: pulumi.Input<string>;
478
+ /**
479
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
480
+ */
584
481
  status?: pulumi.Input<string>;
482
+ /**
483
+ * Elastic stack version.
484
+ */
585
485
  version?: pulumi.Input<string>;
586
486
  }
587
487
  export interface GetDeploymentsIntegrationsServer {
588
488
  /**
589
- * Overall health status of the deployment.
489
+ * Overall health status of the resource instances.
590
490
  */
591
491
  healthy?: string;
492
+ /**
493
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
494
+ */
592
495
  status?: string;
496
+ /**
497
+ * Elastic stack version.
498
+ */
593
499
  version?: string;
594
500
  }
595
501
  export interface GetDeploymentsIntegrationsServerArgs {
596
502
  /**
597
- * Overall health status of the deployment.
503
+ * Overall health status of the resource instances.
598
504
  */
599
505
  healthy?: pulumi.Input<string>;
506
+ /**
507
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
508
+ */
600
509
  status?: pulumi.Input<string>;
510
+ /**
511
+ * Elastic stack version.
512
+ */
601
513
  version?: pulumi.Input<string>;
602
514
  }
603
515
  export interface GetDeploymentsKibana {
604
516
  /**
605
- * Overall health status of the deployment.
517
+ * Overall health status of the resource instances.
606
518
  */
607
519
  healthy?: string;
520
+ /**
521
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
522
+ */
608
523
  status?: string;
524
+ /**
525
+ * Elastic stack version.
526
+ */
609
527
  version?: string;
610
528
  }
611
529
  export interface GetDeploymentsKibanaArgs {
612
530
  /**
613
- * Overall health status of the deployment.
531
+ * Overall health status of the resource instances.
614
532
  */
615
533
  healthy?: pulumi.Input<string>;
534
+ /**
535
+ * Resource kind status. Can be one of `initializing`, `stopping`, `stopped`, `rebooting`, `restarting`.
536
+ */
616
537
  status?: pulumi.Input<string>;
538
+ /**
539
+ * Elastic stack version.
540
+ */
617
541
  version?: pulumi.Input<string>;
618
542
  }
543
+ export interface SnapshotRepositoryGeneric {
544
+ /**
545
+ * An arbitrary JSON object containing the repository settings.
546
+ */
547
+ settings: pulumi.Input<string>;
548
+ /**
549
+ * Repository type
550
+ */
551
+ type: pulumi.Input<string>;
552
+ }
553
+ export interface SnapshotRepositoryS3 {
554
+ /**
555
+ * An S3 access key. If set, the secretKey setting must also be specified. If unset, the client will use the instance or container role instead.
556
+ */
557
+ accessKey?: pulumi.Input<string>;
558
+ /**
559
+ * Name of the S3 bucket to use for snapshots.
560
+ */
561
+ bucket: pulumi.Input<string>;
562
+ /**
563
+ * The S3 service endpoint to connect to. This defaults to s3.amazonaws.com but the AWS documentation lists alternative S3 endpoints. If you are using an S3-compatible service then you should set this to the service’s endpoint.
564
+ */
565
+ endpoint?: pulumi.Input<string>;
566
+ /**
567
+ * Whether to force the use of the path style access pattern. If true, the path style access pattern will be used. If false, the access pattern will be automatically determined by the AWS Java SDK (See AWS documentation for details). Defaults to false.
568
+ */
569
+ pathStyleAccess?: pulumi.Input<boolean>;
570
+ /**
571
+ * Allows specifying the signing region to use. Specifying this setting manually should not be necessary for most use cases. Generally, the SDK will correctly guess the signing region to use. It should be considered an expert level setting to support S3-compatible APIs that require v4 signatures and use a region other than the default us-east-1. Defaults to empty string which means that the SDK will try to automatically determine the correct signing region.
572
+ */
573
+ region?: pulumi.Input<string>;
574
+ /**
575
+ * An S3 secret key. If set, the accessKey setting must also be specified.
576
+ */
577
+ secretKey?: pulumi.Input<string>;
578
+ /**
579
+ * When set to true files are encrypted on server side using AES256 algorithm. Defaults to false.
580
+ */
581
+ serverSideEncryption?: pulumi.Input<boolean>;
582
+ }