pulumi-spotinst 3.83.0a1720524486__py3-none-any.whl → 3.128.0a1767140134__py3-none-any.whl

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 (77) hide show
  1. pulumi_spotinst/__init__.py +38 -1
  2. pulumi_spotinst/_inputs.py +4082 -846
  3. pulumi_spotinst/_utilities.py +15 -10
  4. pulumi_spotinst/account.py +171 -0
  5. pulumi_spotinst/aws/__init__.py +2 -1
  6. pulumi_spotinst/aws/_inputs.py +7292 -2871
  7. pulumi_spotinst/aws/account.py +25 -19
  8. pulumi_spotinst/aws/beanstalk.py +272 -190
  9. pulumi_spotinst/aws/credentials.py +42 -36
  10. pulumi_spotinst/aws/elastigroup.py +1321 -1176
  11. pulumi_spotinst/aws/managed_instance.py +633 -526
  12. pulumi_spotinst/aws/mr_scalar.py +827 -983
  13. pulumi_spotinst/aws/ocean.py +764 -570
  14. pulumi_spotinst/aws/ocean_extended_resource_definition.py +42 -36
  15. pulumi_spotinst/aws/ocean_launch_spec.py +580 -366
  16. pulumi_spotinst/aws/outputs.py +3421 -2205
  17. pulumi_spotinst/aws/suspension.py +51 -45
  18. pulumi_spotinst/azure/__init__.py +2 -1
  19. pulumi_spotinst/azure/_inputs.py +1492 -434
  20. pulumi_spotinst/azure/ocean_np.py +518 -464
  21. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +479 -408
  22. pulumi_spotinst/azure/outputs.py +840 -345
  23. pulumi_spotinst/config/__init__.py +2 -1
  24. pulumi_spotinst/config/__init__.pyi +7 -2
  25. pulumi_spotinst/config/vars.py +11 -6
  26. pulumi_spotinst/credentials_azure.py +423 -0
  27. pulumi_spotinst/credentials_gcp.py +632 -0
  28. pulumi_spotinst/data_integration.py +58 -52
  29. pulumi_spotinst/ecs/__init__.py +2 -1
  30. pulumi_spotinst/ecs/_inputs.py +1164 -469
  31. pulumi_spotinst/ecs/ocean.py +711 -446
  32. pulumi_spotinst/ecs/ocean_launch_spec.py +367 -341
  33. pulumi_spotinst/ecs/outputs.py +463 -374
  34. pulumi_spotinst/elastigroup_azure_v3.py +985 -197
  35. pulumi_spotinst/gcp/__init__.py +2 -1
  36. pulumi_spotinst/gcp/_inputs.py +1061 -381
  37. pulumi_spotinst/gcp/elastigroup.py +885 -567
  38. pulumi_spotinst/gcp/outputs.py +542 -301
  39. pulumi_spotinst/gke/__init__.py +2 -1
  40. pulumi_spotinst/gke/_inputs.py +2071 -715
  41. pulumi_spotinst/gke/elastigroup.py +558 -382
  42. pulumi_spotinst/gke/ocean_import.py +379 -255
  43. pulumi_spotinst/gke/ocean_launch_spec.py +501 -384
  44. pulumi_spotinst/gke/ocean_launch_spec_import.py +42 -36
  45. pulumi_spotinst/gke/outputs.py +1063 -528
  46. pulumi_spotinst/health_check.py +116 -70
  47. pulumi_spotinst/notification_center.py +344 -0
  48. pulumi_spotinst/ocean_right_sizing_rule.py +515 -95
  49. pulumi_spotinst/oceancd/__init__.py +2 -1
  50. pulumi_spotinst/oceancd/_inputs.py +1709 -651
  51. pulumi_spotinst/oceancd/outputs.py +537 -526
  52. pulumi_spotinst/oceancd/rollout_spec.py +65 -59
  53. pulumi_spotinst/oceancd/strategy.py +37 -31
  54. pulumi_spotinst/oceancd/verification_provider.py +128 -122
  55. pulumi_spotinst/oceancd/verification_template.py +265 -259
  56. pulumi_spotinst/organization/__init__.py +2 -1
  57. pulumi_spotinst/organization/_inputs.py +151 -57
  58. pulumi_spotinst/organization/outputs.py +51 -46
  59. pulumi_spotinst/organization/policy.py +76 -70
  60. pulumi_spotinst/organization/programmatic_user.py +83 -77
  61. pulumi_spotinst/organization/user.py +126 -120
  62. pulumi_spotinst/organization/user_group.py +75 -69
  63. pulumi_spotinst/outputs.py +3005 -832
  64. pulumi_spotinst/provider.py +66 -40
  65. pulumi_spotinst/pulumi-plugin.json +1 -1
  66. pulumi_spotinst/spark/__init__.py +2 -1
  67. pulumi_spotinst/spark/_inputs.py +290 -81
  68. pulumi_spotinst/spark/ocean.py +169 -115
  69. pulumi_spotinst/spark/ocean_virtual_node_group.py +34 -28
  70. pulumi_spotinst/spark/outputs.py +136 -66
  71. pulumi_spotinst/stateful_node_azure.py +820 -784
  72. pulumi_spotinst/subscription.py +93 -87
  73. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/METADATA +7 -6
  74. pulumi_spotinst-3.128.0a1767140134.dist-info/RECORD +77 -0
  75. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/WHEEL +1 -1
  76. pulumi_spotinst-3.83.0a1720524486.dist-info/RECORD +0 -73
  77. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -16,7 +21,7 @@ __all__ = ['RolloutSpecArgs', 'RolloutSpec']
