question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

feat(fabric): install multiple chaincodes on peers

See original GitHub issue

Description :

Now BAF is supporting to install single chaincode on peer. I would like to install multiple chaincodes on peers

Proposal Summary:

would like to install multiple chaincodes on peers. And the proposal network.yaml would be like this

network.yaml


1. network:
2.   chaincodes:
3.     - chaincode1: 
4.         ........
5.     - chaincode2:
6.         ........    
7.     - chaincode3:
8.         ........
9.   organizations:
10.     - organization:
11.       name: <name of the org1>
12.       services:
13.         peers:
14.           - peer:
15.             name: peer0  
16.             chaincodes:
17.               - name: <Name of the chaincode>
18.                 version : <version of the chaincode> 
19.                 installed: true | false  # default value is false         
20.               - name: <Name of the chaincode>
21.                 version : <version of the chaincode>
22.                 installed: true | false  # default value is false 
23.           - peer:
24.             name: peer2
25.             chaincodes:
26.               - name: <Name of the chaincode>
27.                 version : <version of the chaincode> 
28.                 installed: true | false  # default value is false         
29.               - name: <Name of the chaincode>
30.                 version : <version of the chaincode> 
31.                 installed: true | false  # default value is false
32.     - organization:
33.       name: <name of the org2>
34.       services:
35.         peers:
36.           - peer:
37.             name: peer0
38.             chaincodes:
39.               - name: <Name of the chaincode>
40.                 version : <version of the chaincode> 
41.                 installed: true | false  # default value is false         
42.               - name: <Name of the chaincode>
43.                 version : <version of the chaincode> 
44.                 installed: true | false  # default value is false
45.           - peer:
46.             name: peer2
47.             chaincodes:
48.               - name: <Name of the chaincode>
49.                 version : <version of the chaincode>  
50.                 installed: true | false  # default value is false        
51.               - name: <Name of the chaincode>
52.                 version : <version of the chaincode> 
53.                 installed: true | false  # default value is false
54.       - organization:
55.         name: <name of the org3>
56.         services:
57.           peers:
58.             - peer:
59.               name: peer0
60.               chaincodes:
61.                 - name: <Name of the chaincode>
62.                   version : <version of the chaincode>  
63.                   installed: true | false  # default value is false        
64.                 - name: <Name of the chaincode>
65.                   version : <version of the chaincode> 
66.                   installed: true | false  # default value is false
67.             - peer:
68.               name: peer2
69.               chaincodes:
70.                 - name: <Name of the chaincode>
71.                   version : <version of the chaincode>  
72.                   installed: true | false  # default value is false        
73.                 - name: <Name of the chaincode>
74.                   version : <version of the chaincode>  
75.                   installed: true | false  # default value is false          
76.   channels:
77.     - channel:
78.       channel_name: <channel name1>
79.       chaincode: 
80.          - name: <chaincode name>
81.            version: <version of the chaincode>
82.          - name: <chaincode name>
83.            version: <version of the chaincode>
84.       participants:
85.         - organization:
86.           name: <name of the org 1>
87.           peers:
88.             - peer:
89.               name: peer0
90.             - peer:
91.               name: peer1
92.         - organization:
93.           name: <name of the org 2>
94.           peers:
95.             - peer:
96.               name: peer0
97.             - peer:
98.               name: peer1 
99.     - channel:
100.       channel_name: <channel name2>
101.       chaincode: 
102.          - name: <chaincode name>
103.            version: <version of the chaincode>
104.          - name: <chaincode name>
105.            version: <version of the chaincode>      
106.       participants:
107.         - organization:
108.           name: <name of the org 2>
109.           peers:
110.             - peer:
111.               name: peer0
112.             - peer:
113.               name: peer1
114.         - organization:
115.           name: <name of the org 3>
116.           peers:
117.             - peer:
118.               name: peer0
119.             - peer:
120.               name: peer1      

                       

Note :

Here with the chaincode section in the network.yaml file defines all the chaincode and its parameters . And in the remaining places where we need to use the chaincode just need to use the name and version of the chaincode.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:8 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
divyabhanu97commented, Jun 20, 2022

Hi Suvajith, Manual Deployment Steps: Step 1: Generation of certificates for organization that requires external chaincode Step 2: Create chaincode files with connection.json and metadata.json and package it in .tgz format. Make sure Connection.json should have server address and values of certificates generated. Step 3: Copy the packaged chaincode into organization containers and go into peer cli and install the chaincode using “peer lifecycle chaincode install <chaincode file>” Step 4: Create configmap for certificates generated and map the certificates with external chaincode deployment file, run external chaincode as pod &deployment and expose as a service Step 5: Use the exposed chaincode Service IP to create a DNS name. Step 6: Go inside the peer cli and approve and commit the chaincode If the commit is successful try to invoke the chaincode from cli and query. these manual steps are working fine for now, i am in the middle of automation with bevel…

1reaction
divyabhanu97commented, May 23, 2022

Hi Suvajit, i have tested the external chaincode deployment with kubernetes and bevel, changes pending with bevel, i am trying to complete it ASAP

Read more comments on GitHub >

github_iconTop Results From Across the Web

feat(fabric): install multiple chaincodes on peers #1224 - GitHub
Description : Now BAF is supporting to install single chaincode on peer. I would like to install multiple chaincodes on peers Proposal ...
Read more >
Using external chaincodes on multiple peers of the same Org?
I am using Fabric 2.0 and external chaincode feature ...
Read more >
Setting up a Hyperledger Fabric Network with Multiple ...
This article will help you understand how to setup an Fabric network that involves multiple chaincodes and multiple channels.
Read more >
Chaincode Extension in Peer Organizations | by KC Tam
Step 1: Bring up a Fabric Host and prepare · Step 2: Bring up First Network without default chaincode · Step 3: Install...
Read more >
Planning for a production peer - Hyperledger Fabric Docs
Note: « chaincode » refers to the packages that are installed on peers, ... about a peer you will deploy and join to...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found