@@ -146,6 +146,8 @@ class DeploymentEventTrigger(DeploymentResourceTrigger):
146
146
period of time.
147
147
"""
148
148
149
+ trigger_type = EventTrigger
150
+
149
151
type : Literal ["event" ] = "event"
150
152
151
153
after : Set [str ] = Field (
@@ -226,7 +228,7 @@ def enforce_minimum_within_for_proactive_triggers(cls, values: Dict[str, Any]):
226
228
return values
227
229
228
230
def as_trigger (self ) -> Trigger :
229
- return EventTrigger (
231
+ return self . trigger_type (
230
232
match = self .match ,
231
233
match_related = self .match_related ,
232
234
after = self .after ,
@@ -243,6 +245,8 @@ class DeploymentMetricTrigger(DeploymentResourceTrigger):
243
245
A trigger that fires based on the results of a metric query.
244
246
"""
245
247
248
+ trigger_type = MetricTrigger
249
+
246
250
type : Literal ["metric" ] = "metric"
247
251
248
252
posture : Literal [Posture .Metric ] = Field ( # type: ignore[valid-type]
@@ -256,7 +260,7 @@ class DeploymentMetricTrigger(DeploymentResourceTrigger):
256
260
)
257
261
258
262
def as_trigger (self ) -> Trigger :
259
- return MetricTrigger (
263
+ return self . trigger_type (
260
264
match = self .match ,
261
265
match_related = self .match_related ,
262
266
posture = self .posture ,
@@ -279,6 +283,8 @@ class DeploymentCompoundTrigger(DeploymentCompositeTrigger):
279
283
"""A composite trigger that requires some number of triggers to have
280
284
fired within the given time period"""
281
285
286
+ trigger_type = CompoundTrigger
287
+
282
288
type : Literal ["compound" ] = "compound"
283
289
require : Union [int , Literal ["any" , "all" ]]
284
290
@@ -297,7 +303,7 @@ def validate_require(cls, values: Dict[str, Any]) -> Dict[str, Any]:
297
303
return values
298
304
299
305
def as_trigger (self ) -> Trigger :
300
- return CompoundTrigger (
306
+ return self . trigger_type (
301
307
require = self .require ,
302
308
triggers = self .triggers ,
303
309
within = self .within ,
@@ -309,10 +315,12 @@ class DeploymentSequenceTrigger(DeploymentCompositeTrigger):
309
315
"""A composite trigger that requires some number of triggers to have fired
310
316
within the given time period in a specific order"""
311
317
318
+ trigger_type = SequenceTrigger
319
+
312
320
type : Literal ["sequence" ] = "sequence"
313
321
314
322
def as_trigger (self ) -> Trigger :
315
- return SequenceTrigger (
323
+ return self . trigger_type (
316
324
triggers = self .triggers ,
317
325
within = self .within ,
318
326
job_variables = self .job_variables ,
0 commit comments