Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,6 @@
"description": "Trigger description.",
"type": "string"
},
"pipelines": {
"type": "array",
"items": {
"$ref": "../datafactory.json#/definitions/TriggerPipelineReference"
},
"description": "Pipelines that need to be started."
},
"runtimeState": {
"$ref": "#/definitions/TriggerRuntimeState",
"description": "Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger.",
Expand All @@ -48,12 +41,30 @@
"modelAsString": true
}
},
"MultiplePipelineTrigger": {
"x-ms-discriminator-value": "MultiplePipelineTrigger",
"description": "Base class for all triggers that support one to many model for trigger to pipeline.",
"allOf": [
{
"$ref": "#/definitions/Trigger"
}
],
"properties": {
"pipelines": {
"type": "array",
"items": {
"$ref": "../datafactory.json#/definitions/TriggerPipelineReference"
},
"description": "Pipelines that need to be started."
}
}
},
"ScheduleTrigger": {
"description": "Trigger that creates pipeline runs periodically, on schedule.",
"type": "object",
"allOf": [
{
"$ref": "#/definitions/Trigger"
"$ref": "#/definitions/MultiplePipelineTrigger"
}
],
"properties": {
Expand Down Expand Up @@ -219,7 +230,7 @@
"type": "object",
"allOf": [
{
"$ref": "#/definitions/Trigger"
"$ref": "#/definitions/MultiplePipelineTrigger"
}
],
"properties": {
Expand Down Expand Up @@ -250,6 +261,97 @@
"required": [
"typeProperties"
]
},
"TumblingWindowTrigger": {
"description": "Trigger that schedules pipeline runs for all fixed time interval windows from a start time without gaps and also supports backfill scenarios (when start time is in the past).",
"type": "object",
"allOf": [
{
"$ref": "#/definitions/Trigger"
}
],
"properties": {
"pipeline": {
"$ref": "../datafactory.json#/definitions/TriggerPipelineReference",
"description": "Pipeline for which runs are created when an event is fired for trigger window that is ready."
},
"typeProperties": {
"description": "Tumbling Window Trigger properties.",
"x-ms-client-flatten": true,
"properties": {
"frequency": {
"$ref": "#/definitions/TumblingWindowFrequency",
"description": "The frequency of the time windows."
},
"interval": {
"type": "integer",
"format": "int32",
"description": "The interval of the time windows. The minimum interval allowed is 15 Minutes."
},
"startTime": {
"type": "string",
"format": "date-time",
"description": "The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported."
},
"endTime": {
"type": "string",
"format": "date-time",
"description": "The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported."
},
"delay": {
"type": "object",
"description": "Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))."
},
"maxConcurrency": {
"description": "The max number of parallel time windows (ready for execution) for which a new run is triggered.",
"type": "integer",
"minimum": 1,
"maximum": 50
},
"retryPolicy": {
"$ref": "#/definitions/RetryPolicy",
"description": "Retry policy that will be applied for failed pipeline runs."
}
},
"required": [
"frequency",
"interval",
"startTime",
"maxConcurrency"
]
}
},
"required": [
"pipeline",
"typeProperties"
]
},
"TumblingWindowFrequency": {
"description": "Enumerates possible frequency option for the tumbling window trigger.",
"type": "string",
"enum": [
"Minute",
"Hour"
],
"x-ms-enum": {
"name": "TumblingWindowFrequency",
"modelAsString": true
}
},
"RetryPolicy": {
"description": "Execution policy for an activity.",
"properties": {
"count": {
"type": "object",
"description": "Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0."
},
"intervalInSeconds": {
"description": "Interval between retries in seconds. Default is 30.",
"type": "integer",
"minimum": 30,
"maximum": 86400
}
}
}
}
}