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 *
@@ -18,12 +23,12 @@ class VerificationTemplateArgs:
18
23
  def __init__(__self__, *,
19
24
  args: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]] = None,
20
25
  metrics: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]] = None,
21
- name: Optional[pulumi.Input[str]] = None):
26
+ name: Optional[pulumi.Input[_builtins.str]] = None):
22
27
  """
23
28
  The set of arguments for constructing a VerificationTemplate resource.
24
29
  :param pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
25
30
  :param pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]] metrics: List of verification metrics.
26
- :param pulumi.Input[str] name: Identifier name for Ocean CD Verification Template. Must be unique.
31
+ :param pulumi.Input[_builtins.str] name: Identifier name for Ocean CD Verification Template. Must be unique.
27
32
  """
28
33
  if args is not None:
29
34
  pulumi.set(__self__, "args", args)
@@ -32,7 +37,7 @@ class VerificationTemplateArgs:
32
37
  if name is not None:
33
38
  pulumi.set(__self__, "name", name)
34
39
 
35
- @property
40
+ @_builtins.property
36
41
  @pulumi.getter
37
42
  def args(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]]:
38
43
  """
@@ -44,7 +49,7 @@ class VerificationTemplateArgs:
44
49
  def args(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]]):
45
50
  pulumi.set(self, "args", value)
46
51
 
47
- @property
52
+ @_builtins.property
48
53
  @pulumi.getter
49
54
  def metrics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]]:
50
55
  """
@@ -56,16 +61,16 @@ class VerificationTemplateArgs:
56
61
  def metrics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]]):
57
62
  pulumi.set(self, "metrics", value)
58
63
 
59
- @property
64
+ @_builtins.property
60
65
  @pulumi.getter
61
- def name(self) -> Optional[pulumi.Input[str]]:
66
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
62
67
  """
63
68
  Identifier name for Ocean CD Verification Template. Must be unique.
64
69
  """
65
70
  return pulumi.get(self, "name")
66
71
 
67
72
  @name.setter
68
- def name(self, value: Optional[pulumi.Input[str]]):
73
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
69
74
  pulumi.set(self, "name", value)
70
75
 
71
76
 
@@ -74,12 +79,12 @@ class _VerificationTemplateState:
74
79
  def __init__(__self__, *,
75
80
  args: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]] = None,
76
81
  metrics: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]] = None,
77
- name: Optional[pulumi.Input[str]] = None):
82
+ name: Optional[pulumi.Input[_builtins.str]] = None):
78
83
  """
79
84
  Input properties used for looking up and filtering VerificationTemplate resources.
80
85
  :param pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
81
86
  :param pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]] metrics: List of verification metrics.
82
- :param pulumi.Input[str] name: Identifier name for Ocean CD Verification Template. Must be unique.
87
+ :param pulumi.Input[_builtins.str] name: Identifier name for Ocean CD Verification Template. Must be unique.
83
88
  """
84
89
  if args is not None:
85
90
  pulumi.set(__self__, "args", args)
@@ -88,7 +93,7 @@ class _VerificationTemplateState:
88
93
  if name is not None:
89
94
  pulumi.set(__self__, "name", name)
90
95
 
91
- @property
96
+ @_builtins.property
92
97
  @pulumi.getter
93
98
  def args(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]]:
94
99
  """
@@ -100,7 +105,7 @@ class _VerificationTemplateState:
100
105
  def args(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateArgArgs']]]]):
101
106
  pulumi.set(self, "args", value)
102
107
 
103
- @property
108
+ @_builtins.property
104
109
  @pulumi.getter
105
110
  def metrics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]]:
106
111
  """
@@ -112,27 +117,28 @@ class _VerificationTemplateState:
112
117
  def metrics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VerificationTemplateMetricArgs']]]]):
113
118
  pulumi.set(self, "metrics", value)
114
119
 
115
- @property
120
+ @_builtins.property
116
121
  @pulumi.getter