16
21
  @pulumi.input_type
17
22
  class RolloutSpecArgs:
18
23
  def __init__(__self__, *,
19
- rollout_spec_name: pulumi.Input[str],
24
+ rollout_spec_name: pulumi.Input[_builtins.str],
20
25
  strategy: pulumi.Input['RolloutSpecStrategyArgs'],
21
26
  failure_policy: Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']] = None,
22
27
  spot_deployment: Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']] = None,
@@ -24,7 +29,7 @@ class RolloutSpecArgs:
24
29
  traffic: Optional[pulumi.Input['RolloutSpecTrafficArgs']] = None):
25
30
  """
26
31
  The set of arguments for constructing a RolloutSpec resource.
27
- :param pulumi.Input[str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
32
+ :param pulumi.Input[_builtins.str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
28
33
  :param pulumi.Input['RolloutSpecStrategyArgs'] strategy: Determines the Ocean CD strategy
29
34
  :param pulumi.Input['RolloutSpecFailurePolicyArgs'] failure_policy: Holds information on how to react when failure happens.
30
35
  :param pulumi.Input['RolloutSpecSpotDeploymentArgs'] spot_deployment: Represents the SpotDeployment selector.
@@ -42,19 +47,19 @@ class RolloutSpecArgs:
42
47
  if traffic is not None:
43
48
  pulumi.set(__self__, "traffic", traffic)
44
49
 
45
- @property
50
+ @_builtins.property
46
51
  @pulumi.getter(name="rolloutSpecName")
47
- def rollout_spec_name(self) -> pulumi.Input[str]:
52
+ def rollout_spec_name(self) -> pulumi.Input[_builtins.str]:
48
53
  """
49
54
  Identifier name for Ocean CD Rollout Spec. Must be unique
50
55
  """
51
56
  return pulumi.get(self, "rollout_spec_name")
52
57
 
53
58
  @rollout_spec_name.setter
54
- def rollout_spec_name(self, value: pulumi.Input[str]):
59
+ def rollout_spec_name(self, value: pulumi.Input[_builtins.str]):
55
60
  pulumi.set(self, "rollout_spec_name", value)
56
61
 
57
- @property
62
+ @_builtins.property
58
63
  @pulumi.getter
59
64
  def strategy(self) -> pulumi.Input['RolloutSpecStrategyArgs']:
60
65
  """
@@ -66,7 +71,7 @@ class RolloutSpecArgs:
66
71
  def strategy(self, value: pulumi.Input['RolloutSpecStrategyArgs']):
67
72
  pulumi.set(self, "strategy", value)
68
73
 
69
- @property
74
+ @_builtins.property
70
75
  @pulumi.getter(name="failurePolicy")
71
76
  def failure_policy(self) -> Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']]:
72
77
  """
@@ -78,7 +83,7 @@ class RolloutSpecArgs:
78
83
  def failure_policy(self, value: Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']]):
79
84
  pulumi.set(self, "failure_policy", value)
80
85
 
81
- @property
86
+ @_builtins.property
82
87
  @pulumi.getter(name="spotDeployment")
83
88
  def spot_deployment(self) -> Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']]:
84
89
  """
@@ -90,7 +95,7 @@ class RolloutSpecArgs:
90
95
  def spot_deployment(self, value: Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']]):
91
96
  pulumi.set(self, "spot_deployment", value)
92
97
 
93
- @property
98
+ @_builtins.property
94
99
  @pulumi.getter(name="spotDeployments")
95
100
  def spot_deployments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]]]:
96
101
  """
@@ -102,7 +107,7 @@ class RolloutSpecArgs:
102
107
  def spot_deployments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]]]):
103
108
  pulumi.set(self, "spot_deployments", value)
104
109
 
105
- @property
110
+ @_builtins.property
106
111
  @pulumi.getter
107
112
  def traffic(self) -> Optional[pulumi.Input['RolloutSpecTrafficArgs']]:
108
113
  """
@@ -119,7 +124,7 @@ class RolloutSpecArgs:
119
124
  class _RolloutSpecState:
120
125
  def __init__(__self__, *,
121
126
  failure_policy: Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']] = None,
122
- rollout_spec_name: Optional[pulumi.Input[str]] = None,
127
+ rollout_spec_name: Optional[pulumi.Input[_builtins.str]] = None,
123
128
  spot_deployment: Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']] = None,
124
129
  spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]]] = None,
125
130
  strategy: Optional[pulumi.Input['RolloutSpecStrategyArgs']] = None,
@@ -127,7 +132,7 @@ class _RolloutSpecState:
127
132
  """
128
133
  Input properties used for looking up and filtering RolloutSpec resources.
129
134
  :param pulumi.Input['RolloutSpecFailurePolicyArgs'] failure_policy: Holds information on how to react when failure happens.
130
- :param pulumi.Input[str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
135
+ :param pulumi.Input[_builtins.str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
131
136
  :param pulumi.Input['RolloutSpecSpotDeploymentArgs'] spot_deployment: Represents the SpotDeployment selector.
132
137
  :param pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]] spot_deployments: You must specify either `spotDeployment` OR `spotDeployments` but not both. Every SpotDeployment has to be unique. If more than one `SpotDeployment` has been configured, no `traffic` managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
133
138
  :param pulumi.Input['RolloutSpecStrategyArgs'] strategy: Determines the Ocean CD strategy
@@ -146,7 +151,7 @@ class _RolloutSpecState:
146
151
  if traffic is not None:
147
152
  pulumi.set(__self__, "traffic", traffic)
148
153
 
149
- @property
154
+ @_builtins.property
150
155
  @pulumi.getter(name="failurePolicy")
151
156
  def failure_policy(self) -> Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']]:
152
157
  """
@@ -158,19 +163,19 @@ class _RolloutSpecState:
158
163
  def failure_policy(self, value: Optional[pulumi.Input['RolloutSpecFailurePolicyArgs']]):
159
164
  pulumi.set(self, "failure_policy", value)
160
165
 
161
- @property
166
+ @_builtins.property
162
167
  @pulumi.getter(name="rolloutSpecName")
163
- def rollout_spec_name(self) -> Optional[pulumi.Input[str]]:
168
+ def rollout_spec_name(self) -> Optional[pulumi.Input[_builtins.str]]:
164
169
  """
165
170
  Identifier name for Ocean CD Rollout Spec. Must be unique
166
171
  """
167
172
  return pulumi.get(self, "rollout_spec_name")
168
173
 
169
174
  @rollout_spec_name.setter
170
- def rollout_spec_name(self, value: Optional[pulumi.Input[str]]):
175
+ def rollout_spec_name(self, value: Optional[pulumi.Input[_builtins.str]]):
171
176
  pulumi.set(self, "rollout_spec_name", value)
172
177
 
173
- @property
178
+ @_builtins.property
174
179
  @pulumi.getter(name="spotDeployment")
175
180
  def spot_deployment(self) -> Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']]:
176
181
  """
@@ -182,7 +187,7 @@ class _RolloutSpecState:
182
187
  def spot_deployment(self, value: Optional[pulumi.Input['RolloutSpecSpotDeploymentArgs']]):
183
188
  pulumi.set(self, "spot_deployment", value)
184
189
 
185
- @property
190
+ @_builtins.property
186
191
  @pulumi.getter(name="spotDeployments")
187
192
  def spot_deployments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]]]:
188
193
  """
@@ -194,7 +199,7 @@ class _RolloutSpecState:
194
199
  def spot_deployments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RolloutSpecSpotDeploymentArgs']]]]):
195
200
  pulumi.set(self, "spot_deployments", value)
196
201
 
197
- @property
202
+ @_builtins.property
198
203
  @pulumi.getter
199
204
  def strategy(self) -> Optional[pulumi.Input['RolloutSpecStrategyArgs']]:
