Skip to content

Commit 429ef98

Browse files
committed
feat: Reduce API calls for initialized resource reaper
1 parent 73c7f10 commit 429ef98

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

src/Testcontainers/Clients/DockerApiClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ await RuntimeInitialized.WaitAsync(ct)
119119
}
120120
Logger.LogInformation("{RuntimeInfo}", runtimeInfo);
121121
}
122-
catch(Exception e)
122+
catch (Exception e)
123123
{
124124
Logger.LogError(e, "Failed to retrieve Docker container runtime information");
125125
}

src/Testcontainers/Clients/TestcontainersClient.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,9 @@ public async Task<string> RunAsync(IContainerConfiguration configuration, Cancel
311311
{
312312
ImageInspectResponse cachedImage;
313313

314-
if (TestcontainersSettings.ResourceReaperEnabled && ResourceReaper.DefaultSessionId.Equals(configuration.SessionId))
314+
if (TestcontainersSettings.ResourceReaperEnabled
315+
&& ResourceReaper.IsUnavailable
316+
&& ResourceReaper.DefaultSessionId.Equals(configuration.SessionId))
315317
{
316318
var isWindowsEngineEnabled = await System.GetIsWindowsEngineEnabled(ct)
317319
.ConfigureAwait(false);

src/Testcontainers/Containers/ResourceReaper.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,13 @@ private ResourceReaper(Guid sessionId, IDockerEndpointAuthenticationConfiguratio
9090
public static Guid DefaultSessionId { get; }
9191
= Guid.NewGuid();
9292

93+
/// <summary>
94+
/// Gets a value indicating whether the default <see cref="ResourceReaper" /> instance is running and available.
95+
/// </summary>
96+
[PublicAPI]
97+
public static bool IsUnavailable
98+
=> _defaultInstance == null || _defaultInstance._disposed;
99+
93100
/// <summary>
94101
/// Gets the <see cref="ResourceReaper" /> session id.
95102
/// </summary>

0 commit comments

Comments
 (0)