y0zg / blockchain-automation-framework

An automation framework for rapidly and consistently deploying production-ready DLT platforms

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blockchain Automation Framework join the chat

License Documentation Status CII Best Practices Build Status

Short Description

An automation framework for rapidly and consistently deploying production-ready DLT platforms.

Scope of Lab

Blockchain Automation Framework delivers an automation framework for rapidly and consistently deploying production-ready DLT platforms to cloud infrastructure.

What is Blockchain Automation Framework?

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 currently supports Corda, Hyperledger Fabric, Hyperledger Indy and Quorum. It is the intention to add support for Hyperledger Besu and Corda Enterprise in the near future. Other DLT platforms can easily be added.

Getting Started

To get started with the framework quickly, follow our Getting Started guidelines.

Detailed operator and developer documentation is available on our ReadTheDocs site.

The documentation can also be built locally be following instructions in the docs folder.

Hyperledger Fabric

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.

Blockchain Automation Framework - Fabric

Corda Enterprise

For Corda Enterprise, we build Docker containers from the Corda source with licensed jars. A number of different Ansible scripts will allow you to either create a new network (across clouds) or join an existing network.

Blockchain Automation Framework - Corda Enterprise

Corda Opensource

For Corda Opensource, 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.

Blockchain Automation Framework - Corda

Hyperledger Indy

For Hyperledger Indy, we build Docker containers from our source code. A number of different Ansible scripts will allow you to create a new network (across clouds).

Blockchain Automation Framework - Indy

Quorum

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).

Blockchain Automation Framework - Quorum

Hyperledger Besu

For Hyperledger Besu, we use the official Docker containers provided by that project. A number of different Ansible scripts will allow you to create a new network (across clouds).

Blockchain Automation Framework - Besu

Contact

We welcome your questions & feedback on our Rocketchat channel.

Contributing

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:

Build

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 -it -v $(pwd):/home/blockchain-automation-framework/ hyperledgerlabs/baf-build

Initial Committers

Sponsor

Mark Wagner (Github: n1zyz, email: mwagner@redhat.com) - TSC Member

About

An automation framework for rapidly and consistently deploying production-ready DLT platforms

License:Apache License 2.0


Languages

Language:Kotlin 47.6%Language:Smarty 13.9%Language:JavaScript 13.8%Language:CSS 8.7%Language:Shell 8.3%Language:Batchfile 2.8%Language:Python 2.2%Language:Dockerfile 1.9%Language:HTML 0.8%