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.
- pulumi_spotinst/__init__.py +38 -1
- pulumi_spotinst/_inputs.py +4082 -846
- pulumi_spotinst/_utilities.py +15 -10
- pulumi_spotinst/account.py +171 -0
- pulumi_spotinst/aws/__init__.py +2 -1
- pulumi_spotinst/aws/_inputs.py +7292 -2871
- pulumi_spotinst/aws/account.py +25 -19
- pulumi_spotinst/aws/beanstalk.py +272 -190
- pulumi_spotinst/aws/credentials.py +42 -36
- pulumi_spotinst/aws/elastigroup.py +1321 -1176
- pulumi_spotinst/aws/managed_instance.py +633 -526
- pulumi_spotinst/aws/mr_scalar.py +827 -983
- pulumi_spotinst/aws/ocean.py +764 -570
- pulumi_spotinst/aws/ocean_extended_resource_definition.py +42 -36
- pulumi_spotinst/aws/ocean_launch_spec.py +580 -366
- pulumi_spotinst/aws/outputs.py +3421 -2205
- pulumi_spotinst/aws/suspension.py +51 -45
- pulumi_spotinst/azure/__init__.py +2 -1
- pulumi_spotinst/azure/_inputs.py +1492 -434
- pulumi_spotinst/azure/ocean_np.py +518 -464
- pulumi_spotinst/azure/ocean_np_virtual_node_group.py +479 -408
- pulumi_spotinst/azure/outputs.py +840 -345
- pulumi_spotinst/config/__init__.py +2 -1
- pulumi_spotinst/config/__init__.pyi +7 -2
- pulumi_spotinst/config/vars.py +11 -6
- pulumi_spotinst/credentials_azure.py +423 -0
- pulumi_spotinst/credentials_gcp.py +632 -0
- pulumi_spotinst/data_integration.py +58 -52
- pulumi_spotinst/ecs/__init__.py +2 -1
- pulumi_spotinst/ecs/_inputs.py +1164 -469
- pulumi_spotinst/ecs/ocean.py +711 -446
- pulumi_spotinst/ecs/ocean_launch_spec.py +367 -341
- pulumi_spotinst/ecs/outputs.py +463 -374
- pulumi_spotinst/elastigroup_azure_v3.py +985 -197
- pulumi_spotinst/gcp/__init__.py +2 -1
- pulumi_spotinst/gcp/_inputs.py +1061 -381
- pulumi_spotinst/gcp/elastigroup.py +885 -567
- pulumi_spotinst/gcp/outputs.py +542 -301
- pulumi_spotinst/gke/__init__.py +2 -1
- pulumi_spotinst/gke/_inputs.py +2071 -715
- pulumi_spotinst/gke/elastigroup.py +558 -382
- pulumi_spotinst/gke/ocean_import.py +379 -255
- pulumi_spotinst/gke/ocean_launch_spec.py +501 -384
- pulumi_spotinst/gke/ocean_launch_spec_import.py +42 -36
- pulumi_spotinst/gke/outputs.py +1063 -528
- pulumi_spotinst/health_check.py +116 -70
- pulumi_spotinst/notification_center.py +344 -0
- pulumi_spotinst/ocean_right_sizing_rule.py +515 -95
- pulumi_spotinst/oceancd/__init__.py +2 -1
- pulumi_spotinst/oceancd/_inputs.py +1709 -651
- pulumi_spotinst/oceancd/outputs.py +537 -526
- pulumi_spotinst/oceancd/rollout_spec.py +65 -59
- pulumi_spotinst/oceancd/strategy.py +37 -31
- pulumi_spotinst/oceancd/verification_provider.py +128 -122
- pulumi_spotinst/oceancd/verification_template.py +265 -259
- pulumi_spotinst/organization/__init__.py +2 -1
- pulumi_spotinst/organization/_inputs.py +151 -57
- pulumi_spotinst/organization/outputs.py +51 -46
- pulumi_spotinst/organization/policy.py +76 -70
- pulumi_spotinst/organization/programmatic_user.py +83 -77
- pulumi_spotinst/organization/user.py +126 -120
- pulumi_spotinst/organization/user_group.py +75 -69
- pulumi_spotinst/outputs.py +3005 -832
- pulumi_spotinst/provider.py +66 -40
- pulumi_spotinst/pulumi-plugin.json +1 -1
- pulumi_spotinst/spark/__init__.py +2 -1
- pulumi_spotinst/spark/_inputs.py +290 -81
- pulumi_spotinst/spark/ocean.py +169 -115
- pulumi_spotinst/spark/ocean_virtual_node_group.py +34 -28
- pulumi_spotinst/spark/outputs.py +136 -66
- pulumi_spotinst/stateful_node_azure.py +820 -784
- pulumi_spotinst/subscription.py +93 -87
- {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/METADATA +7 -6
- pulumi_spotinst-3.128.0a1767140134.dist-info/RECORD +77 -0
- {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/WHEEL +1 -1
- pulumi_spotinst-3.83.0a1720524486.dist-info/RECORD +0 -73
- {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
|
|
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
|
|
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[
|
|
134
|
-
metrics: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
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=[
|
|
149
|
-
arg_name
|
|
150
|
-
value
|
|
151
|
-
value_from
|
|
152
|
-
secret_key_ref
|
|
153
|
-
name
|
|
154
|
-
key
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
metrics=[
|
|
159
|
-
metrics_name
|
|
160
|
-
dry_run
|
|
161
|
-
interval
|
|
162
|
-
initial_delay
|
|
163
|
-
count
|
|
164
|
-
success_condition
|
|
165
|
-
failure_condition
|
|
166
|
-
failure_limit
|
|
167
|
-
consecutive_error_limit
|
|
168
|
-
providers
|
|
169
|
-
prometheus
|
|
170
|
-
prometheus_query
|
|
171
|
-
|
|
172
|
-
datadog
|
|
173
|
-
duration
|
|
174
|
-
datadog_query
|
|
175
|
-
|
|
176
|
-
new_relic
|
|
177
|
-
profile
|
|
178
|
-
new_relic_query
|
|
179
|
-
|
|
180
|
-
cloud_watch
|
|
181
|
-
duration
|
|
182
|
-
metric_data_queries
|
|
183
|
-
id
|
|
184
|
-
metric_stat
|
|
185
|
-
metric
|
|
186
|
-
metric_name
|
|
187
|
-
namespace
|
|
188
|
-
dimensions
|
|
189
|
-
dimension_name
|
|
190
|
-
dimension_value
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
metric_period
|
|
194
|
-
stat
|
|
195
|
-
unit
|
|
196
|
-
|
|
197
|
-
expression
|
|
198
|
-
label
|
|
199
|
-
return_data
|
|
200
|
-
period
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
web
|
|
204
|
-
method
|
|
205
|
-
url
|
|
206
|
-
web_headers
|
|
207
|
-
web_header_key
|
|
208
|
-
web_header_value
|
|
209
|
-
|
|
210
|
-
body
|
|
211
|
-
timeout_seconds
|
|
212
|
-
json_path
|
|
213
|
-
insecure
|
|
214
|
-
|
|
215
|
-
job
|
|
216
|
-
specs
|
|
217
|
-
backoff_limit
|
|
218
|
-
job_templates
|
|
219
|
-
template_specs
|
|
220
|
-
containers
|
|
221
|
-
container_name
|
|
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
|
|
227
|
-
|
|
228
|
-
restart_policy
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
jenkins
|
|
234
|
-
pipeline_name
|
|
235
|
-
tls_verification
|
|
236
|
-
timeout
|
|
237
|
-
jenkins_interval
|
|
238
|
-
jenkins_parameters
|
|
239
|
-
parameter_key
|
|
240
|
-
parameter_value
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
baseline
|
|
245
|
-
baseline_providers
|
|
246
|
-
prometheus
|
|
247
|
-
prometheus_query
|
|
248
|
-
|
|
249
|
-
datadog
|
|
250
|
-
duration
|
|
251
|
-
datadog_query
|
|
252
|
-
|
|
253
|
-
new_relic
|
|
254
|
-
profile
|
|
255
|
-
new_relic_query
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
min_range
|
|
259
|
-
max_range
|
|
260
|
-
threshold
|
|
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[
|
|
268
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
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=[
|
|
289
|
-
arg_name
|
|
290
|
-
value
|
|
291
|
-
value_from
|
|
292
|
-
secret_key_ref
|
|
293
|
-
name
|
|
294
|
-
key
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
metrics=[
|
|
299
|
-
metrics_name
|
|
300
|
-
dry_run
|
|
301
|
-
interval
|
|
302
|
-
initial_delay
|
|
303
|
-
count
|
|
304
|
-
success_condition
|
|
305
|
-
failure_condition
|
|
306
|
-
failure_limit
|
|
307
|
-
consecutive_error_limit
|
|
308
|
-
providers
|
|
309
|
-
prometheus
|
|
310
|
-
prometheus_query
|
|
311
|
-
|
|
312
|
-
datadog
|
|
313
|
-
duration
|
|
314
|
-
datadog_query
|
|
315
|
-
|
|
316
|
-
new_relic
|
|
317
|
-
profile
|
|
318
|
-
new_relic_query
|
|
319
|
-
|
|
320
|
-
cloud_watch
|
|
321
|
-
duration
|
|
322
|
-
metric_data_queries
|
|
323
|
-
id
|
|
324
|
-
metric_stat
|
|
325
|
-
metric
|
|
326
|
-
metric_name
|
|
327
|
-
namespace
|
|
328
|
-
dimensions
|
|
329
|
-
dimension_name
|
|
330
|
-
dimension_value
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
metric_period
|
|
334
|
-
stat
|
|
335
|
-
unit
|
|
336
|
-
|
|
337
|
-
expression
|
|
338
|
-
label
|
|
339
|
-
return_data
|
|
340
|
-
period
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
web
|
|
344
|
-
method
|
|
345
|
-
url
|
|
346
|
-
web_headers
|
|
347
|
-
web_header_key
|
|
348
|
-
web_header_value
|
|
349
|
-
|
|
350
|
-
body
|
|
351
|
-
timeout_seconds
|
|
352
|
-
json_path
|
|
353
|
-
insecure
|
|
354
|
-
|
|
355
|
-
job
|
|
356
|
-
specs
|
|
357
|
-
backoff_limit
|
|
358
|
-
job_templates
|
|
359
|
-
template_specs
|
|
360
|
-
containers
|
|
361
|
-
container_name
|
|
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
|
|
367
|
-
|
|
368
|
-
restart_policy
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
jenkins
|
|
374
|
-
pipeline_name
|
|
375
|
-
tls_verification
|
|
376
|
-
timeout
|
|
377
|
-
jenkins_interval
|
|
378
|
-
jenkins_parameters
|
|
379
|
-
parameter_key
|
|
380
|
-
parameter_value
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
baseline
|
|
385
|
-
baseline_providers
|
|
386
|
-
prometheus
|
|
387
|
-
prometheus_query
|
|
388
|
-
|
|
389
|
-
datadog
|
|
390
|
-
duration
|
|
391
|
-
datadog_query
|
|
392
|
-
|
|
393
|
-
new_relic
|
|
394
|
-
profile
|
|
395
|
-
new_relic_query
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
min_range
|
|
399
|
-
max_range
|
|
400
|
-
threshold
|
|
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[
|
|
421
|
-
metrics: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
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[
|
|
446
|
-
metrics: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
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[
|
|
456
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
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
|
"""
|