IT-SDK-Hyperledger-Fabric-Dev

From wiki.samerhijazi.net
Revision as of 18:25, 16 December 2021 by Samerhijazi (talk | contribs) (Chaincode Deployment)
Jump to navigation Jump to search

Resources Allowed for Certification

Hyperledger Fabric

Node.js / JavaScript

Components

  • MSP (Memberahip Service Provider)
  • Leger: Record of all state transitions, result of chaincode invocations "transactions".One Leger per Channel. Ledger consists of (world state/blockchain)
  • Channel:
  • Smart-Contract: defines business logic
  • Chaincode: SmartContracts packaged in Chaincode then deployed to blockchain-network.
  • Blockchain-Network:
  • Ordering-Service:

Begriffe

  • Client Application: interact with blockchain network on behalf of useres.
  • Wallet: contains a sset of user identities to connects to a channel
  • Gateway: manges the network interactions on behalf of application.

Chaincode Deployment

  • Package the chaincode.
  • Install the chaincode package.
  • Approval the chaincode definition.
  • Commit the chaincode defintion to a channel.

Commands

peer lifecycle chaincode package $PACKAGE_NAME.tar.gz --path $PATH_SOURCECODE --lang $LANG --label $LABEL
peer lifecycle chaincode install $PACKAGE_NAME.tat.gz
peer lifecycle chaincode queryinstalled
peer lifecycle chaincode approveformyorg --orderer $ORDERER --channelID $CHANNEL_ID --name $CHAINCOD_NAME --version 1.0 --package-id $PACKAGE_ID --sequence 1
peer lifecycle chaincode checkcommitreadiness --channelID $CHANNEL_ID --name $CHAINCOD_NAME --version 1.0 --sequence 1 --output json
peer lifecycle chaincode commit --orderer $ORDERER --channelID $CHANNEL_ID --name $CHAINCODE_NAME --version 1.0 --sequence 1 --peerAddresses $PEER_ADDRESSE
peer lifecycle chaincode querycommitted --channelID $CHANNEL_ID --name $CHAINCODE_NAME
peer chaincode invoke/query --orderer $ORDERER --channelID $CHANNEL_ID --name $CHAINCODE_NAME --ctor $MASSAGE

Chaincode Upgrade

  • Repackage the new chaincode.
  • Install the new chaincode package.
  • Approval the new chaincode definition.
  • Commit the new chaincode defintion to a channel.