Xabaril/AspNetCore.Diagnostics.HealthChecks

Ability to run all tests locally

Open

#2335 aperta il 5 dic 2024

Vedi su GitHub
 (6 commenti) (1 reazione) (1 assegnatario)C# (737 fork)batch import
Ups for grabsgood first issuehelp wanted

Metriche repository

Star
 (3776 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

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

Guida contributor