Prometheus: Use prometheus inside tezos
What
PART 3 - #7349 (closed)
This MR makes Octez use the local prometheus instead of the external one from opam.
Why
This is part of the monorepotisation effort.
We want to have prometheus into the monorepo so developers can make MRs across the library boundary and avoid the release process. By bringing it into tezos, we encourage tezos developers to pick up the maintenance and improvement of the project.
How
In a previous MR, we brought prometheus in the monorepo but only as data. So the first thing we need to do is remove prometheus from data only and include it in the build file gen. We follow the advice of build-gen to delete ungenerated opam and dune files.
Similar to data-encoding, the prometheus libraries will be part of octez-libs so that it can easily follow the release schedule of octez as there is no need for an independent release schedule at the moment. We include prometheus as part of octez-libs by prefixing octez-libs in front and pointing the opam field to octez-libs. Prometheus is also included in the sources of the octez product.
The octez deps lockfile had to be updated to move opam prometheus from the deps list to conflicts list.
Manually testing the MR
Opam prometheus and prometheus-app should be removed
make build-dev-deps
To test the library, run:
dune runtest prometheus
Finally, try to run
make
All should be good.