Peershares Developer Tools (work in progress)

This is a work in progress, but I’ve started to script the initialization of the tools that you’ll need to rapidly set up a development (and eventually, a “live” multi-node deployment) of Peershares. I grew tired of manually configuring this every time, so I figured I’d give it the “old college try” and pull together a bit of basic python to automate the process.

You can find the tools repo on Github: https://github.com/brossi/Peershares-dev-tools

To run it (only on Ubuntu, at this point):

$ git clone git@github.com:brossi/Peershares-dev-tools.git
$ cd Peershares-dev-tools/deploy
$ python env_setup.py

It’s very basic right now (it sets up required dependencies for cloning the Peershares repo), but if you check out the “Issues” section, you’ll see what I plan to include in the near future.

Next up, genesis block creation.

I’m sure that there are massive improvements that can be made to the scripts, either to streamline them or to refactor for an improved experience, so I’m all ears. Initially I wanted to get it working and ready to handle the most basic “happy/sad” paths, but improved error handling and statusing is something I’d like to include once the deployment steps have been covered.

Please let me know if you have any questions.

Have you looked into Docker.io ? It’s pretty much what you try to do but more standardized and can reuse similar steps of other containers,

I’ve seen it mentioned on Hacker News, but haven’t spent time reviewing it. I’ll take a look, thanks!

Edit: Hm… this is probably a good reason to stick with Python and bash for the time being, but I’ll dig in deeper, just in case there are viable work arounds:

“Mac, Windows and some Linux distributions cannot natively run Docker at this time so we help you setup a Ubuntu virtual machine and run Docker inside of that.”

ah right, forgot to mention that, :stuck_out_tongue:

UPDATED TOOLS

Rather than going the Python route, I’ve reworked the tools and created a new method that uses VirtualBox and Vagrant to quickly* spin up new pre-configured Peershares development machines.

https://github.com/brossi/peershares-development-tools

Known issue: The base “vagrant” ssh user doesn’t have all the permissions they need to compile the Peershares daemon without using sudo make -f makefile.unix (I’m working on fixing this). If you run into any other permissions-related issues during normal use, try sudo first, and please submit a comment on the issue that I opened for it.

This is version 0.1, and I have a lot of thoughts for how this can be made even better, over time. If people find this useful, let me know, because I’m planning on building a separate set of tools for Peercoin development, too, and I’ll share them with the community.

Please let me know if you have any questions.

Thanks Ben. I think this will prove very useful as we move forward.