/fabric-sdk-py

Hyperledger Fabric Python SDK

Primary LanguagePythonApache License 2.0Apache-2.0

Fabric-SDK-Py

Fabric-SDK-Py is the Python 3.x implementation of Hyperledger Fabric SDK!

Currently, it mainly supports Fabric 1.4.x version.

Pre-requisite

The SDK requires the Python3 and Libssl pkgs.

Run the following cmd to install the pre-requisites if you do not have:

OS command
Ubuntu/Debian sudo apt-get install python-dev python3-dev libssl-dev
Redhat/CentOS sudo yum install python-devel python3-devel openssl-devel
MacOS brew install python python3 openssl

More details to build the crypto lib, can be found at Install Python Cryotography Lib.

Tutorial

Read the Tutorial (Source) to get familiar with the APIs.

Quick Testing

Use Virtual Env

virtualenv helps provide a clean environment, suggest to use it to test.

$ pip3 install virtualenv # install the virtualenv tool if not installed
$ make venv  # create a virtual env
$ source venv/bin/activate
$ # Do the testing here
$ deactivate  # deactive the virtual env
$ make clean # clean the temporary files

Run Integration Testing

The following command will run the testing.

$ make check # Check environment and run tests
$ make test # Only run test cases
$ tox -e py3 -- test/integration/ca_test.py  # Run specified test case

Generating Docker images

The following command will build the Docker image hyperledger/fabric-sdk-py.

$ make image

Regenerating protos

Make sure you have grpcio-tools installed (pip install grpcio-tools)

$ make proto

Change Logs

See Change Log for the commit logs. Run make changelog to update the changelog before new release.

Bug, Question and Code Contributions

Welcome for any kind of contributions, e.g., bugs, questions and documentation!

Recommend to read How to Contribution before taking action.

Other Important Links

Incubation Notice

This project is in Incubation now, and was proposed and approved by Hyperledger TSC at Sep 08, 2016.

License

The Hyperledger Fabric-SDK-Py software uses the Apache License Version 2.0 software license.

Creative Commons License
This document is licensed under a Creative Commons Attribution 4.0 International License.