117
- def name(self) -> Optional[pulumi.Input[str]]:
122
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
118
123
  """
119
124
  Identifier name for Ocean CD Verification Template. Must be unique.
120
125
  """
121
126
  return pulumi.get(self, "name")
122
127
 
123
128
  @name.setter
124
- def name(self, value: Optional[pulumi.Input[str]]):
129
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
125
130
  pulumi.set(self, "name", value)
126
131
 
127
132
 
133
+ @pulumi.type_token("spotinst:oceancd/verificationTemplate:VerificationTemplate")
128
134
  class VerificationTemplate(pulumi.CustomResource):
129
135
  @overload
130
136
  def __init__(__self__,
131
137
  resource_name: str,
132
138
  opts: Optional[pulumi.ResourceOptions] = None,
133
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateArgArgs']]]]] = None,
134
- metrics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateMetricArgs']]]]] = None,
135
- name: Optional[pulumi.Input[str]] = None,
139
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateArgArgs', 'VerificationTemplateArgArgsDict']]]]] = None,
140
+ metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateMetricArgs', 'VerificationTemplateMetricArgsDict']]]]] = None,
141
+ name: Optional[pulumi.Input[_builtins.str]] = None,
136
142
  __props__=None):
137
143
  """
138
144
  Manages a Spotinst OceanCD Verfification Template resource.
@@ -145,128 +151,128 @@ class VerificationTemplate(pulumi.CustomResource):
145
151
 
146
152
  test = spotinst.oceancd.VerificationTemplate("test",
147
153
  name="test-verification-template-tes",
148
- args=[spotinst.oceancd.VerificationTemplateArgArgs(
149
- arg_name="test-arg",
150
- value="test",
151
- value_from=spotinst.oceancd.VerificationTemplateArgValueFromArgs(
152
- secret_key_ref=spotinst.oceancd.VerificationTemplateArgValueFromSecretKeyRefArgs(
153
- name="test_key",
154
- key="key-value-test",
155
- ),
156
- ),
157
- )],
158
- metrics=[spotinst.oceancd.VerificationTemplateMetricArgs(
159
- metrics_name="test-metrics-names",
160
- dry_run=False,
161
- interval="10m",
162
- initial_delay="1m",
163
- count=10,
164
- success_condition="result[0] <= 0.95",
165
- failure_condition="result[0] >= 0.95",
166
- failure_limit=2,
167
- consecutive_error_limit=1,
168
- providers=[spotinst.oceancd.VerificationTemplateMetricProviderArgs(
169
- prometheus=spotinst.oceancd.VerificationTemplateMetricProviderPrometheusArgs(
170
- prometheus_query="http_requests_new",
171
- ),
172
- datadog=spotinst.oceancd.VerificationTemplateMetricProviderDatadogArgs(
173
- duration="1m",
174
- datadog_query="avg:kubernetes.cpu.user.total",
175
- ),
176
- new_relic=spotinst.oceancd.VerificationTemplateMetricProviderNewRelicArgs(
177
- profile="test",
178
- new_relic_query="FROM Metric SELECT count",
179
- ),
180
- cloud_watch=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchArgs(
181
- duration="5m",
182
- metric_data_queries=[spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryArgs(
183
- id="utilization",
184
- metric_stat=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatArgs(
185
- metric=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatMetricArgs(
186
- metric_name="Test",
187
- namespace="AWS/EC2",
188
- dimensions=[spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatMetricDimensionArgs(
189
- dimension_name="instandId",
190
- dimension_value="i-123044",
191
- )],
192
- ),
193
- metric_period=400,
194
- stat="average",
195
- unit="None",
196
- ),
197
- expression="SELECT AVG(CPUUtilization) FROM SCHEMA",
198
- label="TestLabel",
199
- return_data=False,
200
- period=300,
201
- )],
202
- ),
203
- web=spotinst.oceancd.VerificationTemplateMetricProviderWebArgs(
204
- method="GET",
205
- url="https://oceancd.com/api/v1/metrics?clusterId= args.clusterId",
206
- web_headers=[spotinst.oceancd.VerificationTemplateMetricProviderWebWebHeaderArgs(
207
- web_header_key="Autorization",
208
- web_header_value="Bearer=args.token",
209
- )],
210
- body="{\\"key\\": \\"test\\"}",
211
- timeout_seconds=20,
212
- json_path="$.data",
213
- insecure=False,
214
- ),
215
- job=spotinst.oceancd.VerificationTemplateMetricProviderJobArgs(
216
- specs=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecArgs(
217
- backoff_limit=1,
218
- job_templates=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateArgs(
219
- template_specs=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateTemplateSpecArgs(
220
- containers=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateTemplateSpecContainerArgs(
221
- container_name="hello",
222
- commands=[
154
+ args=[{
155
+ "arg_name": "test-arg",
156
+ "value": "test",
157
+ "value_from": {
158
+ "secret_key_ref": {
159
+ "name": "test_key",
160
+ "key": "key-value-test",
161
+ },
162
+ },
163
+ }],
164
+ metrics=[{
165
+ "metrics_name": "test-metrics-names",
166
+ "dry_run": False,
167
+ "interval": "10m",
168
+ "initial_delay": "1m",
169
+ "count": 10,
170
+ "success_condition": "result[0] <= 0.95",
171
+ "failure_condition": "result[0] >= 0.95",
172
+ "failure_limit": 2,
173
+ "consecutive_error_limit": 1,
174
+ "providers": [{
175
+ "prometheus": {
176
+ "prometheus_query": "http_requests_new",
177
+ },
178
+ "datadog": {
179
+ "duration": "1m",
180
+ "datadog_query": "avg:kubernetes.cpu.user.total",
181
+ },
182
+ "new_relic": {
183
+ "profile": "test",
184
+ "new_relic_query": "FROM Metric SELECT count",
185
+ },
186
+ "cloud_watch": {
187
+ "duration": "5m",
188
+ "metric_data_queries": [{
189
+ "id": "utilization",
190
+ "metric_stat": {
191
+ "metric": {
192
+ "metric_name": "Test",
193
+ "namespace": "AWS/EC2",
194
+ "dimensions": [{
195
+ "dimension_name": "instandId",
196
+ "dimension_value": "i-123044",
197
+ }],
198
+ },
199
+ "metric_period": 400,
200
+ "stat": "average",
201
+ "unit": "None",
202
+ },
203
+ "expression": "SELECT AVG(CPUUtilization) FROM SCHEMA",
204
+ "label": "TestLabel",
205
+ "return_data": False,
206
+ "period": 300,
207
+ }],
208
+ },
209
+ "web": {
210
+ "method": "GET",
211
+ "url": "https://oceancd.com/api/v1/metrics?clusterId= args.clusterId",
212
+ "web_headers": [{
213
+ "web_header_key": "Autorization",
214
+ "web_header_value": "Bearer=args.token",
215
+ }],
216
+ "body": "{\\"key\\": \\"test\\"}",
217
+ "timeout_seconds": 20,
218
+ "json_path": "$.data",
219
+ "insecure": False,
220
+ },
221
+ "job": {
222
+ "specs": [{
223
+ "backoff_limit": 1,
224
+ "job_templates": [{
225
+ "template_specs": [{
226
+ "containers": [{
227
+ "container_name": "hello",
228
+ "commands": [
223
229
  "sh",
224
230
  "-c",
225
231
  ],
226
- image="nginx.2.1",
227
- )],
228
- restart_policy="never",
229
- )],
230
- )],
231
- )],
232
- ),
233
- jenkins=spotinst.oceancd.VerificationTemplateMetricProviderJenkinsArgs(
234
- pipeline_name="testPipelineName",
235
- tls_verification=True,
236
- timeout="2m",
237
- jenkins_interval="5s",
238
- jenkins_parameters=spotinst.oceancd.VerificationTemplateMetricProviderJenkinsJenkinsParametersArgs(
239
- parameter_key="app",
240
- parameter_value="my-app",
241
- ),
242
- ),
243
- )],
244
- baseline=spotinst.oceancd.VerificationTemplateMetricBaselineArgs(
245
- baseline_providers=[spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderArgs(
246
- prometheus=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderPrometheusArgs(
247
- prometheus_query="http_requests_total.status!",
248
- ),
249
- datadog=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderDatadogArgs(
250
- duration="2m",
251
- datadog_query="avg:kubernetes.cpu.user",
252
- ),
253
- new_relic=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderNewRelicArgs(
254
- profile="test",
255
- new_relic_query="FROM Metric SELECT count*",
256
- ),
257
- )],
258
- min_range=40,
259
- max_range=50,
260
- threshold="range",
261
- ),
262
- )])
232
+ "image": "nginx.2.1",
233
+ }],
234
+ "restart_policy": "never",
235
+ }],
236
+ }],
237
+ }],
238
+ },
239
+ "jenkins": {
240
+ "pipeline_name": "testPipelineName",
241
+ "tls_verification": True,
242
+ "timeout": "2m",
243
+ "jenkins_interval": "5s",
244
+ "jenkins_parameters": {
245
+ "parameter_key": "app",
246
+ "parameter_value": "my-app",
247
+ },
248
+ },
249
+ }],
250
+ "baseline": {
251
+ "baseline_providers": [{
252
+ "prometheus": {
253
+ "prometheus_query": "http_requests_total.status!",
254
+ },
255
+ "datadog": {
256
+ "duration": "2m",
257
+ "datadog_query": "avg:kubernetes.cpu.user",
258
+ },
259
+ "new_relic": {
260
+ "profile": "test",
261
+ "new_relic_query": "FROM Metric SELECT count*",
262
+ },
263
+ }],
264
+ "min_range": 40,
265
+ "max_range": 50,
266
+ "threshold": "range",
267
+ },
268
+ }])
263
269
  ```
264
270
 
265
271
  :param str resource_name: The name of the resource.
266
272
  :param pulumi.ResourceOptions opts: Options for the resource.
267
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateArgArgs']]]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
268
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateMetricArgs']]]] metrics: List of verification metrics.
269
- :param pulumi.Input[str] name: Identifier name for Ocean CD Verification Template. Must be unique.
273
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateArgArgs', 'VerificationTemplateArgArgsDict']]]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
274
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateMetricArgs', 'VerificationTemplateMetricArgsDict']]]] metrics: List of verification metrics.
275
+ :param pulumi.Input[_builtins.str] name: Identifier name for Ocean CD Verification Template. Must be unique.
270
276
  """
