From 928883361c7620b42162bc6b4c91bd7c60233196 Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Wed, 24 Jul 2024 17:21:20 -0400 Subject: [PATCH 1/2] [tests] Workaround sqlserver 2022-latest latest image failing .. with testcontainers because the path `/opt/mssql-tools/bin/sqlcmd` changed to `/opt/mssql-tools18/bin/sqlcmd`. But this hardcoded path is being used in testcontainers, causing it to fail. https://github.com/testcontainers/testcontainers-dotnet/issues/1220 https://github.com/microsoft/mssql-docker/issues/892 --- .../SqlServerContainerFixture.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs b/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs index 674771ae56..81bb318295 100644 --- a/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs +++ b/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs @@ -3,6 +3,7 @@ using Aspire.Components.Common.Tests; using Aspire.Hosting; +using DotNet.Testcontainers.Builders; using Testcontainers.MsSql; using Xunit; @@ -21,6 +22,7 @@ public async Task InitializeAsync() { Container = new MsSqlBuilder() .WithImage($"{SqlServerContainerImageTags.Registry}/{SqlServerContainerImageTags.Image}:{SqlServerContainerImageTags.Tag}") + .WithWaitStrategy(Wait.ForUnixContainer().UntilCommandIsCompleted("/opt/mssql-tools18/bin/sqlcmd", "-C", "-Q", "SELECT 1;")) .Build(); await Container.StartAsync(); } From afdb4b2e329d1082853cb578a7c8996f1db5b518 Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Wed, 24 Jul 2024 17:25:13 -0400 Subject: [PATCH 2/2] add comment referencing the issue --- .../SqlServerContainerFixture.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs b/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs index 81bb318295..2d6fd2f50e 100644 --- a/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs +++ b/tests/Aspire.Microsoft.Data.SqlClient.Tests/SqlServerContainerFixture.cs @@ -22,7 +22,7 @@ public async Task InitializeAsync() { Container = new MsSqlBuilder() .WithImage($"{SqlServerContainerImageTags.Registry}/{SqlServerContainerImageTags.Image}:{SqlServerContainerImageTags.Tag}") - .WithWaitStrategy(Wait.ForUnixContainer().UntilCommandIsCompleted("/opt/mssql-tools18/bin/sqlcmd", "-C", "-Q", "SELECT 1;")) + .WithWaitStrategy(Wait.ForUnixContainer().UntilCommandIsCompleted("/opt/mssql-tools18/bin/sqlcmd", "-C", "-Q", "SELECT 1;")) // https://github.com/dotnet/aspire/issues/5057 .Build(); await Container.StartAsync(); }