200
205
  """
@@ -206,7 +211,7 @@ class _RolloutSpecState:
206
211
  def strategy(self, value: Optional[pulumi.Input['RolloutSpecStrategyArgs']]):
207
212
  pulumi.set(self, "strategy", value)
208
213
 
209
- @property
214
+ @_builtins.property
210
215
  @pulumi.getter
211
216
  def traffic(self) -> Optional[pulumi.Input['RolloutSpecTrafficArgs']]:
212
217
  """
@@ -219,29 +224,30 @@ class _RolloutSpecState:
219
224
  pulumi.set(self, "traffic", value)
220
225
 
221
226
 
227
+ @pulumi.type_token("spotinst:oceancd/rolloutSpec:RolloutSpec")
222
228
  class RolloutSpec(pulumi.CustomResource):
223
229
  @overload
224
230
  def __init__(__self__,
225
231
  resource_name: str,
226
232
  opts: Optional[pulumi.ResourceOptions] = None,
227
- failure_policy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecFailurePolicyArgs']]] = None,
228
- rollout_spec_name: Optional[pulumi.Input[str]] = None,
229
- spot_deployment: Optional[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]] = None,
230
- spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]]]] = None,
231
- strategy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecStrategyArgs']]] = None,
232
- traffic: Optional[pulumi.Input[pulumi.InputType['RolloutSpecTrafficArgs']]] = None,
233
+ failure_policy: Optional[pulumi.Input[Union['RolloutSpecFailurePolicyArgs', 'RolloutSpecFailurePolicyArgsDict']]] = None,
234
+ rollout_spec_name: Optional[pulumi.Input[_builtins.str]] = None,
235
+ spot_deployment: Optional[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]] = None,
236
+ spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]]]] = None,
237
+ strategy: Optional[pulumi.Input[Union['RolloutSpecStrategyArgs', 'RolloutSpecStrategyArgsDict']]] = None,
238
+ traffic: Optional[pulumi.Input[Union['RolloutSpecTrafficArgs', 'RolloutSpecTrafficArgsDict']]] = None,
233
239
  __props__=None):
234
240
  """
235
241
  Manages a Spotinst OceanCD Rollout Spec resource.
236
242
 
237
243
  :param str resource_name: The name of the resource.
238
244
  :param pulumi.ResourceOptions opts: Options for the resource.
239
- :param pulumi.Input[pulumi.InputType['RolloutSpecFailurePolicyArgs']] failure_policy: Holds information on how to react when failure happens.
240
- :param pulumi.Input[str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
241
- :param pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']] spot_deployment: Represents the SpotDeployment selector.
242
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]]] spot_deployments: You must specify either `spotDeployment` OR `spotDeployments` but not both. Every SpotDeployment has to be unique. If more than one `SpotDeployment` has been configured, no `traffic` managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
243
- :param pulumi.Input[pulumi.InputType['RolloutSpecStrategyArgs']] strategy: Determines the Ocean CD strategy
244
- :param pulumi.Input[pulumi.InputType['RolloutSpecTrafficArgs']] traffic: Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case `SpotDeployments` contains more than one SpotDeployment the `traffic` manager may not be configured.
245
+ :param pulumi.Input[Union['RolloutSpecFailurePolicyArgs', 'RolloutSpecFailurePolicyArgsDict']] failure_policy: Holds information on how to react when failure happens.
246
+ :param pulumi.Input[_builtins.str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
247
+ :param pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']] spot_deployment: Represents the SpotDeployment selector.
248
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]]] spot_deployments: You must specify either `spotDeployment` OR `spotDeployments` but not both. Every SpotDeployment has to be unique. If more than one `SpotDeployment` has been configured, no `traffic` managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
249
+ :param pulumi.Input[Union['RolloutSpecStrategyArgs', 'RolloutSpecStrategyArgsDict']] strategy: Determines the Ocean CD strategy
250
+ :param pulumi.Input[Union['RolloutSpecTrafficArgs', 'RolloutSpecTrafficArgsDict']] traffic: Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case `SpotDeployments` contains more than one SpotDeployment the `traffic` manager may not be configured.
245
251
  """
246
252
  ...
247
253
  @overload
