An automation framework for rapidly and consistently deploying production-ready DLT platforms
Blockchain Automation Framework delivers an automation framework for rapidly and consistently deploying production-ready DLT platforms to cloud infrastructure.
Blockchain Automation Framework makes use of Ansible, Helm, and Kubernetes to deploy production DLT networks. Specifically, it makes use of Ansible for configuration of the network by DevOps Engineers. It then uses Helm charts as instructions for deploying the necessary components to Kubernetes. Kubernetes was chosen to allow for Blockchain Automation Framework to deploy the DLT networks to any cloud that supports Kubernetes.
Blockchain Automation Framework initially supports Hyperledger Fabric and Corda. It is the intention to add support for Hyperledger Sawtooth, Hyperledger Indy and Quorum. Other DLT platforms can easily be added.
Detailed operator and developer documentation is available at our ReadTheDocs site.
The documentation can also be built locally be following instructions in the docs
folder.
For Hyperledger Fabric, we use the official Docker containers provided by that project. A number of different Ansible scripts will allow you to either create a new network (across clouds) or join an existing network.
For Corda, we build Docker containers from the Corda source. A number of different Ansible scripts will allow you to either create a new network (across clouds) or join an existing network.
For Hyperledger Indy, we build Docker containers from our source code. A number of different Ansible scripts will allow you to either create a new network (across clouds).
For Quorum, we use the official Docker containers provided by Quorum. A number of different Ansible scripts will allow you to either create a new network (across clouds) with choice of Consensus (between IBFT and RAFT) and a choice of Transaction Manager (between Tessera and Constellation).
We welcome your questions & feedback on our Rocketchat channel.
We welcome contributions to BAF in many forms, and there’s always plenty to do!
First things first, please review the Hyperledger Code of Conduct before participating.
There are many ways to contibute to BAF, both as a user and as a developer.
As a user, this can inlcude:
As a developer:
- if you only have a little time, consider picking up a “help-wanted” or "good-first-issue" task
- If you can commit to full-time development, then please contact us on our Rocketchat channel to work through logistics
If you are not using the provided Jeknins automation scripts, you can run the provisioning scripts within a docker runtime independent from your target Kubernetes cluster.
# Build provisioning image
docker build . -t hyperledgerlabs/baf-build
# Run the provisioning scripts
docker run -v $(pwd):/home/blockchain-automation-framework/ hyperledgerlabs/baf-build
Mark Wagner (Github: n1zyz, email: mwagner@redhat.com) - TSC Member