271
277
  ...
272
278
  @overload
@@ -285,121 +291,121 @@ class VerificationTemplate(pulumi.CustomResource):
285
291
 
286
292
  test = spotinst.oceancd.VerificationTemplate("test",
287
293
  name="test-verification-template-tes",
288
- args=[spotinst.oceancd.VerificationTemplateArgArgs(
289
- arg_name="test-arg",
290
- value="test",
291
- value_from=spotinst.oceancd.VerificationTemplateArgValueFromArgs(
292
- secret_key_ref=spotinst.oceancd.VerificationTemplateArgValueFromSecretKeyRefArgs(
293
- name="test_key",
294
- key="key-value-test",
295
- ),
296
- ),
297
- )],
298
- metrics=[spotinst.oceancd.VerificationTemplateMetricArgs(
299
- metrics_name="test-metrics-names",
300
- dry_run=False,
301
- interval="10m",
302
- initial_delay="1m",
303
- count=10,
304
- success_condition="result[0] <= 0.95",
305
- failure_condition="result[0] >= 0.95",
306
- failure_limit=2,
307
- consecutive_error_limit=1,
308
- providers=[spotinst.oceancd.VerificationTemplateMetricProviderArgs(
309
- prometheus=spotinst.oceancd.VerificationTemplateMetricProviderPrometheusArgs(
310
- prometheus_query="http_requests_new",
311
- ),
312
- datadog=spotinst.oceancd.VerificationTemplateMetricProviderDatadogArgs(
313
- duration="1m",
314
- datadog_query="avg:kubernetes.cpu.user.total",
315
- ),
316
- new_relic=spotinst.oceancd.VerificationTemplateMetricProviderNewRelicArgs(
317
- profile="test",
318
- new_relic_query="FROM Metric SELECT count",
319
- ),
320
- cloud_watch=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchArgs(
321
- duration="5m",
322
- metric_data_queries=[spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryArgs(
323
- id="utilization",
324
- metric_stat=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatArgs(
325
- metric=spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatMetricArgs(
326
- metric_name="Test",
327
- namespace="AWS/EC2",
328
- dimensions=[spotinst.oceancd.VerificationTemplateMetricProviderCloudWatchMetricDataQueryMetricStatMetricDimensionArgs(
329
- dimension_name="instandId",
330
- dimension_value="i-123044",
331
- )],
332
- ),
333
- metric_period=400,
334
- stat="average",
335
- unit="None",
336
- ),
337
- expression="SELECT AVG(CPUUtilization) FROM SCHEMA",
338
- label="TestLabel",
339
- return_data=False,
340
- period=300,
341
- )],
342
- ),
343
- web=spotinst.oceancd.VerificationTemplateMetricProviderWebArgs(
344
- method="GET",
345
- url="https://oceancd.com/api/v1/metrics?clusterId= args.clusterId",
346
- web_headers=[spotinst.oceancd.VerificationTemplateMetricProviderWebWebHeaderArgs(
347
- web_header_key="Autorization",
348
- web_header_value="Bearer=args.token",
349
- )],
350
- body="{\\"key\\": \\"test\\"}",
351
- timeout_seconds=20,
352
- json_path="$.data",
353
- insecure=False,
354
- ),
355
- job=spotinst.oceancd.VerificationTemplateMetricProviderJobArgs(
356
- specs=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecArgs(
357
- backoff_limit=1,
358
- job_templates=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateArgs(
359
- template_specs=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateTemplateSpecArgs(
360
- containers=[spotinst.oceancd.VerificationTemplateMetricProviderJobSpecJobTemplateTemplateSpecContainerArgs(
361
- container_name="hello",
362
- commands=[
294
+ args=[{
295
+ "arg_name": "test-arg",
296
+ "value": "test",
297
+ "value_from": {
298
+ "secret_key_ref": {
299
+ "name": "test_key",
300
+ "key": "key-value-test",
301
+ },
302
+ },
303
+ }],
304
+ metrics=[{
305
+ "metrics_name": "test-metrics-names",
306
+ "dry_run": False,
307
+ "interval": "10m",
308
+ "initial_delay": "1m",
309
+ "count": 10,
310
+ "success_condition": "result[0] <= 0.95",
311
+ "failure_condition": "result[0] >= 0.95",
312
+ "failure_limit": 2,
313
+ "consecutive_error_limit": 1,
314
+ "providers": [{
315
+ "prometheus": {
316
+ "prometheus_query": "http_requests_new",
317
+ },
318
+ "datadog": {
319
+ "duration": "1m",
320
+ "datadog_query": "avg:kubernetes.cpu.user.total",
321
+ },
322
+ "new_relic": {
323
+ "profile": "test",
324
+ "new_relic_query": "FROM Metric SELECT count",
325
+ },
326
+ "cloud_watch": {
327
+ "duration": "5m",
328
+ "metric_data_queries": [{
329
+ "id": "utilization",
330
+ "metric_stat": {
331
+ "metric": {
332
+ "metric_name": "Test",
333
+ "namespace": "AWS/EC2",
334
+ "dimensions": [{
335
+ "dimension_name": "instandId",
336
+ "dimension_value": "i-123044",
337
+ }],
338
+ },
339
+ "metric_period": 400,
340
+ "stat": "average",
341
+ "unit": "None",
342
+ },
343
+ "expression": "SELECT AVG(CPUUtilization) FROM SCHEMA",
344
+ "label": "TestLabel",
345
+ "return_data": False,
346
+ "period": 300,
347
+ }],
348
+ },
349
+ "web": {
350
+ "method": "GET",
351
+ "url": "https://oceancd.com/api/v1/metrics?clusterId= args.clusterId",
352
+ "web_headers": [{
353
+ "web_header_key": "Autorization",
354
+ "web_header_value": "Bearer=args.token",
355
+ }],
356
+ "body": "{\\"key\\": \\"test\\"}",
357
+ "timeout_seconds": 20,
358
+ "json_path": "$.data",
359
+ "insecure": False,
360
+ },
361
+ "job": {
362
+ "specs": [{
363
+ "backoff_limit": 1,
364
+ "job_templates": [{
365
+ "template_specs": [{
366
+ "containers": [{
367
+ "container_name": "hello",
368
+ "commands": [
363
369
  "sh",
364
370
  "-c",
365
371
  ],
366
- image="nginx.2.1",
367
- )],
368
- restart_policy="never",
369
- )],
370
- )],
371
- )],
372
- ),
373
- jenkins=spotinst.oceancd.VerificationTemplateMetricProviderJenkinsArgs(
374
- pipeline_name="testPipelineName",
375
- tls_verification=True,
376
- timeout="2m",
377
- jenkins_interval="5s",
378
- jenkins_parameters=spotinst.oceancd.VerificationTemplateMetricProviderJenkinsJenkinsParametersArgs(
379
- parameter_key="app",
380
- parameter_value="my-app",
381
- ),
382
- ),
383
- )],
384
- baseline=spotinst.oceancd.VerificationTemplateMetricBaselineArgs(
385
- baseline_providers=[spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderArgs(
386
- prometheus=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderPrometheusArgs(
387
- prometheus_query="http_requests_total.status!",
388
- ),
389
- datadog=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderDatadogArgs(
390
- duration="2m",
391
- datadog_query="avg:kubernetes.cpu.user",
392
- ),
393
- new_relic=spotinst.oceancd.VerificationTemplateMetricBaselineBaselineProviderNewRelicArgs(
394
- profile="test",
395
- new_relic_query="FROM Metric SELECT count*",
396
- ),
397
- )],
398
- min_range=40,
399
- max_range=50,
400
- threshold="range",
401
- ),
402
- )])
372
+ "image": "nginx.2.1",
373
+ }],
374
+ "restart_policy": "never",
375
+ }],
376
+ }],
377
+ }],
378
+ },
379
+ "jenkins": {
380
+ "pipeline_name": "testPipelineName",
381
+ "tls_verification": True,
382
+ "timeout": "2m",
383
+ "jenkins_interval": "5s",
384
+ "jenkins_parameters": {
385
+ "parameter_key": "app",
386
+ "parameter_value": "my-app",
387
+ },
388
+ },
389
+ }],
390
+ "baseline": {
391
+ "baseline_providers": [{
392
+ "prometheus": {
393
+ "prometheus_query": "http_requests_total.status!",
394
+ },
395
+ "datadog": {
396
+ "duration": "2m",
397
+ "datadog_query": "avg:kubernetes.cpu.user",
398
+ },
399
+ "new_relic": {
400
+ "profile": "test",
401
+ "new_relic_query": "FROM Metric SELECT count*",
402
+ },
403
+ }],
404
+ "min_range": 40,
405
+ "max_range": 50,
406
+ "threshold": "range",
407
+ },
408
+ }])
403
409
  ```
404
410
 
405
411
  :param str resource_name: The name of the resource.
@@ -417,9 +423,9 @@ class VerificationTemplate(pulumi.CustomResource):
417
423
  def _internal_init(__self__,
418
424
  resource_name: str,
419
425
  opts: Optional[pulumi.ResourceOptions] = None,
420
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateArgArgs']]]]] = None,
421
- metrics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateMetricArgs']]]]] = None,
422
- name: Optional[pulumi.Input[str]] = None,
426
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateArgArgs', 'VerificationTemplateArgArgsDict']]]]] = None,
427
+ metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateMetricArgs', 'VerificationTemplateMetricArgsDict']]]]] = None,
428
+ name: Optional[pulumi.Input[_builtins.str]] = None,
423
429
  __props__=None):
424
430
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
425
431
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -442,9 +448,9 @@ class VerificationTemplate(pulumi.CustomResource):
442
448
  def get(resource_name: str,
443
449
  id: pulumi.Input[str],
444
450
  opts: Optional[pulumi.ResourceOptions] = None,
445
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateArgArgs']]]]] = None,
446
- metrics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateMetricArgs']]]]] = None,
447
- name: Optional[pulumi.Input[str]] = None) -> 'VerificationTemplate':
451
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateArgArgs', 'VerificationTemplateArgArgsDict']]]]] = None,
452
+ metrics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateMetricArgs', 'VerificationTemplateMetricArgsDict']]]]] = None,
453
+ name: Optional[pulumi.Input[_builtins.str]] = None) -> 'VerificationTemplate':
448
454
  """
449
455
  Get an existing VerificationTemplate resource's state with the given name, id, and optional extra
450
456
  properties used to qualify the lookup.
@@ -452,9 +458,9 @@ class VerificationTemplate(pulumi.CustomResource):
452
458
  :param str resource_name: The unique name of the resulting resource.
453
459
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
454
460
  :param pulumi.ResourceOptions opts: Options for the resource.
455
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateArgArgs']]]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
456
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['VerificationTemplateMetricArgs']]]] metrics: List of verification metrics.
457
- :param pulumi.Input[str] name: Identifier name for Ocean CD Verification Template. Must be unique.
461
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateArgArgs', 'VerificationTemplateArgArgsDict']]]] args: List of verification arguments. You may specify either `value` OR `valueFrom` but not both.In case `args`:`value` is already defined in the RolloutSpec entity, there is no need to also specify it in the VerificationTemplate entity.
462
+ :param pulumi.Input[Sequence[pulumi.Input[Union['VerificationTemplateMetricArgs', 'VerificationTemplateMetricArgsDict']]]] metrics: List of verification metrics.
463
+ :param pulumi.Input[_builtins.str] name: Identifier name for Ocean CD Verification Template. Must be unique.
458
464
  """
459
465
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
460
466
 
@@ -465,7 +471,7 @@ class VerificationTemplate(pulumi.CustomResource):
465
471
  __props__.__dict__["name"] = name
466
472
  return VerificationTemplate(resource_name, opts=opts, __props__=__props__)
467
473
 
468
- @property
474
+ @_builtins.property
469
475
  @pulumi.getter
470
476
  def args(self) -> pulumi.Output[Optional[Sequence['outputs.VerificationTemplateArg']]]:
471
477
  """
@@ -473,7 +479,7 @@ class VerificationTemplate(pulumi.CustomResource):
473
479
  """
474
480
  return pulumi.get(self, "args")
475
481
 
476
- @property
482
+ @_builtins.property
477
483
  @pulumi.getter
478
484
  def metrics(self) -> pulumi.Output[Optional[Sequence['outputs.VerificationTemplateMetric']]]:
479
485
  """
@@ -481,9 +487,9 @@ class VerificationTemplate(pulumi.CustomResource):
481
487
  """
482
488
  return pulumi.get(self, "metrics")
483
489
 
484
- @property
490
+ @_builtins.property
485
491
  @pulumi.getter
486
- def name(self) -> pulumi.Output[str]:
492
+ def name(self) -> pulumi.Output[_builtins.str]:
487
493
  """
488
494
  Identifier name for Ocean CD Verification Template. Must be unique.
489
495
  """