@@ -267,12 +273,12 @@ class RolloutSpec(pulumi.CustomResource):
267
273
  def _internal_init(__self__,
268
274
  resource_name: str,
269
275
  opts: Optional[pulumi.ResourceOptions] = None,
270
- failure_policy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecFailurePolicyArgs']]] = None,
271
- rollout_spec_name: Optional[pulumi.Input[str]] = None,
272
- spot_deployment: Optional[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]] = None,
273
- spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]]]] = None,
274
- strategy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecStrategyArgs']]] = None,
275
- traffic: Optional[pulumi.Input[pulumi.InputType['RolloutSpecTrafficArgs']]] = None,
276
+ failure_policy: Optional[pulumi.Input[Union['RolloutSpecFailurePolicyArgs', 'RolloutSpecFailurePolicyArgsDict']]] = None,
277
+ rollout_spec_name: Optional[pulumi.Input[_builtins.str]] = None,
278
+ spot_deployment: Optional[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]] = None,
279
+ spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]]]] = None,
280
+ strategy: Optional[pulumi.Input[Union['RolloutSpecStrategyArgs', 'RolloutSpecStrategyArgsDict']]] = None,
281
+ traffic: Optional[pulumi.Input[Union['RolloutSpecTrafficArgs', 'RolloutSpecTrafficArgsDict']]] = None,
276
282
  __props__=None):
277
283
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
278
284
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -302,12 +308,12 @@ class RolloutSpec(pulumi.CustomResource):
302
308
  def get(resource_name: str,
303
309
  id: pulumi.Input[str],
304
310
  opts: Optional[pulumi.ResourceOptions] = None,
305
- failure_policy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecFailurePolicyArgs']]] = None,
306
- rollout_spec_name: Optional[pulumi.Input[str]] = None,
307
- spot_deployment: Optional[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]] = None,
308
- spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]]]] = None,
309
- strategy: Optional[pulumi.Input[pulumi.InputType['RolloutSpecStrategyArgs']]] = None,
310
- traffic: Optional[pulumi.Input[pulumi.InputType['RolloutSpecTrafficArgs']]] = None) -> 'RolloutSpec':
311
+ failure_policy: Optional[pulumi.Input[Union['RolloutSpecFailurePolicyArgs', 'RolloutSpecFailurePolicyArgsDict']]] = None,
312
+ rollout_spec_name: Optional[pulumi.Input[_builtins.str]] = None,
313
+ spot_deployment: Optional[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]] = None,
314
+ spot_deployments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]]]] = None,
315
+ strategy: Optional[pulumi.Input[Union['RolloutSpecStrategyArgs', 'RolloutSpecStrategyArgsDict']]] = None,
316
+ traffic: Optional[pulumi.Input[Union['RolloutSpecTrafficArgs', 'RolloutSpecTrafficArgsDict']]] = None) -> 'RolloutSpec':
311
317
  """
312
318
  Get an existing RolloutSpec resource's state with the given name, id, and optional extra
313
319
  properties used to qualify the lookup.
@@ -315,12 +321,12 @@ class RolloutSpec(pulumi.CustomResource):
315
321
  :param str resource_name: The unique name of the resulting resource.
316
322
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
317
323
  :param pulumi.ResourceOptions opts: Options for the resource.
318
- :param pulumi.Input[pulumi.InputType['RolloutSpecFailurePolicyArgs']] failure_policy: Holds information on how to react when failure happens.
319
- :param pulumi.Input[str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
320
- :param pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']] spot_deployment: Represents the SpotDeployment selector.
321
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RolloutSpecSpotDeploymentArgs']]]] spot_deployments: You must specify either `spotDeployment` OR `spotDeployments` but not both. Every SpotDeployment has to be unique. If more than one `SpotDeployment` has been configured, no `traffic` managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
322
- :param pulumi.Input[pulumi.InputType['RolloutSpecStrategyArgs']] strategy: Determines the Ocean CD strategy
323
- :param pulumi.Input[pulumi.InputType['RolloutSpecTrafficArgs']] traffic: Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case `SpotDeployments` contains more than one SpotDeployment the `traffic` manager may not be configured.
324
+ :param pulumi.Input[Union['RolloutSpecFailurePolicyArgs', 'RolloutSpecFailurePolicyArgsDict']] failure_policy: Holds information on how to react when failure happens.
325
+ :param pulumi.Input[_builtins.str] rollout_spec_name: Identifier name for Ocean CD Rollout Spec. Must be unique
326
+ :param pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']] spot_deployment: Represents the SpotDeployment selector.
327
+ :param pulumi.Input[Sequence[pulumi.Input[Union['RolloutSpecSpotDeploymentArgs', 'RolloutSpecSpotDeploymentArgsDict']]]] spot_deployments: You must specify either `spotDeployment` OR `spotDeployments` but not both. Every SpotDeployment has to be unique. If more than one `SpotDeployment` has been configured, no `traffic` managers can be set as part of the RolloutSpec.For such case ensure that each of the chosen SpotDeployments are being exposed with different Kubernetes services.
328
+ :param pulumi.Input[Union['RolloutSpecStrategyArgs', 'RolloutSpecStrategyArgsDict']] strategy: Determines the Ocean CD strategy
329
+ :param pulumi.Input[Union['RolloutSpecTrafficArgs', 'RolloutSpecTrafficArgsDict']] traffic: Hosts all of the supported service meshes needed to enable more fine-grained traffic routing. In case `SpotDeployments` contains more than one SpotDeployment the `traffic` manager may not be configured.
324
330
  """
