nosinovacao / name-sdk

A dependencies management library designed to expose and access dependencies information.
BSD 3-Clause "New" or "Revised" License
14 stars 4 forks source link

The dependencies.json file should allow an override check condition (for non NAME services) #37

Open ctorrao opened 5 years ago

ctorrao commented 5 years ago

When we have an external dependency that does not have NAME nor we can control the source code of that dependency it makes sense to allow a different dependency check. For instance, check for a simple HTTP GET an check the returned HTTP Status Code.

Proposal of change: { "name": "WebPA Tridium", "min_version": "1.0", "max_version": "1.*", "check_override_uri": "{connection_string}/health", "check_override_codes": "200;400;401", "connection_string": { "locator": "IConfiguration", "key": "WebPaHttpClient:BaseUrl" } }

New properties:

Symbianx commented 5 years ago

I understand the requirement, but I don't think the best way to handle it is to have such a generic implementation.

We already have the IVersionResolver interface which exposes the contract to fetch the state of a dependency. I think we should leverage this and allow the developer to specify its own implementation.

Just like what we did for the IConnectionStringProvider.