Xabaril/AspNetCore.Diagnostics.HealthChecks

Ability to run all tests locally

Open

#2,335 opened on 2024年12月5日

GitHub で見る
 (6 comments) (1 reaction) (1 assignee)C# (3,776 stars) (737 forks)batch import
Ups for grabsgood first issuehelp wanted

説明

Some of our tests depend on external services, And they can not run locally unless we manually perform some work.

We configured CI to run these external services.

For example, Milvus uses the docker compose file.

https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks/blob/78d664e13e0fc27c1b79b1706849315cfe87dbab/.github/workflows/healthchecks_milvus_ci.yml#L33-L40

Elasticsearch is configured by services in actions.

https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks/blob/78d664e13e0fc27c1b79b1706849315cfe87dbab/.github/workflows/healthchecks_elasticsearch_ci.yml#L30-L38

We should change these tests to use TestContainer like the Aspire team did.

Update

We migrate the HealthChecks.Redis tests to Testcontainer in #2345. Let's use that PR as a sample and migrate the other tests.

Check Lists

  • HealthChecks.ApplicationStatus
  • HealthChecks.ArangoDb
  • HealthChecks.Aws.S3
  • HealthChecks.Aws.SecretsManager
  • HealthChecks.Aws.Sns
  • HealthChecks.Aws.Sqs
  • HealthChecks.Aws.SystemsManager
  • HealthChecks.Azure.Data.Tables
  • HealthChecks.Azure.IoTHub
  • HealthChecks.Azure.KeyVault.Secrets
  • HealthChecks.Azure.Messaging.EventHubs
  • HealthChecks.Azure.Storage.Blobs
  • HealthChecks.Azure.Storage.Files.Shares
  • HealthChecks.Azure.Storage.Queues
  • HealthChecks.AzureApplicationInsights
  • HealthChecks.AzureDigitalTwin
  • HealthChecks.AzureKeyVault
  • HealthChecks.AzureSearch
  • HealthChecks.AzureServiceBus
  • HealthChecks.ClickHouse (#2412)
  • HealthChecks.Consul
  • HealthChecks.CosmosDb
  • HealthChecks.Dapr
  • HealthChecks.DynamoDb
  • HealthChecks.Elasticsearch
  • HealthChecks.EventStore
  • HealthChecks.EventStore.gRPC
  • HealthChecks.Gcp.CloudFirestore
  • HealthChecks.Gremlin
  • HealthChecks.Hangfire
  • HealthChecks.IbmMQ
  • HealthChecks.InfluxDB
  • HealthChecks.Kafka(#2365)
  • HealthChecks.Kubernetes
  • HealthChecks.Milvus (#2360)
  • HealthChecks.MongoDb (#2351)
  • HealthChecks.MySql (#2353)
  • HealthChecks.Nats
  • HealthChecks.Network
  • HealthChecks.NpgSql (#2349)
  • HealthChecks.OpenIdConnectServer
  • HealthChecks.Oracle
  • HealthChecks.Prometheus.Metrics
  • HealthChecks.Publisher.ApplicationInsights
  • HealthChecks.Publisher.CloudWatch
  • HealthChecks.Publisher.Datadog
  • HealthChecks.Publisher.Prometheus
  • HealthChecks.Publisher.Seq
  • HealthChecks.Qdrant (#2362)
  • HealthChecks.Rabbitmq (#2352)
  • HealthChecks.Rabbitmq.v6 (#2352)
  • HealthChecks.RavenDB (#2408)
  • HealthChecks.Redis (#2345)
  • HealthChecks.SendGrid
  • HealthChecks.SignalR
  • HealthChecks.Solr
  • HealthChecks.Sqlite
  • HealthChecks.SqlServer (#2348)
  • HealthChecks.SurrealDb (#2402))
  • HealthChecks.System
  • HealthChecks.UI
  • HealthChecks.UI.Client
  • HealthChecks.UI.Core
  • HealthChecks.UI.Data
  • HealthChecks.UI.InMemory.Storage
  • HealthChecks.UI.K8s.Operator
  • HealthChecks.UI.MySql.Storage
  • HealthChecks.UI.PostgreSQL.Storage
  • HealthChecks.UI.SQLite.Storage
  • HealthChecks.UI.SqlServer.Storage
  • HealthChecks.Uris

CC @adamsitnik @eerhardt @unaizorrilla

コントリビューターガイド