325
331
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
326
332
 
@@ -334,7 +340,7 @@ class RolloutSpec(pulumi.CustomResource):
334
340
  __props__.__dict__["traffic"] = traffic
335
341
  return RolloutSpec(resource_name, opts=opts, __props__=__props__)
336
342
 
337
- @property
343
+ @_builtins.property
338
344
  @pulumi.getter(name="failurePolicy")
339
345
  def failure_policy(self) -> pulumi.Output[Optional['outputs.RolloutSpecFailurePolicy']]:
340
346
  """
@@ -342,15 +348,15 @@ class RolloutSpec(pulumi.CustomResource):
342
348
  """
343
349
  return pulumi.get(self, "failure_policy")
344
350
 
345
- @property
351
+ @_builtins.property
346
352
  @pulumi.getter(name="rolloutSpecName")
347
- def rollout_spec_name(self) -> pulumi.Output[str]:
353
+ def rollout_spec_name(self) -> pulumi.Output[_builtins.str]:
348
354
  """
349
355
  Identifier name for Ocean CD Rollout Spec. Must be unique
350
356
  """
351
357
  return pulumi.get(self, "rollout_spec_name")
352
358
 
353
- @property
359
+ @_builtins.property
354
360
  @pulumi.getter(name="spotDeployment")
355
361
  def spot_deployment(self) -> pulumi.Output[Optional['outputs.RolloutSpecSpotDeployment']]:
356
362
  """
@@ -358,7 +364,7 @@ class RolloutSpec(pulumi.CustomResource):
358
364
  """
359
365
  return pulumi.get(self, "spot_deployment")
360
366
 
361
- @property
367
+ @_builtins.property
362
368
  @pulumi.getter(name="spotDeployments")
363
369
  def spot_deployments(self) -> pulumi.Output[Optional[Sequence['outputs.RolloutSpecSpotDeployment']]]:
364
370
  """
@@ -366,7 +372,7 @@ class RolloutSpec(pulumi.CustomResource):
366
372
  """
367
373
  return pulumi.get(self, "spot_deployments")
368
374
 
369
- @property
375
+ @_builtins.property
370
376
  @pulumi.getter
371
377
  def strategy(self) -> pulumi.Output['outputs.RolloutSpecStrategy']:
372
378
  """
@@ -374,7 +380,7 @@ class RolloutSpec(pulumi.CustomResource):
374
380
  """
375
381
  return pulumi.get(self, "strategy")
376
382
 
377
- @property
383
+ @_builtins.property
378
384
  @pulumi.getter
379
385
  def traffic(self) -> pulumi.Output[Optional['outputs.RolloutSpecTraffic']]:
380
386
  """
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -16,7 +21,7 @@ __all__ = ['StrategyArgs', 'Strategy']
16
21
  @pulumi.input_type
17
22
  class StrategyArgs:
18
23
  def __init__(__self__, *,
19
- strategy_name: pulumi.Input[str],
24
+ strategy_name: pulumi.Input[_builtins.str],
20
25
  canary: Optional[pulumi.Input['StrategyCanaryArgs']] = None,
21
26
  rolling: Optional[pulumi.Input['StrategyRollingArgs']] = None):
22
27
  """
@@ -30,16 +35,16 @@ class StrategyArgs:
30
35
  if rolling is not None:
31
36
  pulumi.set(__self__, "rolling", rolling)
32
37
 
33
- @property
38
+ @_builtins.property
34
39
  @pulumi.getter(name="strategyName")
35
- def strategy_name(self) -> pulumi.Input[str]:
40
+ def strategy_name(self) -> pulumi.Input[_builtins.str]:
36
41
  return pulumi.get(self, "strategy_name")
37
42
 
38
43
  @strategy_name.setter
39
- def strategy_name(self, value: pulumi.Input[str]):
44
+ def strategy_name(self, value: pulumi.Input[_builtins.str]):
40
45
  pulumi.set(self, "strategy_name", value)
41
46
 
42
- @property
47
+ @_builtins.property
43
48
  @pulumi.getter
44
49
  def canary(self) -> Optional[pulumi.Input['StrategyCanaryArgs']]:
