Open andyl opened 6 years ago
I'm considering another approach: distribute the exchange in a docker container. (or series of containers) In the past I was anti-Docker because immature technology, but had another look today and now Docker is looking good. Probably we'd distribute the exchange using Docker-compose, with minimum three containers: 1) the exchange, 2) a postgresql instance, 3) a nats instance.
For this to work, the exchange needs a solid GraphQL layer ( see #87 ). Anyone interested in taking this on?
I think this can work.
After some study - I think we can containerize the exchange and support our current development practices w/o GraphQL. Stay tuned! :-)
I look forward to your exploration findings :-)
Update: I came to believe that biting the GraphQL bullet now will be most efficient. Have started the implementation. The development sequence is to 1) add GraphQL to the exchange, 2) rewrite the CLI to use GraphQL, 3) rewrite the test_bench UI's to interact via GraphQL, 4) containerize everything. When this is done we can A) write Bugmark bots, webapps and phone apps in any language and B) install a local development environment on mac/linux/windows in less than five minutes and C) delete a lot of old code: RESTFUL API, language bindings, Exchange UI's will all be removed.
It it difficult to get a developer started with a local copy of Bugmark Exchange.
Goals:
Approaches:
[ci1] https://circleci.com/blog/how-to-build-immutable-infrastructure-with-packer-and-circleci-workflows/ [lin1] https://www.karlahlers.com/using-vagrant-linode-create-vps-minutes/ [lin2] https://www.linode.com/docs/applications/configuration-management/vagrant-linode-environments/ [lin3] https://github.com/displague/vagrant-linode