3 implementations of IContainerRuntime
Aspire.Hosting (1)
Publishing\ContainerRuntimeBase.cs (1)
21
internal abstract class ContainerRuntimeBase<TLogger> :
IContainerRuntime
where TLogger : class
Aspire.Hosting.Tests (1)
Publishing\ContainerRuntimeBaseTests.cs (1)
388
private sealed class UnsupportedInspectionContainerRuntime :
IContainerRuntime
Aspire.Hosting.TestUtilities (1)
Publishing\FakeContainerRuntime.cs (1)
14
public sealed class FakeContainerRuntime(bool shouldFail = false, bool isRunning = true, string name = "fake-runtime") :
IContainerRuntime
, IContainerRuntimeResolver
86 references to IContainerRuntime
Aspire.Hosting (27)
ApplicationModel\DotnetProgramPublishing.cs (1)
173
var
containerRuntime = await services
DistributedApplicationBuilder.cs (2)
620
_innerBuilder.Services.AddKeyedSingleton<
IContainerRuntime
, DockerContainerRuntime>(KnownContainerRuntimes.Docker);
621
_innerBuilder.Services.AddKeyedSingleton<
IContainerRuntime
, PodmanContainerRuntime>(KnownContainerRuntimes.Podman);
Pipelines\DistributedApplicationPipeline.cs (1)
163
var
containerRuntime = await runtimeResolver.ResolveAsync(context.CancellationToken).ConfigureAwait(false);
Pipelines\PipelineStepHelpers.cs (1)
86
var
containerRuntime = await context.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(context.CancellationToken).ConfigureAwait(false);
Publishing\ContainerRuntimeReadiness.cs (3)
16
private readonly Dictionary<
IContainerRuntime
, Task> _checks = new(ReferenceEqualityComparer.Instance);
18
public Task EnsureRunningAsync(
IContainerRuntime
containerRuntime, CancellationToken cancellationToken)
36
private async Task EnsureRunningCoreAsync(
IContainerRuntime
containerRuntime, CancellationToken cancellationToken)
Publishing\ContainerRuntimeResolver.cs (5)
24
private Task<
IContainerRuntime
>? _cachedTask;
36
public Task<
IContainerRuntime
> ResolveAsync(CancellationToken cancellationToken = default)
66
private async Task<
IContainerRuntime
> ResolveInternalAsync(CancellationToken cancellationToken)
73
return _serviceProvider.GetRequiredKeyedService<
IContainerRuntime
>(configuredRuntime);
94
return _serviceProvider.GetRequiredKeyedService<
IContainerRuntime
>(runtimeKey);
Publishing\IContainerRuntimeResolver.cs (1)
21
Task<
IContainerRuntime
> ResolveAsync(CancellationToken cancellationToken = default);
Publishing\ResourceContainerImageManager.cs (12)
173
Func<
IContainerRuntime
, CancellationToken, Task> ensureContainerRuntimeRunning,
258
private async Task<
IContainerRuntime
> GetContainerRuntimeAsync(CancellationToken cancellationToken)
317
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
381
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
423
Func<
IContainerRuntime
, CancellationToken, Task> ensureContainerRuntimeRunning,
430
Func<
IContainerRuntime
, CancellationToken, Task> ensureContainerRuntimeRunning,
444
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
542
private async Task EnsureContainerRuntimeRunningAsync(
IContainerRuntime
containerRuntime, CancellationToken cancellationToken)
559
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
921
private static string? GetLocalRegistryName(
IContainerRuntime
containerRuntime)
940
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
1031
var
containerRuntime = await GetContainerRuntimeAsync(cancellationToken).ConfigureAwait(false);
Publishing\TemporaryContainerImage.cs (1)
13
internal sealed class TemporaryContainerImage(
IContainerRuntime
runtime, string imageReference, ILogger logger) : IAsyncDisposable
Aspire.Hosting.Azure (1)
AcrLoginService.cs (1)
85
var
containerRuntime = await _containerRuntimeResolver.ResolveAsync(cancellationToken).ConfigureAwait(false);
Aspire.Hosting.Azure.Sandboxes (4)
AzureSandboxContainerDeployment.cs (4)
991
var
runtime = await ResolveContainerRuntimeAsync(context).ConfigureAwait(false);
999
IContainerRuntime
runtime,
1105
var
runtime = await ResolveContainerRuntimeAsync(context).ConfigureAwait(false);
1132
private static Task<
IContainerRuntime
> ResolveContainerRuntimeAsync(PipelineStepContext context)
Aspire.Hosting.Azure.Tests (6)
AzureDeployerTests.cs (5)
1549
IContainerRuntime
? containerRuntime = null,
1581
builder.Services.AddSingleton<
IContainerRuntime
>(containerRuntime ?? new FakeContainerRuntime());
1582
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
2040
builder.Services.AddSingleton<
IContainerRuntime
>(new FakeContainerRuntime());
2041
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
FakeAcrLoginService.cs (1)
36
var
containerRuntime = await _containerRuntimeResolver.ResolveAsync(cancellationToken);
Aspire.Hosting.Blazor.Tests (1)
AddBlazorGatewayTests.cs (1)
243
var
runtime = await publishApp.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(TestContext.Current.CancellationToken);
Aspire.Hosting.Docker (4)
DockerComposeEnvironmentResource.cs (3)
164
var
runtime = await ctx.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(ctx.CancellationToken).ConfigureAwait(false);
437
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(context.CancellationToken).ConfigureAwait(false);
483
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(context.CancellationToken).ConfigureAwait(false);
DockerComposeServiceResource.cs (1)
338
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(context.CancellationToken).ConfigureAwait(false);
Aspire.Hosting.Docker.Tests (15)
DockerComposePublisherTests.cs (2)
973
builder.Services.AddSingleton<
IContainerRuntime
, FakeContainerRuntime>();
974
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
DockerComposeTests.cs (13)
688
builder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
689
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
719
builder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
720
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
737
private sealed class MockImageBuilderWithRuntime(
IContainerRuntime
runtime) : IResourceContainerImageManager
970
builder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
971
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
1007
builder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
1008
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
1039
deployBuilder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
1040
deployBuilder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
1063
destroyBuilder.Services.AddSingleton<
IContainerRuntime
>(fakeRuntime);
1064
destroyBuilder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
Aspire.Hosting.Dotnet.Tests (2)
DotnetProjectResourceTests.cs (2)
331
var
runtime = await app.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(cancellation.Token);
1117
IContainerRuntime
runtime,
Aspire.Hosting.MongoDB (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()
Aspire.Hosting.MySql (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()
Aspire.Hosting.PostgreSQL (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()
Aspire.Hosting.Redis (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()
Aspire.Hosting.SqlServer (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()
Aspire.Hosting.Tests (14)
ProjectResourceTests.cs (5)
910
builder.Services.AddSingleton<
IContainerRuntime
, FakeContainerRuntime>();
911
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
930
var fakeContainerRuntime = (FakeContainerRuntime)app.Services.GetRequiredService<
IContainerRuntime
>();
976
builder.Services.AddSingleton<
IContainerRuntime
>(containerRuntime);
977
builder.Services.AddSingleton<IContainerRuntimeResolver>(sp => (IContainerRuntimeResolver)sp.GetRequiredService<
IContainerRuntime
>());
Publishing\ContainerRuntimeBaseTests.cs (1)
111
IContainerRuntime
runtime = new UnsupportedInspectionContainerRuntime();
Publishing\ContainerRuntimeResolverTests.cs (7)
21
services.AddKeyedSingleton<
IContainerRuntime
, FakeContainerRuntime>("docker");
22
services.AddKeyedSingleton<
IContainerRuntime
, FakeContainerRuntime>("podman");
34
var
first = await resolver.ResolveAsync();
35
var
second = await resolver.ResolveAsync();
57
var
runtime = await resolver.ResolveAsync();
73
Task<
IContainerRuntime
>? firstTask = null;
87
var
runtime = await resolver.ResolveAsync(CancellationToken.None);
Publishing\ResourceContainerImageManagerTests.cs (1)
2149
var
containerRuntime = await app.Services.GetRequiredService<IContainerRuntimeResolver>().ResolveAsync(cts.Token);
Aspire.Hosting.TestUtilities (6)
Publishing\FakeContainerRuntime.cs (3)
47
public Func<CancellationToken, Task<
IContainerRuntime
>>? ResolveAsyncCallback { get; set; }
190
public Task<
IContainerRuntime
> ResolveAsync(CancellationToken cancellationToken = default)
193
return ResolveAsyncCallback?.Invoke(cancellationToken) ?? Task.FromResult<
IContainerRuntime
>(this);
Publishing\FakeContainerRuntimeExtensions.cs (3)
22
/// Registering only the keyed <see cref="
IContainerRuntime
"/> under <c>"docker"</c> is not enough:
34
services.AddKeyedSingleton<
IContainerRuntime
>(KnownContainerRuntimes.Docker, runtime);
35
services.AddKeyedSingleton<
IContainerRuntime
>(KnownContainerRuntimes.Podman, runtime);
Aspire.Hosting.Valkey (1)
src\Shared\ContainerReplCommand.cs (1)
41
var
runtime = await context.Services.GetRequiredService<IContainerRuntimeResolver>()