Make horizon optional at build/runtime
What problem does your feature solve?
Horizon is being deprecated slowly going forward. Many of latest use cases are now evolving to not use horizon and use rpc instead and possibly datastores(galexie).
What would you like to see?
A build pipeline parameter to toggle horizon's inclusion in the final quickstart image and runtime. the flag could be new parameter in build pipeline - images.json . This would optimize quickstart to be more efficient.
This does require refactoring friendbot to use rpc instead of horizon as considered in similar discussions.
What alternatives are there?
Work to change friendbot is bring tracked here:
- https://github.com/stellar/friendbot/issues/5
This would optimize quickstart to be more efficient.
One note about this is that removing horizon from the image at build time wouldn't optimize the image that much. Once friendbot doesn't support horizon we can make it so you can run quickstart without horizon at runtime, but it'll still be built in. That's already supported with the --enable parameter. Horizon is one of the fastest components to build, so removing it from the build pipeline itself won't speed up the overall build.