Package: akc-mamba
AKC-MAMBA manualsI. Installation Instructions1. PrerequisitesBefore you begin, you should confirm that you have installed all the prerequisites below on the platform where you will be running AKC-Mamba.a. Install pip3If you have not installedpip3, use the following command to install:curl"https://bootstrap.pypa.io/get-pip.py"-o"get-pip.py"python3get-pip.py--userFor checking version :pip3--version2. Install AKC-Mambaa. Install AKC-Mamba from pip packageYou can use the following command:pip3installakc-mambaAfter install successfuly, you can get help by command:mamba--helpb. Install and run from source codeInstall required Python3 modules withpip3install-rrequirements.txtUse akc-mamba using python3 command:python3mamba.py--help3. Deploy and bootstrap network with CLIa. Prepare environmentWe now can use the Mamba tool to prepare required helm and k8s componentsmambaenvironmentAfter running this command, the program will ask you to fill in some of the most necessary information of creating a blockchain network:Cluster name: The name of the cluster network you created in stepSetup an AWS EKS cluster. Default:cluster-mamba-exampleKubenetes type: Currentlyakc-mambais supporting kubenetes of two types:eksandminikube. The default iseksEFS infomation: After you have entered theKubenetes type,mambawill automatically search your k8s network for information aboutefs. If you haveEFSinstalled before, the system will automatically update the config file located at~/.akachain/akc-mamba/mamba/config/.env. If not, you need to fill in the informationEFS SERVERbased on the installation stepSetup a Network File System. If the k8s type isminikubethen you do not need to enter this information.Important Note: You can check and update configuration parameters in~/.akachain/akc-mamba/mamba/config/.env, the file content is pretty much self-explained.b. Deploy and bootstrap networkmambastartThemamba startcommand executes a series of sub commands that installs various network components. For more information on each command for individual components, please refer to help sectionmamba--helpTo terminate the network, just runmambaterminateII. Development Guide1. Project structureMamba makes use ofClick_, an elegant python package for creating command line interfaces. The project structure is depicted in the tree below..
├──command_group_1
│├──commands.py
│├──__init__.py
│
├──utils
│├──__init__.py
│├──kube.py
├──settings
│├──settings.py
├──mamba.pyThere are 4 main components:mamba.py : The bootstrap instance module of Mambasettings : Contains global variables that are shared accross all sub modulescommand_group : Each command group is separated into its own directory.utils : helper functions that must be initialized via settings.py2. Coding ConventionPlease followPEP8- Style guide for Python Code.Another example can be foundhereThere are several notes that are different with other languagesFunction names should be lowercase, with words separated by underscores as necessary to improve readability.

Camel case is for class name3. Logging instructionA snake must know how hiss ... or sometimes rattle.Normally we can just use echo to print out message during execution
However:It is mandatory tohisswhen there is error.also,rattleis needed when a snake meet something ... at the beginning or at the end of an execution.For more information about logging, please follow the standard convention inmamba/utils/hiss.py