Skip to content

Commit

Permalink
Merge pull request #82 from mrpaulandrew/develop
Browse files Browse the repository at this point in the history
v1.9.2
  • Loading branch information
mrpaulandrew authored Nov 19, 2020
2 parents f42ec8b + 209d381 commit 77ad1f8
Show file tree
Hide file tree
Showing 50 changed files with 5,134 additions and 65 deletions.
3,858 changes: 3,858 additions & 0 deletions ARM Templates/Data Factory/v1.9.2 Export.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion DataFactory/pipeline/01-Grandparent.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"name": "_ProcFwk"
},
"annotations": [
"ADF.procfwk",
"procfwk",
"Grandparent"
]
}
Expand Down
9 changes: 5 additions & 4 deletions DataFactory/pipeline/02-Parent.json
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@
},
{
"name": "Check Previous Execution",
"description": "",
"description": "Query the current execution table for worker pipelines that require a clean up from the previous execution run.",
"type": "Lookup",
"dependsOn": [
{
Expand Down Expand Up @@ -352,7 +352,7 @@
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureOutput": true,
"secureInput": false
},
"userProperties": [],
Expand Down Expand Up @@ -909,6 +909,7 @@
},
{
"name": "Is Parent Already Running",
"description": "Establish before anything else if the parent pipeline is already running. Batch execution aware.",
"type": "ExecutePipeline",
"dependsOn": [],
"userProperties": [],
Expand Down Expand Up @@ -947,7 +948,7 @@
}
],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -994,7 +995,7 @@
"name": "_ProcFwk"
},
"annotations": [
"ADF.procfwk",
"procfwk",
"Parent"
]
}
Expand Down
4 changes: 2 additions & 2 deletions DataFactory/pipeline/03-Child.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"policy": {
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
},
Expand Down Expand Up @@ -111,7 +111,7 @@
"name": "_ProcFwk"
},
"annotations": [
"ADF.procfwk",
"procfwk",
"Child"
]
}
Expand Down
12 changes: 9 additions & 3 deletions DataFactory/pipeline/04-Infant.json
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,7 @@
"ifTrueActivities": [
{
"name": "Get Email Parts",
"description": "Return all required content from the metadata database to send an email alerting using the procfwk. The lookup returns the exact content for the function body request.",
"type": "Lookup",
"dependsOn": [],
"policy": {
Expand Down Expand Up @@ -395,6 +396,7 @@
},
{
"name": "Send Email",
"description": "Use an Azure Function to perform an SMTP client email send operation.",
"type": "AzureFunctionActivity",
"dependsOn": [
{
Expand Down Expand Up @@ -1194,6 +1196,7 @@
},
{
"name": "Validate Pipeline",
"description": "Query the target data factory and establish if the provided worker pipeline name is valid.",
"type": "AzureFunctionActivity",
"dependsOn": [
{
Expand Down Expand Up @@ -1246,11 +1249,11 @@
}
],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
"secureInput": true
},
"userProperties": [],
"typeProperties": {
Expand All @@ -1268,6 +1271,7 @@
},
{
"name": "Is Target Worker Validate",
"description": "True = the worker pipeline name is valid.\nFalse = the worker pipeline name is invalid. Raise an exception.",
"type": "IfCondition",
"dependsOn": [
{
Expand All @@ -1286,6 +1290,7 @@
"ifFalseActivities": [
{
"name": "Throw Exception - Invalid Infant",
"description": "Throw an exception with details about the invalid worker pipeline name.",
"type": "ExecutePipeline",
"dependsOn": [],
"userProperties": [],
Expand All @@ -1305,6 +1310,7 @@
},
{
"name": "Update Execution With Invalid Worker",
"description": "Update the current execution table with an informed status for the worker pipeline that couldn't be executed.",
"type": "SqlServerStoredProcedure",
"dependsOn": [],
"policy": {
Expand Down Expand Up @@ -1497,7 +1503,7 @@
"name": "_ProcFwk"
},
"annotations": [
"ADF.procfwk",
"procfwk",
"Infant"
]
}
Expand Down
34 changes: 26 additions & 8 deletions DataFactory/pipeline/Check For Running Pipeline.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{
"name": "Check For Running Pipeline",
"properties": {
"description": "For a given pipeline and optional batch name establish if a pipeline run is already in progress. Throw an exception if it it.",
"activities": [
{
"name": "Get Subscription",
"description": "Use the Azure Management API to return the current subscription.",
"type": "WebActivity",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand All @@ -25,6 +27,7 @@
},
{
"name": "Get Pipeline Runs",
"description": "Use the Azure Management API to return a list of pipeline runs within the given time window.",
"type": "WebActivity",
"dependsOn": [
{
Expand All @@ -41,7 +44,7 @@
}
],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand All @@ -66,6 +69,7 @@
},
{
"name": "Set Parsed Subscription",
"description": "Parse the subscription string value to return just the subscription ID.",
"type": "SetVariable",
"dependsOn": [
{
Expand All @@ -86,6 +90,7 @@
},
{
"name": "Filter Running Pipelines",
"description": "Filter the pipeline runs results for pipelines that exclude the current triggered run and that are currently running (in progress or queued).",
"type": "Filter",
"dependsOn": [
{
Expand All @@ -109,10 +114,11 @@
},
{
"name": "Get Resource Group",
"description": "Using the metadata properties table return the framework factory resource group name.",
"type": "Lookup",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -140,10 +146,11 @@
},
{
"name": "Get Query Run Days Value",
"description": "Using the metadata properties table return the run days value to provide the API request with a date range for pipeline executions.",
"type": "Lookup",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -171,6 +178,7 @@
},
{
"name": "If Pipeline Is Running",
"description": "If the running pipeline count is greater than or equal to one.\nTrue = raise an exception.",
"type": "IfCondition",
"dependsOn": [
{
Expand All @@ -188,7 +196,8 @@
},
"ifTrueActivities": [
{
"name": "Throw Exceptiion - Pipeline Running",
"name": "Throw Exception - Pipeline Running",
"description": "Using the utils pipeline raise an exception to stop the new trigger while a run is already in progress.",
"type": "ExecutePipeline",
"dependsOn": [],
"userProperties": [],
Expand All @@ -211,10 +220,11 @@
},
{
"name": "Get Execution Batch Status",
"description": "Using the metadata properties table return the flag to indicate if batch execution setting are enabled or disabled.",
"type": "Lookup",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -242,6 +252,7 @@
},
{
"name": "If Using Batch Executions",
"description": "True = batch executions are enabled.\nFalse = batch execution are disabled.",
"type": "IfCondition",
"dependsOn": [
{
Expand All @@ -266,6 +277,7 @@
"ifFalseActivities": [
{
"name": "Set Run Count Without Batch",
"description": "Set the pipelines running count variable to be tested later.",
"type": "SetVariable",
"dependsOn": [],
"userProperties": [],
Expand All @@ -281,6 +293,7 @@
"ifTrueActivities": [
{
"name": "Filter for Batch Name",
"description": "Further filter the return pipeline runs for any running pipelines with the same batch name value.",
"type": "Filter",
"dependsOn": [],
"userProperties": [],
Expand All @@ -297,6 +310,7 @@
},
{
"name": "Set Run Count for Batch",
"description": "Set the resulting pipeline running count variable to be tested later.",
"type": "SetVariable",
"dependsOn": [
{
Expand All @@ -320,6 +334,7 @@
},
{
"name": "Check for Valid Pipeline Name",
"description": "Use the Azure Management API to return and establish if the framework pipeline exists in the target Data Factory, including being deployed.",
"type": "WebActivity",
"dependsOn": [
{
Expand All @@ -336,7 +351,7 @@
}
],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -379,6 +394,9 @@
"folder": {
"name": "_ProcFwk/_ProcFwkUtils"
},
"annotations": []
"annotations": [
"procfwk",
"Utils"
]
}
}
9 changes: 7 additions & 2 deletions DataFactory/pipeline/Email Sender.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{
"name": "Email Sender",
"properties": {
"description": "Provide a simple abstract over the send email function with request body item exposed as pipeline parameters.",
"activities": [
{
"name": "Send Email",
"description": "Use an Azure Function to perform an SMTP client email send operation.",
"type": "AzureFunctionActivity",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -51,6 +53,9 @@
"folder": {
"name": "_ProcFwk/_ProcFwkUtils"
},
"annotations": []
"annotations": [
"procfwk",
"Utils"
]
}
}
9 changes: 7 additions & 2 deletions DataFactory/pipeline/Throw Exception.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
{
"name": "Throw Exception",
"properties": {
"description": "Provide a simple way of throwing an exception within Data Factory using TSQL error handling.",
"activities": [
{
"name": "Raise Error",
"description": "Using a SQL database to raise an error/exception but wrapped up as a data factory pipeline. Error message information exposed as a pipeline parameter.",
"type": "Lookup",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"timeout": "0.00:10:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
Expand Down Expand Up @@ -40,6 +42,9 @@
"folder": {
"name": "_ProcFwk/_ProcFwkUtils"
},
"annotations": []
"annotations": [
"procfwk",
"Utils"
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,18 @@ public async Task WhenPipelineRun()

#region Integration tests

[Test, Order(1)]
[Test]
public void ThenPipelineOutcomeIsSucceeded()
{
_helper.RunOutcome.Should().Be("Succeeded");
}
[Test, Order(2)]
[Test]
public void ThenCurrentExecutionTableIsEmpty()
{
_helper.RowCount("procfwk.CurrentExecution").Should().Be(0);
}

[Test, Order(3)]
[Test]
public void Then300ExecutionLogRecords()
{
_helper.RowCount("procfwk.ExecutionLog").Should().Be(300);
Expand Down
Loading

0 comments on commit 77ad1f8

Please sign in to comment.