adhoc/delete-debug.ps1
|
# Debug OFF $DebugPreference = "SilentlyContinue" Get-Module -Name "Az*" $SubscriptionName = 'MVP' Set-AzContext -Subscription $SubscriptionName $ResourceGroupName = 'rg-devops-factory' $Stage = 'UAT' $DataFactoryName = "SQLPlayerDemo-$Stage" $RootFolder = "x:\!WORK\GitAz\sqlplayer\DataServices\ADF-demo\SQLPlayerDemo\" $RootFolder = $env:ADF_ExampleCode $RootFolder $guid = '5889b15h' $DataFactoryName = (Split-Path -Path $env:ADF_ExampleCode -Leaf) + "-$guid" $DataFactoryName Clear-Host $opt = New-AdfPublishOption $opt.Includes.Add("trigger.*", "") $opt.DeleteNotInSource = $true Publish-AdfV2FromJson -DataFactoryName $DataFactoryName -ResourceGroupName $ResourceGroupName -Location 'NorthEurope' ` -Option $opt -RootFolder $RootFolder Get-AzDataFactoryV2Trigger -DataFactoryName $DataFactoryName -ResourceGroupName $ResourceGroupName | ft . "debug\~~Load-all-cmdlets-locally.ps1" $adf = Import-AdfFromFolder -FactoryName $script:DataFactoryName -RootFolder "$RootFolder" $adf.ResourceGroupName = "$ResourceGroupName"; $adf $triggersADF = Get-SortedTriggers -DataFactoryName $adf.Name -ResourceGroupName $adf.ResourceGroupName $triggersADF #$triggerNames = $adf.Triggers | ForEach-Object {$_.name} | ToArray #$triggersToStop = $triggerNames | Where-Object { ($triggersADF | Select-Object name).name -contains $_ } | ToArray $triggersToStop = $triggersADF | Where-Object { $_.RuntimeState -ne "Stopped" } | ToArray $triggersToStop $triggersToStop.GetType() $triggersToStop[0].Name $triggersToStop | ForEach-Object { Write-host "- Disabling trigger: $($_.Name)" Write-Host $_.Name } # Get $adfSource = Import-AdfFromFolder -FactoryName "$DataFactoryName" -RootFolder "$RootFolder" $adfIns = Get-AdfFromService -FactoryName "$DataFactoryName" -ResourceGroupName "$ResourceGroupName" $adfTargetObj = $adfIns.DataFlows[0] $adfSource.AllObjects().Count $adfIns.AllObjects().Count $i=1 $adfIns.AllObjects() | ForEach-Object { $sn = $_.Name $src = $adfSource.AllObjects() | Where-Object { $_.Name -eq $sn } Write-Host "$i) $sn = $($src.Name)" $i++ } Write-Host "Ins:" $adfIns.AllObjects() | ForEach-Object { Write-Host "$($_.Name)" } Write-Host "Src:" $adfSource.AllObjects() | ForEach-Object { Write-Host "$($_.Name)" } $adfIns.AllObjects() | Where-Object { $_.name -eq "LS_AzureKeyVault" } $adfSource.AllObjects() | Where-Object { $_.name -eq "LS_AzureKeyVault" } Remove-AdfObjectIfNotInSource -adfSource $adfSource -adfTargetObj $adfTargetObj -adfInstance $adfIns $adfTargetObj = $adfIns.AllObjects() | Where-Object { $_.Name -eq 'DS_BadgesDataRelay' } $refobj = $adfTargetObj Remove-AdfObject -obj $refobj -adfInstance $adfInstance $adfIns.AllObjects() | ForEach-Object { Remove-AdfObjectIfNotInSource -adfSource $adf -adfTargetObj $_ -adfInstance $adfIns } $adfTargetObj = ($adfIns.AllObjects() | Where-Object { $_.name -eq "LS_AzureKeyVault" })[0] Remove-AdfObjectIfNotInSource -adfSource $adf -adfTargetObj $adfTargetObj -adfInstance $adfIns $adfTargetObj = ($adfIns.AllObjects() | Where-Object { $_.name -eq "LS_AzureKeyVault" })[1] Remove-AdfObjectIfNotInSource -adfSource $adf -adfTargetObj $adfTargetObj -adfInstance $adfIns $adfSource = Import-AdfFromFolder -FactoryName "$DataFactoryName" -RootFolder "$RootFolder" $adfIns = Get-AdfFromService -FactoryName "$DataFactoryName" -ResourceGroupName "$ResourceGroupName" $adfTargetObj = ($adfIns.AllObjects() | Where-Object { $_.name -eq "pipeline2" })[0] $adfTargetObj Remove-AdfObjectIfNotInSource -adfSource $adfSource -adfTargetObj $adfTargetObj -adfInstance $adfIns #TODO: provide function to delete listed objects |