From 678e8d4fc498b3462b7c838a31757c62e8399241 Mon Sep 17 00:00:00 2001 From: Brian Bicknell Date: Sun, 2 Nov 2025 15:21:54 -0500 Subject: [PATCH] Implemented test containers host override. --- .gitea/workflows/ci.yml | 1 + JSMR.Tests/Fixtures/MariaDbContainerFixture.cs | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 8391615..e991051 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -14,6 +14,7 @@ jobs: env: TESTCONTAINERS_RYUK_DISABLED: 'true' TESTCONTAINERS_CHECKS_DISABLE: 'true' + TESTCONTAINERS_HOST_OVERRIDE: host.docker.internal steps: - uses: actions/checkout@v4 - uses: actions/setup-dotnet@v4 diff --git a/JSMR.Tests/Fixtures/MariaDbContainerFixture.cs b/JSMR.Tests/Fixtures/MariaDbContainerFixture.cs index 26d610d..fd855a5 100644 --- a/JSMR.Tests/Fixtures/MariaDbContainerFixture.cs +++ b/JSMR.Tests/Fixtures/MariaDbContainerFixture.cs @@ -30,7 +30,12 @@ public sealed class MariaDbContainerFixture : IAsyncLifetime await _container.StartAsync(); - RootConnectionString = _container.GetConnectionString(); + var hostOverride = Environment.GetEnvironmentVariable("TESTCONTAINERS_HOST_OVERRIDE"); + var host = string.IsNullOrWhiteSpace(hostOverride) ? "127.0.0.1" : hostOverride; + + RootConnectionString = _container.GetConnectionString() + .Replace("127.0.0.1", host) // normalize when running inside job container + .Replace("localhost", host); // Build the template ONCE with EF + your existing seed await MariaDbClone.CreateTemplateAsync(