From 618aa95e2b09b1cc6571c402d9ee3535ea0d04c5 Mon Sep 17 00:00:00 2001 From: Erik Ejlskov Jensen Date: Sun, 29 Dec 2024 15:17:14 +0100 Subject: [PATCH 1/3] fixes #675 parts of #674 (maybe all?) --- .gitmodules | 3 --- Directory.Build.props | 2 +- sqltoolsservice | 1 - src/DacpacTool/DacpacTool.csproj | 23 +++++++++--------- .../Microsoft.SqlTools.ManagedBatchParser.dll | Bin 0 -> 171008 bytes src/DacpacTool/PackageDeployer.cs | 16 ++++++++---- test/DacpacTool.Tests/DacpacTool.Tests.csproj | 17 +++++++++++++ 7 files changed, 40 insertions(+), 22 deletions(-) delete mode 160000 sqltoolsservice create mode 100644 src/DacpacTool/Microsoft.SqlTools.ManagedBatchParser.dll diff --git a/.gitmodules b/.gitmodules index 543ffa9c..e69de29b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +0,0 @@ -[submodule "sqltoolsservice"] - path = sqltoolsservice - url = https://github.com/microsoft/sqltoolsservice.git diff --git a/Directory.Build.props b/Directory.Build.props index 9b1b069c..1b3f5880 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -2,7 +2,7 @@ - 3.6.146 + 3.7.112 all diff --git a/sqltoolsservice b/sqltoolsservice deleted file mode 160000 index 54fe38ef..00000000 --- a/sqltoolsservice +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 54fe38ef951605e313c7ddc0cc1df4815c85a53a diff --git a/src/DacpacTool/DacpacTool.csproj b/src/DacpacTool/DacpacTool.csproj index 417c4980..0c32bfc4 100644 --- a/src/DacpacTool/DacpacTool.csproj +++ b/src/DacpacTool/DacpacTool.csproj @@ -10,13 +10,14 @@ true - - ../../sqltoolsservice/src - $(SqlToolsPath)/Microsoft.SqlTools.ManagedBatchParser - + + + Always + + - + @@ -24,13 +25,11 @@ - - - - - - - + + + Microsoft.SqlTools.ManagedBatchParser.dll + True + diff --git a/src/DacpacTool/Microsoft.SqlTools.ManagedBatchParser.dll b/src/DacpacTool/Microsoft.SqlTools.ManagedBatchParser.dll new file mode 100644 index 0000000000000000000000000000000000000000..e9fb3a17bbeaa80b8b3d3c582f3dba6318ccdb6b GIT binary patch literal 171008 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 literal 0 HcmV?d00001 diff --git a/src/DacpacTool/PackageDeployer.cs b/src/DacpacTool/PackageDeployer.cs index 04dd8d20..3808462a 100644 --- a/src/DacpacTool/PackageDeployer.cs +++ b/src/DacpacTool/PackageDeployer.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.IO; using System.Linq; using Microsoft.Data.SqlClient; @@ -172,8 +173,7 @@ private void RunDeploymentScriptFromReferences(FileInfo dacpacPackage, string ta _console.WriteLine($"Running {scriptPrefix}-deployment script for referenced package '{referencedPackage.Name}' version '{referencedPackage.Version}'"); _currentSource = $"{referencedPackage.Name}/{scriptPrefix}deploy.sql"; - var scriptExecutionArgs = new ScriptExecutionArgs(script, connection, 0, executionEngineConditions, this); - AddSqlCmdVariables(scriptExecutionArgs, targetDatabaseName); + var scriptExecutionArgs = new ScriptExecutionArgs(script, connection, 0, executionEngineConditions, this, 1, AddSqlCmdVariables(targetDatabaseName)); engine.BatchParserExecutionError += (sender, args) => _console.WriteLine(args.Format(_currentSource)); engine.ScriptExecutionFinished += (sender, args) => _console.WriteLine($"Executed {scriptPrefix}-deployment script for referenced package " + @@ -182,13 +182,19 @@ private void RunDeploymentScriptFromReferences(FileInfo dacpacPackage, string ta } } - private void AddSqlCmdVariables(ScriptExecutionArgs args, string targetDatabaseName) + private Dictionary AddSqlCmdVariables(string targetDatabaseName) { - args.Variables.Add("DatabaseName", targetDatabaseName); + var result = new Dictionary(StringComparer.CurrentCultureIgnoreCase) + { + { "DatabaseName", targetDatabaseName } + }; + foreach (var variable in DeployOptions.SqlCommandVariableValues) { - args.Variables.Add(variable.Key, variable.Value); + result.Add(variable.Key, variable.Value); } + + return result; } private void HandleDacServicesMessage(object sender, DacMessageEventArgs args) diff --git a/test/DacpacTool.Tests/DacpacTool.Tests.csproj b/test/DacpacTool.Tests/DacpacTool.Tests.csproj index a8fa5eb6..e28c615c 100644 --- a/test/DacpacTool.Tests/DacpacTool.Tests.csproj +++ b/test/DacpacTool.Tests/DacpacTool.Tests.csproj @@ -10,6 +10,10 @@ false + + + + @@ -17,6 +21,9 @@ + + Always + Always @@ -28,6 +35,10 @@ + + + + @@ -45,6 +56,12 @@ + + + ..\..\src\DacpacTool\binaries\Microsoft.SqlTools.ManagedBatchParser.dll + + + Never From 4e335ff16ef03804cc2c1059690857a50b66c9c3 Mon Sep 17 00:00:00 2001 From: Erik Ejlskov Jensen Date: Mon, 30 Dec 2024 08:29:26 +0100 Subject: [PATCH 2/3] clean up --- src/DacpacTool/DacpacTool.csproj | 8 +++----- test/DacpacTool.Tests/DacpacTool.Tests.csproj | 6 +----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/DacpacTool/DacpacTool.csproj b/src/DacpacTool/DacpacTool.csproj index 0c32bfc4..d6407a1b 100644 --- a/src/DacpacTool/DacpacTool.csproj +++ b/src/DacpacTool/DacpacTool.csproj @@ -10,11 +10,6 @@ true - - - Always - - @@ -25,6 +20,9 @@ + + Always + Microsoft.SqlTools.ManagedBatchParser.dll diff --git a/test/DacpacTool.Tests/DacpacTool.Tests.csproj b/test/DacpacTool.Tests/DacpacTool.Tests.csproj index e28c615c..30fd66de 100644 --- a/test/DacpacTool.Tests/DacpacTool.Tests.csproj +++ b/test/DacpacTool.Tests/DacpacTool.Tests.csproj @@ -35,10 +35,6 @@ - - - - @@ -58,7 +54,7 @@ - ..\..\src\DacpacTool\binaries\Microsoft.SqlTools.ManagedBatchParser.dll + ..\..\src\DacpacTool\Microsoft.SqlTools.ManagedBatchParser.dll From 54ede71bdb998c5502b8121daa607f5314aa93ce Mon Sep 17 00:00:00 2001 From: Erik Ejlskov Jensen Date: Mon, 30 Dec 2024 11:15:53 +0100 Subject: [PATCH 3/3] undo bogus changes --- test/DacpacTool.Tests/DacpacTool.Tests.csproj | 7 ------- 1 file changed, 7 deletions(-) diff --git a/test/DacpacTool.Tests/DacpacTool.Tests.csproj b/test/DacpacTool.Tests/DacpacTool.Tests.csproj index 30fd66de..8e5d06b7 100644 --- a/test/DacpacTool.Tests/DacpacTool.Tests.csproj +++ b/test/DacpacTool.Tests/DacpacTool.Tests.csproj @@ -10,10 +10,6 @@ false - - - - @@ -21,9 +17,6 @@ - - Always - Always