diff --git a/src/Aspire.Hosting.Milvus/Aspire.Hosting.Milvus.csproj b/src/Aspire.Hosting.Milvus/Aspire.Hosting.Milvus.csproj
index 4e9e2700c24..81e5c370305 100644
--- a/src/Aspire.Hosting.Milvus/Aspire.Hosting.Milvus.csproj
+++ b/src/Aspire.Hosting.Milvus/Aspire.Hosting.Milvus.csproj
@@ -19,7 +19,6 @@
-
@@ -29,8 +28,4 @@
-
-
-
-
diff --git a/src/Aspire.Hosting.Milvus/MilvusBuilderExtensions.cs b/src/Aspire.Hosting.Milvus/MilvusBuilderExtensions.cs
index e6261e0beee..5a023756048 100644
--- a/src/Aspire.Hosting.Milvus/MilvusBuilderExtensions.cs
+++ b/src/Aspire.Hosting.Milvus/MilvusBuilderExtensions.cs
@@ -1,15 +1,9 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
-using System.Data.Common;
using Aspire.Hosting.ApplicationModel;
using Aspire.Hosting.Milvus;
using Aspire.Hosting.Utils;
-using Aspire.Milvus.Client;
-using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.Diagnostics.HealthChecks;
-using Microsoft.Extensions.Logging;
-using Milvus.Client;
namespace Aspire.Hosting;
@@ -56,27 +50,6 @@ public static IResourceBuilder AddMilvus(this IDistributed
ParameterResourceBuilderExtensions.CreateDefaultPasswordParameter(builder, $"{name}-key");
var milvus = new MilvusServerResource(name, apiKeyParameter);
-
- MilvusClient? milvusClient = null;
-
- builder.Eventing.Subscribe(milvus, async (@event, ct) =>
- {
- var connectionString = await milvus.ConnectionStringExpression.GetValueAsync(ct).ConfigureAwait(false)
- ?? throw new DistributedApplicationException($"ConnectionStringAvailableEvent was published for the '{milvus.Name}' resource but the connection string was null.");
- milvusClient = CreateMilvusClient(@event.Services, connectionString);
- });
-
- var healthCheckKey = $"{name}_check";
- // TODO: Use health check from AspNetCore.Diagnostics.HealthChecks once it's implemented via this issue:
- // https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks/issues/2214
- builder.Services.AddHealthChecks()
- .Add(new HealthCheckRegistration(
- healthCheckKey,
- sp => new MilvusHealthCheck(milvusClient!),
- failureStatus: default,
- tags: default,
- timeout: default));
-
return builder.AddResource(milvus)
.WithImage(MilvusContainerImageTags.Image, MilvusContainerImageTags.Tag)
.WithImageRegistry(MilvusContainerImageTags.Registry)
@@ -93,8 +66,7 @@ public static IResourceBuilder AddMilvus(this IDistributed
{
ctx.EnvironmentVariables["COMMON_SECURITY_DEFAULTROOTPASSWORD"] = milvus.ApiKeyParameter;
})
- .WithArgs("milvus", "run", "standalone")
- .WithHealthCheck(healthCheckKey);
+ .WithArgs("milvus", "run", "standalone");
}
///
@@ -220,44 +192,4 @@ private static void ConfigureAttuContainer(EnvironmentCallbackContext context, M
// This will need to be refactored once updated service discovery APIs are available
context.EnvironmentVariables.Add("MILVUS_URL", $"{resource.PrimaryEndpoint.Scheme}://{resource.Name}:{resource.PrimaryEndpoint.TargetPort}");
}
- internal static MilvusClient CreateMilvusClient(IServiceProvider sp, string? connectionString)
- {
- if (connectionString is null)
- {
- throw new InvalidOperationException("Connection string is unavailable");
- }
-
- Uri? endpoint = null;
- string? key = null;
- string? database = null;
-
- if (Uri.TryCreate(connectionString, UriKind.Absolute, out var uri))
- {
- endpoint = uri;
- }
- else
- {
- var connectionBuilder = new DbConnectionStringBuilder
- {
- ConnectionString = connectionString
- };
-
- if (connectionBuilder.ContainsKey("Endpoint") && Uri.TryCreate(connectionBuilder["Endpoint"].ToString(), UriKind.Absolute, out var serviceUri))
- {
- endpoint = serviceUri;
- }
-
- if (connectionBuilder.ContainsKey("Key"))
- {
- key = connectionBuilder["Key"].ToString();
- }
-
- if (connectionBuilder.ContainsKey("Database"))
- {
- database = connectionBuilder["Database"].ToString();
- }
- }
-
- return new MilvusClient(endpoint!, apiKey: key!, database: database, loggerFactory: sp.GetRequiredService());
- }
}
diff --git a/tests/Aspire.Hosting.Milvus.Tests/MilvusFunctionalTests.cs b/tests/Aspire.Hosting.Milvus.Tests/MilvusFunctionalTests.cs
index 12678392606..fb404a80238 100644
--- a/tests/Aspire.Hosting.Milvus.Tests/MilvusFunctionalTests.cs
+++ b/tests/Aspire.Hosting.Milvus.Tests/MilvusFunctionalTests.cs
@@ -2,11 +2,9 @@
// The .NET Foundation licenses this file to you under the MIT license.
using Aspire.Components.Common.Tests;
-using Aspire.Hosting.ApplicationModel;
using Aspire.Hosting.Tests.Utils;
using Aspire.Hosting.Utils;
using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.Diagnostics.HealthChecks;
using Microsoft.Extensions.Hosting;
using Milvus.Client;
using Xunit;
@@ -201,44 +199,4 @@ public async Task WithDataShouldPersistStateBetweenUsages(bool useVolume)
}
}
}
-
- [Fact]
- [RequiresDocker]
- public async Task VerifyWaitForOnMilvusBlocksDependentResources()
- {
- var cts = new CancellationTokenSource(TimeSpan.FromMinutes(3));
- using var builder = TestDistributedApplicationBuilder.CreateWithTestContainerRegistry(testOutputHelper);
-
- var healthCheckTcs = new TaskCompletionSource();
- builder.Services.AddHealthChecks().AddAsyncCheck("blocking_check", () =>
- {
- return healthCheckTcs.Task;
- });
-
- var resource = builder.AddMilvus("resource")
- .WithHealthCheck("blocking_check");
-
- var dependentResource = builder.AddMilvus("dependentresource")
- .WaitFor(resource);
-
- using var app = builder.Build();
-
- var pendingStart = app.StartAsync(cts.Token);
-
- var rns = app.Services.GetRequiredService();
-
- await rns.WaitForResourceAsync(resource.Resource.Name, KnownResourceStates.Running, cts.Token);
-
- await rns.WaitForResourceAsync(dependentResource.Resource.Name, KnownResourceStates.Waiting, cts.Token);
-
- healthCheckTcs.SetResult(HealthCheckResult.Healthy());
-
- await rns.WaitForResourceHealthyAsync(resource.Resource.Name, cts.Token);
-
- await rns.WaitForResourceAsync(dependentResource.Resource.Name, KnownResourceStates.Running, cts.Token);
-
- await pendingStart;
-
- await app.StopAsync();
- }
}