PowerShell Commands
2 TopicsRun powershell script on Devops with paramter
We have created below script which is exporting send port details from binding file post deployment and then comparing the send port name from a csv lookup sheet we are exporting a new csv file having some interface details. so the script is working fine when we are running on the server but we are trying to run the same script in azure Devops pipeline mentioned the script path and argument then it failing with below error. Script running fine in server: $finalBinding = [xml](Get-Content 'D:\agent\BIZTALK_DEPLOY1\r17\a/_BOS.DMS.Parts.Master/drop/Binding.xml') $finalBinding.BindingInfo.SendPortCollection.SendPort.Name | out-file "C:\Script\test.csv" import-csv "C:\Script\test.csv" -Header SendPort | sort SendPort | export-csv "C:\Script\output.csv" -NoTypeInformation Remove-Item –path "C:\Script\test.csv" $BindingData = Import-Csv -Path "C:\Script\output.csv" $LookupData = Import-Csv -Path "C:\Script\Interfacedetails.csv" $UserOutput = @() ForEach ($name in $BindingData) { $userMatch = $LookupData | where {$_.SendPort -eq $name.SendPort} If($userMatch) { $UserOutput += New-Object PsObject -Property @{InterfaceName=$userMatch.InterfaceName;ApplicationTo=$userMatch.ApplicationTo;ApplicationFrom =$userMatch.ApplicationFrom;InterfaceID=$userMatch.InterfaceID;DataObject=$userMatch.DataObject} } } $UserOutput | export-csv "C:\Script\FILE.csv" -NoTypeInformation Import-CSV C:\Script\FILE.csv | Select-Object InterfaceName, InterfaceID, DataObject, ApplicationFrom, ApplicationTo | Export-CSV C:\Script\ExportedCSV\Final.csv -NoTypeInformation Remove-Item –path "C:\Script\FILE.csv" Remove-Item –path "C:\Script\output.csv" Running the same script with Argument: $finalBinding = [xml](Get-Content –path $bindingpath) $finalBinding.BindingInfo.SendPortCollection.SendPort.Name | out-file "C:\Script\test.csv" import-csv "C:\Script\test.csv" -Header SendPort | sort SendPort | export-csv "C:\Script\output.csv" -NoTypeInformation Remove-Item –path "C:\Script\test.csv" $BindingData = Import-Csv -Path "C:\Script\output.csv" $LookupData = Import-Csv -Path "C:\Script\Interfacedetails.csv" $UserOutput = @() ForEach ($name in $BindingData) { $userMatch = $LookupData | where {$_.SendPort -eq $name.SendPort} If($userMatch) { $UserOutput += New-Object PsObject -Property @{InterfaceName=$userMatch.InterfaceName;ApplicationTo=$userMatch.ApplicationTo;ApplicationFrom =$userMatch.ApplicationFrom;InterfaceID=$userMatch.InterfaceID;DataObject=$userMatch.DataObject} } } $UserOutput | export-csv "C:\Script\FILE.csv" -NoTypeInformation Import-CSV C:\Script\FILE.csv | Select-Object InterfaceName, InterfaceID, DataObject, ApplicationFrom, ApplicationTo | Export-CSV C:\Script\ExportedCSV\Final.csv -NoTypeInformation Remove-Item –path "C:\Script\FILE.csv" Remove-Item –path "C:\Script\output.csv" I have declared the variable for $bindingpath = $(System.DefaultWorkingDirectory)/_BOS.DMS.Parts.Master/drop/Binding.xml But its failing with below error: Formatted command: . 'C:\Script\powershellscript.ps1' System.DefaultWorkingDirectory/_BOS.DMS.Parts.Master/drop/Binding.xml 2022-07-05T11:09:43.7113613Z ========================== Starting Command Output =========================== 2022-07-05T11:09:43.7250585Z ##[command]"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command ". 'D:\agent\BIZTALK_DEPLOY1_temp\9b6ede3b-af5a-4813-9fc9-9d343c347be2.ps1'" 2022-07-05T11:09:44.0505059Z At C:\Script\powershellscript.ps1:24 char:15 2022-07-05T11:09:44.0505593Z + Remove-Item –path C:\Script\output.csv 2022-07-05T11:09:44.0505849Z + ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-07-05T11:09:44.0506103Z The string is missing the terminator: ". 2022-07-05T11:09:44.0506460Z + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException 2022-07-05T11:09:44.0507271Z + FullyQualifiedErrorId : TerminatorExpectedAtEndOfString please help me to resolve the issue.949Views0likes1CommentCreate new VM -VMsize
Hello, I am trying to make a new VM using the command: $vmName = "vSQLUAT" $vmConfig = New-AzureRmVMConfig -VMName $vmName -VMSize "Standard_A2" However instead of a Standard_A2 I want to use a D3 v2 Promo, what do I need to put in place onf "Standard_A2" to achieve this? Is there a list of options for the -VMSize option?911Views0likes0Comments