Arcus.Scripting.LogicApps.psm1
<# .Synopsis Cancel all running instances of a specific Azure Logic App. .Description Cancel all running instances of a specific Azure Logic App. .Parameter ResourceGroupName The resource group containing the Azure Logic App. .Parameter LogicAppName The name of the Azure Logic App. .Parameter WorkflowName [Optional] The name of the workflow in the Azure Logic App Standard Site. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter MaximumFollowNextPageLink [Optional] The number of times the script should retrieve the next page of Logic App runs, if not specified the entire run history of the Logic App will be retrieved. #> function Cancel-AzLogicAppRuns { param( [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of the resource group is required"), [Parameter(Mandatory = $true)][string] $LogicAppName = $(throw "Name of the logic app is required"), [Parameter(Mandatory = $false)][string] $WorkflowName = "", [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][int] $MaximumFollowNextPageLink = 10 ) . $PSScriptRoot\Scripts\Cancel-AzLogicAppRuns.ps1 -ResourceGroupName $ResourceGroupName -LogicAppName $LogicAppName -WorkflowName $WorkflowName -EnvironmentName $EnvironmentName -MaximumFollowNextPageLink $MaximumFollowNextPageLink } Export-ModuleMember -Function Cancel-AzLogicAppRuns <# .Synopsis Resubmit all failed instances of a specific Azure Logic App. .Description Resubmit all failed instances of a specific Azure Logic App within a specified start and end time. .Parameter ResourceGroupName The resource group containing the Azure Logic App. .Parameter LogicAppName The name of the Azure Logic App. .Parameter WorkflowName [Optional] The name of the workflow in the Azure Logic App Standard Site. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter StartTime The start time of the failed instances of the Azure Logic App. .Parameter EndTime [Optional] The end time of the failed instances of the Azure Logic App. .Parameter MaximumFollowNextPageLink [Optional] The number of times the script should retrieve the next page of Logic App runs, if not specified the entire run history of the Logic App will be retrieved. #> function Resubmit-FailedAzLogicAppRuns { param( [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of the resource group is required"), [Parameter(Mandatory = $true)][string] $LogicAppName = $(throw "Name of the logic app is required"), [Parameter(Mandatory = $false)][string] $WorkflowName = "", [Parameter(Mandatory = $true)][datetime] $StartTime = $(throw "Start time is required"), [Parameter(Mandatory = $false)][datetime] $EndTime, [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][int] $MaximumFollowNextPageLink = 10 ) if ($EndTime) { . $PSScriptRoot\Scripts\Resubmit-FailedAzLogicAppRuns.ps1 -ResourceGroupName $ResourceGroupName -LogicAppName $LogicAppName -WorkflowName $WorkflowName -EnvironmentName $EnvironmentName -StartTime $StartTime -EndTime $EndTime -MaximumFollowNextPageLink $MaximumFollowNextPageLink } else { . $PSScriptRoot\Scripts\Resubmit-FailedAzLogicAppRuns.ps1 -ResourceGroupName $ResourceGroupName -LogicAppName $LogicAppName -WorkflowName $WorkflowName -EnvironmentName $EnvironmentName -StartTime $StartTime -MaximumFollowNextPageLink $MaximumFollowNextPageLink } } Export-ModuleMember -Function Resubmit-FailedAzLogicAppRuns <# .Synopsis Disable a specific Logic App. .Description Disables a specific Logic App. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter SubscriptionId [Optional] The Id of the subscription containing the Azure Logic App. When not provided, it will be retrieved from the current context (Get-AzContext). .Parameter ResourceGroupName The resource group containing the Azure Logic Apps. .Parameter LogicAppName The name of the Azure Logic App to be enabled. .Parameter WorkflowName [Optional] The name of the workflow in the Azure Logic App Standard Site. .Parameter ApiVersion [Optional] The version of the api to be used to disable the Azure Logic App. .Parameter AccessToken [Optional] The access token to be used to enable the Azure Logic App. #> function Disable-AzLogicApp { param( [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][string] $SubscriptionId = "", [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of the resource group is required"), [Parameter(Mandatory = $true)][string] $LogicAppName = $(throw "Name of the logic app is required"), [Parameter(Mandatory = $false)][string] $WorkflowName = "", [Parameter(Mandatory = $false)][string] $ApiVersion = "2016-06-01", [Parameter(Mandatory = $false)][string] $AccessToken = "" ) . $PSScriptRoot\Scripts\Disable-AzLogicApp.ps1 -EnvironmentName $EnvironmentName -SubscriptionId $SubscriptionId -ResourceGroupName $ResourceGroupName -LogicAppName $LogicAppName -WorkflowName $WorkflowName -ApiVersion $ApiVersion -AccessToken $AccessToken } Export-ModuleMember -Function Disable-AzLogicApp <# .Synopsis Disable all specified Logic Apps described in the order control JSON file. .Description Disables all specified Logic Apps in a specific order. The Logic Apps to be disabled and the order in which this will be done, will be defined in the configuration file (e.g. deploy-orderControl.json). .Parameter ResourceGroupName The resource group containing the Azure Logic Apps. .Parameter DeployFileName If your solution consists of multiple interfaces, you can specify the flow-specific name of the configuration file, if not, the script will look for a file named 'deploy-orderControl.json' by default. .Parameter ResourcePrefix [Optional] The prefix assigned to all Azure Logic Apps, which can differ per environment. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter ApiVersion [Optional] The version of the api to be used to disable the Azure Logic App. #> function Disable-AzLogicAppsFromConfig { param( [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of resource group is required"), [Parameter(Mandatory = $true)][string] $DeployFileName = "deploy-orderControl.json", [Parameter(Mandatory = $false)][string] $ResourcePrefix = "", [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][string] $ApiVersion = "2016-06-01" ) . $PSScriptRoot\Scripts\Disable-AzLogicAppsFromConfig.ps1 -ResourceGroupName $ResourceGroupName -DeployFileName $DeployFileName -ResourcePrefix $ResourcePrefix -EnvironmentName $EnvironmentName -ApiVersion $ApiVersion } Export-ModuleMember -Function Disable-AzLogicAppsFromConfig <# .Synopsis Enable a specific Logic App. .Description Enables a specific Logic App. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter SubscriptionId [Optional] The Id of the subscription containing the Azure Logic App. When not provided, it will be retrieved from the current context (Get-AzContext). .Parameter ResourceGroupName The resource group containing the Azure Logic Apps. .Parameter LogicAppName The name of the Azure Logic App to be enabled. .Parameter WorkflowName [Optional] The name of the workflow in the Azure Logic App Standard Site. .Parameter ApiVersion [Optional] The version of the api to be used to enable the Azure Logic App. .Parameter AccessToken [Optional] The access token to be used to enable the Azure Logic App. #> function Enable-AzLogicApp { param( [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][string] $SubscriptionId = "", [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of resource group is reqiured"), [Parameter(Mandatory = $true)][string] $LogicAppName = $(throw "Name of logic app is required"), [Parameter(Mandatory = $false)][string] $WorkflowName = "", [Parameter(Mandatory = $false)][string] $ApiVersion = "2016-06-01", [Parameter(Mandatory = $false)][string] $AccessToken = "" ) . $PSScriptRoot\Scripts\Enable-AzLogicApp.ps1 -EnvironmentName $EnvironmentName -SubscriptionId $SubscriptionId -ResourceGroupName $ResourceGroupName -LogicAppName $LogicAppName -WorkflowName $WorkflowName -ApiVersion $ApiVersion -AccessToken $AccessToken } Export-ModuleMember -Function Enable-AzLogicApp <# .Synopsis Enable all specified Logic Apps described in the order control JSON file. .Description Enables all specified Logic Apps in a specific order. The Logic Apps to be enabled and the order in which this will be done, will be defined in the configuration file (e.g. deploy-orderControl.json). .Parameter ResourceGroupName The resource group containing the Azure Logic Apps. .Parameter DeployFileName If your solution consists of multiple interfaces, you can specify the flow-specific name of the configuration file, if not, the script will look for a file named 'deploy-orderControl.json' by default. .Parameter ResourcePrefix [Optional] The prefix assigned to all Azure Logic Apps, which can differ per environment. .Parameter EnvironmentName [Optional] The Azure Cloud environment in which the Azure Logic App resides. .Parameter ApiVersion [Optional] The version of the api to be used to enable the Azure Logic App. #> function Enable-AzLogicAppsFromConfig { param( [Parameter(Mandatory = $true)][string] $ResourceGroupName = $(throw "Name of resource group is required"), [Parameter(Mandatory = $true)][string] $DeployFileName = "deploy-orderControl.json", [Parameter(Mandatory = $false)][string] $ResourcePrefix = "", [Parameter(Mandatory = $false)][string] $EnvironmentName = "AzureCloud", [Parameter(Mandatory = $false)][string] $ApiVersion = "2016-06-01" ) . $PSScriptRoot\Scripts\Enable-AzLogicAppsFromConfig.ps1 -ResourceGroupName $ResourceGroupName -DeployFileName $DeployFileName -ResourcePrefix $ResourcePrefix -EnvironmentName $EnvironmentName -ApiVersion $ApiVersion } Export-ModuleMember -Function Enable-AzLogicAppsFromConfig |