2017-01-09 14 views
1

IBM Bluemixダッシュボードのswagger APIを使用して、IBM Hyperledgerブロックチェーンにチェーンコードを展開する手順に従っています。IBMブロックチェーン(Hyperledger) - 「チェーンコードを展開する際のエラー」

一部chaincodeを展開するためには、私はchaincodeリポジトリへのパスを含むJSON要求を提出する必要があります:私は展開しようとする前にuser_type1_0にログインした

{ 
    "jsonrpc": "2.0", 
    "method": "deploy", 
    "params": { 
    "type": 1, 
    "chaincodeID": { 
     "path": "https://github.com/series0ne/learn-chaincode/tree/master/finished" 
    }, 
    "ctorMsg": { 
     "function": "init", 
     "args": [ 
     "Hello, world" 
     ] 
    }, 
    "secureContext": "user_type1_0" 
    }, 
    "id": 0 
} 

が、これは結果であり、私は得る:

{ 
    "jsonrpc": "2.0", 
    "error": { 
    "code": -32001, 
    "message": "Deployment failure", 
    "data": "Error when deploying chaincode: Error getting chaincode package bytes: Error getting code 'go get' failed with error: \"exit status 1\"\npackage github.com/series0ne/learn-chaincode/tree/master/finished: cannot find package \"github.com/series0ne/learn-chaincode/tree/master/finished\" in any of:\n\t/opt/go/src/github.com/series0ne/learn-chaincode/tree/master/finished (from $GOROOT)\n\t/opt/gopath/_usercode_/424324290/src/github.com/series0ne/learn-chaincode/tree/master/finished (from $GOPATH)\n\t/opt/gopath/src/github.com/series0ne/learn-chaincode/tree/master/finished\n" 
    }, 
    "id": 0 
} 

アイデア?

P.S. Bluemix上のHyperledgerブロックチェーンのコミットレベル0.6.1を現在実行しています。

答えて

1

展開URLの「ツリー/マスター」部分を削除してみてください。下記のリンクの例は、URLのこの部分を含んでいないことに注意してください:それはコンパイルすることができるように、このURLがchaincodeをダウンロードするピア内部go get <url>コマンド、に渡されようとしている

https://github.com/IBM-Blockchain/learn-chaincode#deploying-the-chaincode

。したがって、このURLはこのコマンドで受け入れられる形式と一致する必要があります。

+0

"tree/master"を削除すると、404 :(https://github.com/series0ne/learn-chaincode/finished) – series0ne

+0

はい、ブラウザのURLを削除しても機能しません@AndrewTharpの答えに従って、展開要求で動作するはずです。 –

+0

v2.0ブランチを使用する場合、パスはgithub.com/GitHub_ID/learn-chaincode/tree/v2.0/finishedです。ただし、URLを変更すると、ブロックチェーンネットワークはファイルをマスターブランチ。だから何をすべきか? v2.0をマスターとマージしますか? – neuromouse

1

Daleのアドバイスに基づいてLearn Chaincodeの例を使って、https://github.com/GitHub_ID/learn-chaincode/tree/master/finishedからhttps://github.com/GitHub_ID/learn-chaincode/finishedにリポジトリのアドレスを変更しようとしました。このテストに使用されたブロックチェーンネットワークは、Bluemix上でHyperledger Fabricのバージョン0.6.1で動作していました。変更されたパスを使用すると、ブロックチェーンネットワークのインターフェイス内のAPIタブを使用してチェーンコードを展開することができました。

次の点を確認してください。

  • https://github.com/IBM-Blockchain/learn-chaincodeのv2.0ブランチは、Hyperledger Fabricバージョン0.6.1を実行しているブロックチェーンネットワークで使用する必要があります。あなたの個人的なフォークは、https://github.com/IBM-Blockchain/learn-chaincodeのv2.0ブランチでもですか?
  • user_type1_0ユーザを登録するのに使用された同じ検証ピアからチェーンコードのデプロイメントが発行されましたか?検証するピアは、[API]タブの上部で選択できます。 Learn Chaincode命令には、同じ検証ピアがユーザーを登録してチェーンコードを展開する必要があることを示すメモがあります。
+0

v2.0ブランチを使用している場合、パスはhttps://github.com/GitHub_ID/learn-chaincode/tree/v2.0/finishedですが、URLを変更すると、ブロックチェーンネットワークはマスターブランチからのファイルだから何をすべきか? v2.0をマスターとマージしますか? – neuromouse

+0

プライベートレポからチェーンコードを導入することは可能ですか? – series0ne

関連する問題