45
50
  """
@@ -51,7 +56,7 @@ class StrategyArgs:
51
56
  def canary(self, value: Optional[pulumi.Input['StrategyCanaryArgs']]):
52
57
  pulumi.set(self, "canary", value)
53
58
 
54
- @property
59
+ @_builtins.property
55
60
  @pulumi.getter
56
61
  def rolling(self) -> Optional[pulumi.Input['StrategyRollingArgs']]:
57
62
  """
@@ -69,7 +74,7 @@ class _StrategyState:
69
74
  def __init__(__self__, *,
70
75
  canary: Optional[pulumi.Input['StrategyCanaryArgs']] = None,
71
76
  rolling: Optional[pulumi.Input['StrategyRollingArgs']] = None,
72
- strategy_name: Optional[pulumi.Input[str]] = None):
77
+ strategy_name: Optional[pulumi.Input[_builtins.str]] = None):
73
78
  """
74
79
  Input properties used for looking up and filtering Strategy resources.
75
80
  :param pulumi.Input['StrategyCanaryArgs'] canary: Represents Canary strategy. Cannot be defined when Rolling object is defined.
@@ -82,7 +87,7 @@ class _StrategyState:
82
87
  if strategy_name is not None:
83
88
  pulumi.set(__self__, "strategy_name", strategy_name)
84
89
 
85
- @property
90
+ @_builtins.property
86
91
  @pulumi.getter
87
92
  def canary(self) -> Optional[pulumi.Input['StrategyCanaryArgs']]:
88
93
  """
@@ -94,7 +99,7 @@ class _StrategyState:
94
99
  def canary(self, value: Optional[pulumi.Input['StrategyCanaryArgs']]):
95
100
  pulumi.set(self, "canary", value)
96
101
 
97
- @property
102
+ @_builtins.property
98
103
  @pulumi.getter
99
104
  def rolling(self) -> Optional[pulumi.Input['StrategyRollingArgs']]:
100
105
  """
@@ -106,32 +111,33 @@ class _StrategyState:
106
111
  def rolling(self, value: Optional[pulumi.Input['StrategyRollingArgs']]):
107
112
  pulumi.set(self, "rolling", value)
108
113
 
109
- @property
114
+ @_builtins.property
110
115
  @pulumi.getter(name="strategyName")
111
- def strategy_name(self) -> Optional[pulumi.Input[str]]:
116
+ def strategy_name(self) -> Optional[pulumi.Input[_builtins.str]]:
112
117
  return pulumi.get(self, "strategy_name")
113
118
 
114
119
  @strategy_name.setter
115
- def strategy_name(self, value: Optional[pulumi.Input[str]]):
120
+ def strategy_name(self, value: Optional[pulumi.Input[_builtins.str]]):
116
121
  pulumi.set(self, "strategy_name", value)
117
122
 
118
123
 
124
+ @pulumi.type_token("spotinst:oceancd/strategy:Strategy")
119
125
  class Strategy(pulumi.CustomResource):
120
126
  @overload
121
127
  def __init__(__self__,
122
128
  resource_name: str,
123
129
  opts: Optional[pulumi.ResourceOptions] = None,
124
- canary: Optional[pulumi.Input[pulumi.InputType['StrategyCanaryArgs']]] = None,
125
- rolling: Optional[pulumi.Input[pulumi.InputType['StrategyRollingArgs']]] = None,
126
- strategy_name: Optional[pulumi.Input[str]] = None,
130
+ canary: Optional[pulumi.Input[Union['StrategyCanaryArgs', 'StrategyCanaryArgsDict']]] = None,
131
+ rolling: Optional[pulumi.Input[Union['StrategyRollingArgs', 'StrategyRollingArgsDict']]] = None,
132
+ strategy_name: Optional[pulumi.Input[_builtins.str]] = None,
127
133
  __props__=None):
128
134
  """
129
135
  Manages a Spotinst OceanCD Strategy resource.
130
136
 
131
137
  :param str resource_name: The name of the resource.
132
138
  :param pulumi.ResourceOptions opts: Options for the resource.
