如何使用带参数“--signature-policy”的 peer lifecycle chaincode approveformyorg 命令解决问题
How to solve the prob using peer lifecycle chaincode approveformyorg command with argument '--signature-policy'
我正在使用 Hyperledger Fabric v2.3。1.I 我正在尝试通过参数批准我的链码定义
--signature-policy "OR('Org1MSP.peer','Org2MSP.peer')" 而不是测试网络的默认背书。整个命令如下
peer lifecycle chaincode approveformyorg -o orderer.example.com:7050 \
--tls --cafile $ORDERER_CA --channelID mychannel --name fabcar \
--version 1.0 \
--package-id fabcar_1:762e0fe3dbeee0f7b08fb6200adeb4a3a20f649a00f168c0b3c2257e53b6e506 \
--sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
我得到了这个结果
2021-06-09 11:56:14.132 CST [chaincodeCmd] ClientWait -> INFO 001 txid [f77193563630eaca758a4e3e360e77625be3bba51a7ac361e0353291a9441ffc] committed with status (VALID) at localhost:7051
但是,当我提交链代码定义时(整个命令在下面),我收到了这个错误消息
peer lifecycle chaincode commit -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls --cafile $ORDERER_CA --channelID mychannel --name fabcar --peerAddresses localhost:7051 --tlsRootCertFiles $PEER_CA --version 1.0 --sequence 1
Error: proposal failed with status: 500 - failed to invoke backing implementation of 'CommitChaincodeDefinition': chaincode definition not agreed to by this org (Org1MSP)
怎么了?
添加标志--signature-policy
当你提交你的链代码时,就像这些
peer lifecycle chaincode commit -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls --cafile $ORDERER_CA --channelID mychannel --name fabcar --peerAddresses localhost:7051 --tlsRootCertFiles $PEER_CA --version 1.0 --sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
实际上,我的专业人士已经被 LI Xian.However 解决了,我发现了一些东西 confusing.When 我使用下面的命令通过参数 '--signature-policy' 更改默认背书策略。
peer lifecycle chaincode approveformyorg -o orderer.example.com:7050 \
--tls --cafile $ORDERER_CA --channelID mychannel --name fabcar \
--version 1.0 \
--package-id fabcar_1:762e0fe3dbeee0f7b08fb6200adeb4a3a20f649a00f168c0b3c2257e53b6e506 \
--sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
然后我输入 'peer lifecycle chaincode checkcommitreadiness' 子命令,我得到了这个令人困惑的结果。
{
"approvals": {
"Org1MSP": false,
"Org2MSP": false
}
}
结果显示我没有得到任何组织的任何批准,但我仍然可以提交我的链代码definition.Maybe这是 Fabric v2.3.1 的一个错误。
我正在使用 Hyperledger Fabric v2.3。1.I 我正在尝试通过参数批准我的链码定义 --signature-policy "OR('Org1MSP.peer','Org2MSP.peer')" 而不是测试网络的默认背书。整个命令如下
peer lifecycle chaincode approveformyorg -o orderer.example.com:7050 \
--tls --cafile $ORDERER_CA --channelID mychannel --name fabcar \
--version 1.0 \
--package-id fabcar_1:762e0fe3dbeee0f7b08fb6200adeb4a3a20f649a00f168c0b3c2257e53b6e506 \
--sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
我得到了这个结果
2021-06-09 11:56:14.132 CST [chaincodeCmd] ClientWait -> INFO 001 txid [f77193563630eaca758a4e3e360e77625be3bba51a7ac361e0353291a9441ffc] committed with status (VALID) at localhost:7051
但是,当我提交链代码定义时(整个命令在下面),我收到了这个错误消息
peer lifecycle chaincode commit -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls --cafile $ORDERER_CA --channelID mychannel --name fabcar --peerAddresses localhost:7051 --tlsRootCertFiles $PEER_CA --version 1.0 --sequence 1
Error: proposal failed with status: 500 - failed to invoke backing implementation of 'CommitChaincodeDefinition': chaincode definition not agreed to by this org (Org1MSP)
怎么了?
添加标志--signature-policy
当你提交你的链代码时,就像这些
peer lifecycle chaincode commit -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls --cafile $ORDERER_CA --channelID mychannel --name fabcar --peerAddresses localhost:7051 --tlsRootCertFiles $PEER_CA --version 1.0 --sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
实际上,我的专业人士已经被 LI Xian.However 解决了,我发现了一些东西 confusing.When 我使用下面的命令通过参数 '--signature-policy' 更改默认背书策略。
peer lifecycle chaincode approveformyorg -o orderer.example.com:7050 \
--tls --cafile $ORDERER_CA --channelID mychannel --name fabcar \
--version 1.0 \
--package-id fabcar_1:762e0fe3dbeee0f7b08fb6200adeb4a3a20f649a00f168c0b3c2257e53b6e506 \
--sequence 1 --signature-policy "OR ('Org1MSP.peer','Org2MSP.peer')"
然后我输入 'peer lifecycle chaincode checkcommitreadiness' 子命令,我得到了这个令人困惑的结果。
{
"approvals": {
"Org1MSP": false,
"Org2MSP": false
}
}
结果显示我没有得到任何组织的任何批准,但我仍然可以提交我的链代码definition.Maybe这是 Fabric v2.3.1 的一个错误。