NASA-IMPACT / veda-backend

Backend services for VEDA
Other
13 stars 5 forks source link

Where to find deployed dependency versions? #363

Open j08lue opened 6 months ago

j08lue commented 6 months ago

Our backend dependencies are often changing fast, as we are implementing fixes in upstream libraries like rio-tiler and want to try them out in our services.

For debugging and diagnostics, it would be super helpful to be able to see which versions are currently deployed on a stage.

What I am looking for is basically the output of pip freeze in the case of Python-based APIs, or at least the versions of major dependencies.

Some Python packages have interfaces like this, too, like rasterio.show_versions() - NB: As an API user, I am not interested in the GDAL version, for example. The rasterio version is enough.

Some places I can think of where this info would be nicely accessible would be:

Acceptance criteria

smohiudd commented 6 months ago

@amarouane-ABDELHAK, @anayeaye I think this is related to what we were discussing on Friday about a better way to store our dependency versions and using something other than setup.py

j08lue commented 6 months ago

I know we added /versions endpoints to some of our services - did we do that for all of them? And is this endpoint documented anywhere - probably the Swagger docs?

anayeaye commented 6 months ago

@j08lue I'm on the fence about adding the endpoint vs generating some other build artifact accessible to developers/maintainers only because it feels off to expose that information. If we do back port the endpoint to veda-backend services I think we should not include it in the swagger docs schema.