133
- :param pulumi.Input[pulumi.InputType['StrategyCanaryArgs']] canary: Represents Canary strategy. Cannot be defined when Rolling object is defined.
134
- :param pulumi.Input[pulumi.InputType['StrategyRollingArgs']] rolling: Represents Rolling Update strategy. Cannot be defined when Canary object is defined.
139
+ :param pulumi.Input[Union['StrategyCanaryArgs', 'StrategyCanaryArgsDict']] canary: Represents Canary strategy. Cannot be defined when Rolling object is defined.
140
+ :param pulumi.Input[Union['StrategyRollingArgs', 'StrategyRollingArgsDict']] rolling: Represents Rolling Update strategy. Cannot be defined when Canary object is defined.
135
141
  """
136
142
  ...
137
143
  @overload
@@ -157,9 +163,9 @@ class Strategy(pulumi.CustomResource):
157
163
  def _internal_init(__self__,
158
164
  resource_name: str,
159
165
  opts: Optional[pulumi.ResourceOptions] = None,
160
- canary: Optional[pulumi.Input[pulumi.InputType['StrategyCanaryArgs']]] = None,
161
- rolling: Optional[pulumi.Input[pulumi.InputType['StrategyRollingArgs']]] = None,
162
- strategy_name: Optional[pulumi.Input[str]] = None,
166
+ canary: Optional[pulumi.Input[Union['StrategyCanaryArgs', 'StrategyCanaryArgsDict']]] = None,
167
+ rolling: Optional[pulumi.Input[Union['StrategyRollingArgs', 'StrategyRollingArgsDict']]] = None,
168
+ strategy_name: Optional[pulumi.Input[_builtins.str]] = None,
163
169
  __props__=None):
164
170
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
165
171
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -184,9 +190,9 @@ class Strategy(pulumi.CustomResource):
184
190
  def get(resource_name: str,
185
191
  id: pulumi.Input[str],
186
192
  opts: Optional[pulumi.ResourceOptions] = None,
187
- canary: Optional[pulumi.Input[pulumi.InputType['StrategyCanaryArgs']]] = None,
188
- rolling: Optional[pulumi.Input[pulumi.InputType['StrategyRollingArgs']]] = None,
189
- strategy_name: Optional[pulumi.Input[str]] = None) -> 'Strategy':
193
+ canary: Optional[pulumi.Input[Union['StrategyCanaryArgs', 'StrategyCanaryArgsDict']]] = None,
194
+ rolling: Optional[pulumi.Input[Union['StrategyRollingArgs', 'StrategyRollingArgsDict']]] = None,
195
+ strategy_name: Optional[pulumi.Input[_builtins.str]] = None) -> 'Strategy':
190
196
  """
191
197
  Get an existing Strategy resource's state with the given name, id, and optional extra
192
198
  properties used to qualify the lookup.
@@ -194,8 +200,8 @@ class Strategy(pulumi.CustomResource):
194
200
  :param str resource_name: The unique name of the resulting resource.
195
201
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
196
202
  :param pulumi.ResourceOptions opts: Options for the resource.
197
- :param pulumi.Input[pulumi.InputType['StrategyCanaryArgs']] canary: Represents Canary strategy. Cannot be defined when Rolling object is defined.
198
- :param pulumi.Input[pulumi.InputType['StrategyRollingArgs']] rolling: Represents Rolling Update strategy. Cannot be defined when Canary object is defined.
203
+ :param pulumi.Input[Union['StrategyCanaryArgs', 'StrategyCanaryArgsDict']] canary: Represents Canary strategy. Cannot be defined when Rolling object is defined.
204
+ :param pulumi.Input[Union['StrategyRollingArgs', 'StrategyRollingArgsDict']] rolling: Represents Rolling Update strategy. Cannot be defined when Canary object is defined.
199
205
  """
200
206
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
201
207
 
@@ -206,7 +212,7 @@ class Strategy(pulumi.CustomResource):
206
212
  __props__.__dict__["strategy_name"] = strategy_name
207
213
  return Strategy(resource_name, opts=opts, __props__=__props__)
208
214
 
209
- @property
215
+ @_builtins.property
210
216
  @pulumi.getter
211
217
  def canary(self) -> pulumi.Output[Optional['outputs.StrategyCanary']]:
212
218
  """
@@ -214,7 +220,7 @@ class Strategy(pulumi.CustomResource):
214
220
  """
215
221
  return pulumi.get(self, "canary")
216
222
 
217
- @property
223
+ @_builtins.property
218
224
  @pulumi.getter
219
225
  def rolling(self) -> pulumi.Output[Optional['outputs.StrategyRolling']]:
220
226
  """
@@ -222,8 +228,8 @@ class Strategy(pulumi.CustomResource):
222
228
  """
223
229
  return pulumi.get(self, "rolling")
224
230
 
225
- @property
231
+ @_builtins.property
226
232
  @pulumi.getter(name="strategyName")
227
- def strategy_name(self) -> pulumi.Output[str]:
233
+ def strategy_name(self) -> pulumi.Output[_builtins.str]:
228
234
  return pulumi.get(self, "strategy_name")
229
235