У меня есть сценарий PS, который должен развернуть проект на моем сервере SSIS.Когда я запускаю сгенерированную команду в консоли, она работает нормально, но когда команда выполняется из Powershell, происходит сбой из-за этой ошибки (windows):
НАЗВАНИЕ: Службы интеграции SQL Server
Неверный формат пути.Имя параметра: DestinationPath (ISDeploymentWizard)
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:
Недопустимый формат пути.(Microsoft.SqlServer.IntegrationServices.Wizard.Common)
Если я запускаю сгенерированную команду из консоли, она работает нормально:
D:\Deploy\ISDeploymentWizard.exe /Silent /ModelType:Project /SourcePath:"D:\Deploy\Receive\My_Beautiful_Project.ispac" /DestinationServer:"localhost" /DestinationPath:"/SSISDB/My Beautiful Project/My_Beautiful_Project" /ProjectPassword:"SuperSecretPassword"
Сценарий (благодаря предложениям ГюнтераШмитц и Янне Тукаанен):
#region script configuration
$SsisServer = "."
$ProjectFileFolder = "D:\Deploy\Receive"
$ProjectFileName = "My_Beautiful_Project.ispac"
$ProjectFilePassword = "SuperSecretPassword"
$FolderName = "My Beautiful Project"
$ProjectName = "My_Beautiful_Project"
$ISDeploymentWizard = "D:\Deploy\ISDeploymentWizard.exe"
#endregion
#region project deployment
# Create command line arguments
$DestinationPath = "/SSISDB/" + $FolderName + "/" + $ProjectName
$ProjectFilePath = $ProjectFileFolder + "\" + $ProjectFileName
$cmd = $ISDeploymentWizard
$arg1 = "/Silent"
$arg1a= "/ModelType:Project"
$arg2 = "/SourcePath:""$ProjectFilePath"""
$arg3 = "/DestinationServer:""$SsisServer"""
$arg4 = "/DestinationPath:""$DestinationPath"""
$arg5 = "/ProjectPassword:""$ProjectFilePassword"""
Write-Host "$cmd" $arg1 $arg1a $arg2 $arg3 $arg4 $arg5
& "$cmd" $arg1 $arg1a $arg2 $arg3 $arg4 $arg5
Write-Host "Done"
#endregion