Code Monkey home page Code Monkey logo

fabric-boilerplate's Introduction

Fabric boilerplate

This is a boilerplate application to get you up and running quickly with your own blockchain application. With this boilerplate you get an application that you can run locally as well as on IBM Bluemix. There is a simple Angular frontend application, a NodeJS backend application and of course a blockchain network, all running in containers. Locally, the boilerplate starts up a blockchain network using Docker containers; on Bluemix you can use the Blockchain service.

The boilerplate uses Hyperledger Fabric v0.6.1-preview and HFC 0.6.5.

It has been created and is maintained by the IBM CIC Benelux Blockchain team. Pull requests are more than welcome!

Prerequisites

To have good support in your IDE it's advisable to also install NPM, TypeScript, TSLint and Golang.

Getting started

  1. Fork this repo
  2. git clone your fork
  3. cd into the main directory and run npm install (or, if you don't have npm, ./install.sh).

This will pull the baseimage, peer and memberservice, download the Go dependencies of the chaincode and build your containers. It will take a while.

To get rid of missing module errors in your IDE, also run npm install from the server and client directory. This is not mandatory to run the application.

Running the application

To run the application, simply do docker-compose up.

This will start the three tiers of our application in separate containers:

  1. One validating peer
  2. The memberservice
  3. The NodeJS server, which registers the users and deploys the chaincode on first boot
  4. The Angular frontend, which connects to the server through a REST API.

The app is running on http://localhost:4200/. You can login with the user credentials you find in server/resources/testData.json

Development

Both the frontend and the server use filewatchers. Any change in the source files will trigger the transpiler and restart that part of the application.

Every time you pull changes, update the package.json of the server or client or change anything that might affect deployment of chaincode: docker-compose build.

When you end docker-compose, the containers still exist. They keep state:

  • Memberservice:
    • The registered users and webAppAdmin
  • Peer:
    • World state and ledger
  • Server:
    • chaincodeId of the last deployment
    • keyValStore with the private keys of the users

So if you start the app again, you can use your old chaincode. If you want to clear, just run with docker-compose up --force-recreate.

Currently if you change the chaincode you will have to recreate the containers. In the future we will add a filewatcher for the chaincode as well.

Notes:

  • if anyone updates the npm packages all developers have to rebuild the containers
  • if you add angular components from your host environment, make sure you have the correct angular-cli version! To be sure you can enter the client container and do it from there.

Updating the Fabric

  1. Update the HFC client in the package.json
  2. Update the commit level in blockchain/src/build-chaincode/vendor.yml.
  3. Delete the blockchain/src/build-chaincode/vendor directory
  4. npm run govend from the project root
  5. Update the baseimage and tag as latest
  6. docker-compose build

Tests

We support unittests for the server, client and chaincode. Especially for writing chaincode we recommend a test-driven approach to save time. You can find the commands to run the tests in the package.json in the root:

  • npm run test-go (blockchain/src/build-chaincode/chaincode_test.go contains mock functions for the chaincode stub)
  • npm run test-server (see the server/tests directory)
  • npm run test-client (each component has its own test, courtesy of angular-cli)
  • npm run test-e2e (needs the application to be running, it hits the API endpoints for end to end testing)
  • npm test runs all the tests except for e2e.

You can also run the server tests directly from the server directory with npm test and npm run e2e.

Troubleshooting

  • no rows in result set: The memberservice remembers something outdated. Stop your app and run ./clean.sh.
  • name or token does not match: The info in blockchain/data/keyValStore does not match with the connected memberservice. ./clean.sh.
  • Can't connect to docker daemon.: sudo usermod -aG docker $(whoami), logout and login again.
  • Error: /usr/src/app/node_modules/grpc/src/node/extension_binary/grpc_node.node: invalid ELF header: The node_modules of the server were built outside of the container. Delete this directory and make a change in server/package.json. Then do docker-compose build server.

HFC:

  • handshake failed: is there a certificate.pem in the blockchain/src/build-chaincode dir?
  • NPM modules not found: docker-compose build

Running on Bluemix

Registering and enrolling users

The SDK needs to register and enroll an admin user and any other users you would like to add. When this takes place the SDK receives enrollment certificates (eCerts) for each user. You only get these certificates once. So if you would redeploy or restart your app on Bluemix and the SDK wants to register and enroll the users again this would fail. Our solution to this problem is to register and enroll the users from your local environment before you deploy. When the eCerts are received, you can then push the app to Bluemix, including the eCerts. So the app that runs on Bluemix does not have to register and enroll the users again, because the eCerts are already available.

Don't lose server/resources/keyValueStore-bluemix! or else you'll have to recreate the blockchain service on Bluemix.

Deploying chaincode and the app

The easiest way to deploy a chaincode is to do it from you local environment before you push the app to Bluemix. We made a script that deploys the chaincode and stores the chaincodeID in a file. After that you push the app to Bluemix (including the chaincodeID file), your app can interact with the chaincode.

Perform the following steps to run the application on Bluemix:

Credentials and urls

  • Create a Blockchain Service on Bluemix
  • Update the manifest.yml file in the root of the project:
    • replace the names and hosts of both servers. The values can be anything, as long as they are unique.
    • replace the name of the service on the last line of the manifest. This should be the name of the Blockchain Service you just created.
  • Change the settings in client/src/environments/environment.prod.ts` to refer to the correct API endpoint of the server
  • Copy the credentials of the Blockchain Service and overwrite the credentials in server/resources/credentials.json. If you retrieve your Service Credentials from a new console instance of Bluemix then you will need to edit your credentials.json. Add "credentials": { to line 2 and then add a closing } to the final line. Your finished payload should be 233 lines.
  • If needed, change the cloudfoundry API url in the Dockerfile.
  • Delete the server/resources/keyValStore-bluemix directory if it exists, it contains keys to the previously used service.

Deployment

  • Get into our CloudFoundry container by running npm run cf.
  • From within the container, register the users and deploy the chaincode with cd server && npm run deploy (This can take a few minutes)
  • Open the dashboard of the blockchain service on Bluemix. Wait until you see the chaincode id appear on the Network tab. Ensure that it is running on all four peers and that all the way at the end it says Up for x seconds/minutes. The blocks with transactions for the deployment and the invocation of the testdata function should be visible on the Blockchain tab.
  • Deploy app to Bluemix: cd up one level and do cf push, still from within the container.

For assistance with the cloud foundry cli, visit the cloud foundry repo.

After the app has been pushed to Bluemix, you can view the logs with:

cf logs [NAME_OF_THE_APP] --recent

Where NAME_OF_THE_APP is the app name you provided in the manifest.yml file.

Support and documentation

Hyperledger project: https://www.hyperledger.org/
Official Hyperledger slack channel: https://hyperledgerproject.slack.com
IRC: #hyperledger on freenode.net
Wiki: https://wiki.hyperledger.org/
HFC: https://www.npmjs.com/package/hfc/
Bluemix https://console.ng.bluemix.net/docs/
IBM on blockchain: https://www.ibm.com/blockchain/what-is-blockchain.html

fabric-boilerplate's People

Contributors

arner avatar czar0 avatar dconroy avatar ewoldh avatar gijsboer avatar mastersingh24 avatar nickgaski avatar rascal-3 avatar rmoedt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fabric-boilerplate's Issues

Error deploying on Bluemix with Manual deployment

Hi Team,

Following the instructions from "Running on Bluemix" and when running the below:
"NODE_ENV=production SERVICE=BLOCKCHAIN_SERVICE_NAME DEPLOYANDEXIT=true GOPATH=$(pwd) GPRC_TRACE=all DEBUG=hfc node app.js"


Getting the below exception:

info: [SDK] Successfully registered WebAppAdmin
info: [SDK] Going to register users
debug: [SDK] Checking if redeploy is needed
hfc MemberServicesImpl.register: req={"enrollmentID":"john1","affiliation":"institution_a","account":"group1"} +4ms
hfc MemberServicesImpl.register: req={"enrollmentID":"jane1","affiliation":"institution_a","account":"group1"} +101ms
debug: Found chaincode id from file:
debug: [SDK] Going to deploy chaincode
hfc Member.deploy +7ms
hfc TransactionContext.deploy +1ms
hfc Received deploy request: {"fcn":"init","args":["1484143017972"],"chaincodePath":"chaincode","certificatePath":"/certs/peer/cert.pem"} +0ms
hfc [TransactionContext] No TCert cached. Retrieving one. +0ms
hfc Member.getNextTCert: key=null +0ms
hfc Member.getNextTCert: key=null, creating new getter +0ms
hfc shouldGetTCerts: yes, we have no tcerts +1ms
hfc register {"id":{"id":"john1"},"role":1,"attributes":[],"affiliation":"institution_a","registrar":{"id":{"id":"WebAppAdmin"},"roles":[],"delegateRoles":[]},"sig":{"type":0,"r":{"buffer":{"type":"Buffer","data":[57,55,49,48,51,56,49,55,54,49,56,48,52,50,49,57,56,55,49,53,57,51,56,52,49,49,49,49,55,54,56,53,54,49,57,48,48,53,48,52,48,54,56,57,48,50,55,51,49,52,54,54,48,54,52,48,51,51,53,54,49,56,57,57,56,48,52,57,51,55,50,51,49,53,57,57,51]},"offset":0,"markedOffset":-1,"limit":77,"littleEndian":false,"noAssert":false},"s":{"buffer":{"type":"Buffer","data":[49,55,52,54,52,51,57,50,48,53,51,48,49,51,54,55,56,53,57,57,51,52,51,49,55,50,50,56,53,51,48,56,51,52,53,51,51,53,56,48,49,57,48,55,49,54,54,55,48,53,53,56,54,57,51,56,52,51,48,56,48,57,50,53,49,50,49,51,55,48,54,48,54,51,56,55,48]},"offset":0,"markedOffset":-1,"limit":77,"littleEndian":false,"noAssert":false}}}: err={"code":2,"metadata":{"_internal_repr":{}}}, token=undefined +1s
hfc memberServices.register err=Error: Invalid affiliation group institution_a, secret=null +0ms
error: [SDK] Error registering and enrolling user john1 Error: Invalid affiliation group institution_a
at /Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:417:17

.........
...

hfc register {"id":{"id":"jane1"},"role":1,"attributes":[],"affiliation":"institution_a","registrar":{"id":{"id":"WebAppAdmin"},"roles":[],"delegateRoles":[]},"sig":{"type":0,"r":{"buffer":{"type":"Buffer","data":[55,53,53,52,49,57,49,56,54,48,52,48,52,49,48,56,50,50,52,55,49,56,51,48,48,51,55,49,54,52,49,54,55,50,50,55,57,48,48,49,56,50,56,56,54,52,49,57,57,50,49,54,53,55,56,49,50,50,55,50,48,50,54,51,52,48,53,48,48,48,48,54,54,52,55,49]},"offset":0,"markedOffset":-1,"limit":76,"littleEndian":false,"noAssert":false},"s":{"buffer":{"type":"Buffer","data":[56,49,51,53,50,57,56,48,48,50,56,54,51,54,55,56,53,51,51,54,49,51,51,49,57,49,56,55,54,56,48,54,48,56,55,49,55,54,55,53,57,54,49,52,55,57,51,48,57,48,57,51,51,51,50,50,57,57,50,52,57,49,50,54,56,52,55,52,52,53,56,56,53,57,56,51,52]},"offset":0,"markedOffset":-1,"limit":77,"littleEndian":false,"noAssert":false}}}: err={"code":2,"metadata":{"_internal_repr":{}}}, token=undefined +3ms
hfc memberServices.register err=Error: Invalid affiliation group institution_a, secret=null +0ms
error: [SDK] Error registering and enrolling user jane1 Error: Invalid affiliation group institution_a
at /Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:417:17
hfc Warning: problem parsing certificate bytes; retrying ... +8s Error: Wrong input string for convertion
at in_window.org.pkijs.asn1.GENERALIZEDTIME.fromString (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/asn1js/org/pkijs/asn1.js:4214:23)
at in_window.org.pkijs.asn1.GENERALIZEDTIME.fromBuffer (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/asn1js/org/pkijs/asn1.js:4145:71)
at in_window.org.pkijs.asn1.GENERALIZEDTIME.fromBER (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/asn1js/org/pkijs/asn1.js:4128:71)
at fromBER_raw (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/asn1js/org/pkijs/asn1.js:4968:39)
at Object.in_window.org.pkijs.fromBER (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/asn1js/org/pkijs/asn1.js:4998:16)
at in_window.org.pkijs.simpl.EXTENSION.fromSchema (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/pkijs/org/pkijs/x509_simpl.js:3636:36)
at new in_window.org.pkijs.simpl.EXTENSION (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/pkijs/org/pkijs/x509_simpl.js:3589:70)
at in_window.org.pkijs.simpl.CERT.fromSchema (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/pkijs/org/pkijs/x509_simpl.js:3939:38)
at new in_window.org.pkijs.simpl.CERT (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/pkijs/org/pkijs/x509_simpl.js:3855:65)
at new X509Certificate (/Users/indira/Workspaces/HFC/fabric-boilerplate/node_modules/hfc/lib/crypto.js:475:26)

Please let me know if any inputs to resolve this.

Thanks & Regards,
Indira

Trying to add thing for a user, but the thing is not reflected for the user

Hi All,

I am trying to add a thing for a user, but can't. Here's what log shows:

screen shot 2017-01-31 at 3 13 15 pm

The height is getting changed (incremented each time I add something), which means it is getting added to blockchain.

screen shot 2017-01-31 at 3 14 25 pm

As you see here, the number of things still stay the same (2 things), while I would suppose it should be 3 things.

Here's the method I added and it is working:

screen shot 2017-01-31 at 3 15 43 pm

How to reflect the added thing for the user?

Erro on Auto Redeployment

Please find below logs when it runs for auto redeployment after some changes on chaincode file.

debug: [SDK] Chaincode changed. Redeploying...
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file: dd9a29745edac15a8f9670ced54df58e9fa7cc402e1987a960cd9f33125f5331
debug: [SDK] Going to deploy chaincode
debug: [SDK] Chaincode changed. Redeploying...
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file: dd9a29745edac15a8f9670ced54df58e9fa7cc402e1987a960cd9f33125f5331
debug: [SDK] Going to deploy chaincode
error: [SDK] Failed to deploy chaincode
error: [SDK] Deploy error:
{ error: {},
msg: 'Error: Error reading deployment archive [/tmp/deployment-package.tar.gz]: Error: ENOENT: no such file or directory, open '/tmp/deployment-package.tar.gz'' }
events.js:141
throw er; // Unhandled 'error' event
^

Error: read ECONNRESET
at exports._errnoException (util.js:870:11)
at Pipe.onread (net.js:544:26)

@czar0 Please help me here too!

Import fabric/accesscontrol/impl not working

I am trying to include "github.com/hyperledger/fabric/accesscontrol/impl" as a import in the fabric-boilerplate example, but when I try to run govend, I get this error:

github.com/hyperledger/fabric/accesscontrol/impl bad ping: GetFileAttributesEx vendor\github.com\hyperledger\fabric\accesscontrol\impl: The system cannot find the path specif
ied.
github.com/magiconair/properties/_third_party/gopkg.in/check.v1 bad ping: GetFileAttributesEx vendor\github.com\magiconair\properties_third_party\gopkg.in\check.v1: The syst
em cannot find the path specified.

Is there something I am missing? I am new to Go.

Failing to run docker compose

fabric-boilerplate [master] :> docker-compose up
Pulling membersrvc (rikmoedt/fabric-membersrvc:0.5-dp)...
0.5-dp: Pulling from rikmoedt/fabric-membersrvc
6599cadaf950: Already exists
23eda618d451: Already exists
f0be3084efe9: Already exists
52de432f084b: Already exists
a3ed95caeb02: Pull complete
fe87512d962f: Already exists
3ab00b537a04: Already exists
394221632d6f: Already exists
93f2f8cf004e: Already exists
5b1d7b4298c6: Pull complete
4eb6b673b08e: Pull complete
0e2bb3b0c12e: Pull complete
e051a9bc75f9: Pull complete
459fd4c83e39: Pull complete
2b1579c28634: Pull complete
e421f234eae2: Pull complete
5f6204dd4e19: Pull complete
12d90f151bb4: Pull complete
7d5d2221f344: Pull complete
30ddd56ad412: Pull complete
Digest: sha256:aa1d043b42ed7e6f98b52b713f4a82ba3e17ab7dabcbf44f7ec90b9c0c86cb71
Status: Downloaded newer image for rikmoedt/fabric-membersrvc:0.5-dp
Pulling vp0 (rikmoedt/fabric-peer:0.5-dp)...
0.5-dp: Pulling from rikmoedt/fabric-peer
6599cadaf950: Already exists
23eda618d451: Already exists
f0be3084efe9: Already exists
52de432f084b: Already exists
a3ed95caeb02: Pull complete
fe87512d962f: Already exists
3ab00b537a04: Already exists
394221632d6f: Already exists
93f2f8cf004e: Already exists
5b1d7b4298c6: Already exists
4eb6b673b08e: Already exists
0e2bb3b0c12e: Already exists
e051a9bc75f9: Already exists
459fd4c83e39: Already exists
2b1579c28634: Already exists
e421f234eae2: Already exists
5f6204dd4e19: Already exists
12d90f151bb4: Already exists
7d5d2221f344: Already exists
9548fb9a33d1: Pull complete
Digest: sha256:fbd05b855b80758361b826a19e32835c1fcbf79fc5ddde16cafccfee3bfebc93
Status: Downloaded newer image for rikmoedt/fabric-peer:0.5-dp
Creating fabricboilerplate_membersrvc_1
Creating fabricboilerplate_vp0_1
Creating fabricboilerplate_vp1_1
Attaching to fabricboilerplate_membersrvc_1, fabricboilerplate_vp0_1, fabricboilerplate_vp1_1
vp0_1         | 13:04:42.712 [peer] func1 -> INFO 001 Auto detected peer address: 172.17.0.3:7051
vp0_1         | 13:04:42.713 [peer] func1 -> INFO 002 Auto detected peer address: 172.17.0.3:7051
vp0_1         | 13:04:42.715 [nodeCmd] serve -> INFO 003 Security enabled status: true
vp0_1         | 13:04:42.715 [nodeCmd] serve -> INFO 005 Privacy enabled status: true
vp0_1         | 13:04:42.715 [eventhub_producer] start -> INFO 004 event processor started
vp0_1         | 13:04:42.991 [crypto] RegisterValidator -> INFO 006 Registering validator [test_vp0] with name [test_vp0]...
vp0_1         | 13:04:43.406 [crypto] RegisterValidator -> INFO 007 Registering validator [test_vp0] with name [test_vp0]...done!
vp0_1         | 13:04:43.406 [crypto] InitValidator -> INFO 008 Initializing validator [test_vp0]...
vp0_1         | 13:04:43.489 [crypto] InitValidator -> INFO 009 Initializing validator [test_vp0]...done!
vp0_1         | 13:04:43.490 [chaincode] NewChaincodeSupport -> INFO 00a Chaincode support using peerAddress: 172.17.0.3:7051
vp0_1         | 13:04:43.490 [sysccapi] RegisterSysCC -> WARN 00b Currently system chaincode does support security(noop,github.com/hyperledger/fabric/bddtests/syschaincode/noop)
vp0_1         | 13:04:43.491 [state] loadConfig -> INFO 00c Loading configurations...
vp0_1         | 13:04:43.491 [state] loadConfig -> INFO 00d Configurations loaded. stateImplName=[buckettree], stateImplConfigs=map[numBuckets:%!s(int=1000003) maxGroupingAtEachLevel:%!s(int=5) bucketCacheSize:%!s(int=100)], deltaHistorySize=[500]
vp0_1         | 13:04:43.491 [state] NewState -> INFO 00e Initializing state implementation [buckettree]
vp0_1         | 13:04:43.491 [buckettree] initConfig -> INFO 00f configs passed during initialization = map[string]interface {}{"maxGroupingAtEachLevel":5, "bucketCacheSize":100, "numBuckets":1000003}
vp0_1         | 13:04:43.491 [buckettree] initConfig -> INFO 010 Initializing bucket tree state implemetation with configurations &{maxGroupingAtEachLevel:5 lowestLevel:9 levelToNumBucketsMap:map[5:1601 7:40001 2:13 1:3 0:1 9:1000003 8:200001 6:8001 3:65 4:321] hashFunc:0xa701e0}
vp0_1         | 13:04:43.491 [buckettree] newBucketCache -> INFO 011 Constructing bucket-cache with max bucket cache size = [100] MBs
vp0_1         | 13:04:43.492 [buckettree] loadAllBucketNodesFromDB -> INFO 012 Loaded buckets data in cache. Total buckets in DB = [0]. Total cache size:=0
vp0_1         | 13:04:43.492 [genesis] func1 -> INFO 013 Creating genesis block.
vp0_1         | 13:04:43.493 [consensus/controller] NewConsenter -> INFO 014 Creating default consensus plugin (noops)
vp0_1         | 13:04:43.494 [consensus/statetransfer] blockThread -> INFO 015 Validated blockchain to the genesis block
vp0_1         | 13:04:43.494 [consensus/noops] newNoops -> INFO 016 NOOPS consensus type = *noops.Noops
vp0_1         | 13:04:43.495 [consensus/noops] newNoops -> INFO 017 NOOPS block size = 500
vp0_1         | 13:04:43.495 [consensus/noops] newNoops -> INFO 018 NOOPS block wait = 1s
vp0_1         | 13:04:43.495 [nodeCmd] serve -> INFO 019 Starting peer with ID=name:"vp0" , network ID=dev, address=172.17.0.3:7051, rootnodes=, validator=true
vp0_1         | 13:04:43.496 [rest] StartOpenchainRESTServer -> INFO 01a Initializing the REST service on 0.0.0.0:7050, TLS is disabled.
vp1_1         | 13:04:43.767 [peer] func1 -> INFO 001 Auto detected peer address: 172.17.0.4:7051
vp1_1         | 13:04:43.768 [peer] func1 -> INFO 002 Auto detected peer address: 172.17.0.4:7051
vp1_1         | 13:04:43.769 [nodeCmd] serve -> INFO 003 Security enabled status: true
vp1_1         | 13:04:43.769 [nodeCmd] serve -> INFO 004 Privacy enabled status: true
vp1_1         | 13:04:43.770 [eventhub_producer] start -> INFO 005 event processor started
vp1_1         | 13:04:44.046 [crypto] RegisterValidator -> INFO 006 Registering validator [test_vp1] with name [test_vp1]...
vp1_1         | 13:04:44.429 [crypto] RegisterValidator -> INFO 007 Registering validator [test_vp1] with name [test_vp1]...done!
vp1_1         | 13:04:44.429 [crypto] InitValidator -> INFO 008 Initializing validator [test_vp1]...
vp1_1         | 13:04:44.509 [crypto] InitValidator -> INFO 009 Initializing validator [test_vp1]...done!
vp1_1         | 13:04:44.510 [chaincode] NewChaincodeSupport -> INFO 00a Chaincode support using peerAddress: 172.17.0.4:7051
vp1_1         | 13:04:44.510 [sysccapi] RegisterSysCC -> WARN 00b Currently system chaincode does support security(noop,github.com/hyperledger/fabric/bddtests/syschaincode/noop)
vp1_1         | 13:04:44.511 [state] loadConfig -> INFO 00c Loading configurations...
vp1_1         | 13:04:44.511 [state] loadConfig -> INFO 00d Configurations loaded. stateImplName=[buckettree], stateImplConfigs=map[numBuckets:%!s(int=1000003) maxGroupingAtEachLevel:%!s(int=5) bucketCacheSize:%!s(int=100)], deltaHistorySize=[500]
vp1_1         | 13:04:44.511 [state] NewState -> INFO 00e Initializing state implementation [buckettree]
vp1_1         | 13:04:44.511 [buckettree] initConfig -> INFO 00f configs passed during initialization = map[string]interface {}{"numBuckets":1000003, "maxGroupingAtEachLevel":5, "bucketCacheSize":100}
vp1_1         | 13:04:44.512 [buckettree] initConfig -> INFO 010 Initializing bucket tree state implemetation with configurations &{maxGroupingAtEachLevel:5 lowestLevel:9 levelToNumBucketsMap:map[3:65 1:3 8:200001 6:8001 0:1 9:1000003 7:40001 5:1601 4:321 2:13] hashFunc:0xa701e0}
vp1_1         | 13:04:44.512 [buckettree] newBucketCache -> INFO 011 Constructing bucket-cache with max bucket cache size = [100] MBs
vp1_1         | 13:04:44.512 [buckettree] loadAllBucketNodesFromDB -> INFO 012 Loaded buckets data in cache. Total buckets in DB = [0]. Total cache size:=0
vp1_1         | 13:04:44.513 [genesis] func1 -> INFO 013 Creating genesis block.
vp1_1         | 13:04:44.514 [consensus/controller] NewConsenter -> INFO 014 Creating default consensus plugin (noops)
vp1_1         | 13:04:44.515 [consensus/statetransfer] blockThread -> INFO 015 Validated blockchain to the genesis block
vp1_1         | 13:04:44.515 [consensus/noops] newNoops -> INFO 016 NOOPS consensus type = *noops.Noops
vp1_1         | 13:04:44.515 [consensus/noops] newNoops -> INFO 017 NOOPS block size = 500
vp1_1         | 13:04:44.515 [consensus/noops] newNoops -> INFO 018 NOOPS block wait = 1s
vp1_1         | 13:04:44.515 [nodeCmd] serve -> INFO 019 Starting peer with ID=name:"vp1" , network ID=dev, address=172.17.0.4:7051, rootnodes=vp0:7051, validator=true
vp1_1         | 13:04:44.517 [rest] StartOpenchainRESTServer -> INFO 01a Initializing the REST service on 0.0.0.0:7050, TLS is disabled.
vp0_1         | 13:04:44.522 [consensus/util] RegisterChannel -> INFO 01b Registering connection from <nil>
vp1_1         | 13:04:44.521 [consensus/util] RegisterChannel -> INFO 01b Registering connection from <nil>
vp0_1         | 2016/10/28 13:08:44 transport: http2Server.HandleStreams failed to receive the preface from client: EOF
vp1_1         | 13:08:52.712 [dockercontroller] deployImage -> ERRO 01c Error building images: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp1_1         | 13:08:52.712 [dockercontroller] deployImage -> ERRO 01d Image Output:
vp1_1         | ********************
vp1_1         | Step 1 : FROM hyperledger/fabric-baseimage
vp1_1         |  ---> 4ad13274ef00
vp1_1         | Step 2 : COPY . $GOPATH/src/build-chaincode/
vp1_1         |  ---> bb1896086a91
vp1_1         | Removing intermediate container 73f59e61efa3
vp1_1         | Step 3 : WORKDIR $GOPATH
vp1_1         |  ---> Running in 010969a79f08
vp1_1         |  ---> a73cff05864e
vp1_1         | Removing intermediate container 010969a79f08
vp1_1         | Step 4 : RUN go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b
vp1_1         |  ---> Running in 4a22b5da92fe
vp1_1         | # build-chaincode
vp1_1         | src/build-chaincode/chaincode.go:123: cannot use new(SimpleChaincode) (type *SimpleChaincode) as type shim.Chaincode in argument to shim.Start:
vp1_1         |     *SimpleChaincode does not implement shim.Chaincode (wrong type for Init method)
vp1_1         |         have Init(*shim.ChaincodeStub, string, []string) ([]byte, error)
vp1_1         |         want Init(shim.ChaincodeStubInterface, string, []string) ([]byte, error)
vp1_1         |
vp1_1         | ********************
vp0_1         | 13:08:52.780 [dockercontroller] deployImage -> ERRO 01c Error building images: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp0_1         | 13:08:52.780 [dockercontroller] deployImage -> ERRO 01d Image Output:
vp0_1         | ********************
vp0_1         | Step 1 : FROM hyperledger/fabric-baseimage
vp0_1         |  ---> 4ad13274ef00
vp0_1         | Step 2 : COPY . $GOPATH/src/build-chaincode/
vp0_1         |  ---> 97c7c2279e28
vp0_1         | Removing intermediate container d7b92413b1cd
vp0_1         | Step 3 : WORKDIR $GOPATH
vp0_1         |  ---> Running in 6c0a7881e0dc
vp0_1         |  ---> 38743e79b358
vp0_1         | Removing intermediate container 6c0a7881e0dc
vp0_1         | Step 4 : RUN go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b
vp0_1         |  ---> Running in 88c965f24a10
vp0_1         | # build-chaincode
vp0_1         | src/build-chaincode/chaincode.go:123: cannot use new(SimpleChaincode) (type *SimpleChaincode) as type shim.Chaincode in argument to shim.Start:
vp0_1         |     *SimpleChaincode does not implement shim.Chaincode (wrong type for Init method)
vp0_1         |         have Init(*shim.ChaincodeStub, string, []string) ([]byte, error)
vp0_1         |         want Init(shim.ChaincodeStubInterface, string, []string) ([]byte, error)
vp0_1         |
vp0_1         | ********************
vp1_1         | 13:08:54.928 [dockercontroller] deployImage -> ERRO 01e Error building images: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp1_1         | 13:08:54.928 [dockercontroller] deployImage -> ERRO 01f Image Output:
vp1_1         | ********************
vp1_1         | Step 1 : FROM hyperledger/fabric-baseimage
vp1_1         |  ---> 4ad13274ef00
vp1_1         | Step 2 : COPY . $GOPATH/src/build-chaincode/
vp1_1         |  ---> Using cache
vp1_1         |  ---> bb1896086a91
vp1_1         | Step 3 : WORKDIR $GOPATH
vp1_1         |  ---> Using cache
vp1_1         |  ---> a73cff05864e
vp1_1         | Step 4 : RUN go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b
vp1_1         |  ---> Running in 8a8f595ea72f
vp1_1         | # build-chaincode
vp1_1         | src/build-chaincode/chaincode.go:123: cannot use new(SimpleChaincode) (type *SimpleChaincode) as type shim.Chaincode in argument to shim.Start:
vp1_1         |     *SimpleChaincode does not implement shim.Chaincode (wrong type for Init method)
vp1_1         |         have Init(*shim.ChaincodeStub, string, []string) ([]byte, error)
vp1_1         |         want Init(shim.ChaincodeStubInterface, string, []string) ([]byte, error)
vp1_1         |
vp1_1         | ********************
vp1_1         | 13:08:54.928 [chaincode] Launch -> ERRO 020 launchAndWaitForRegister failed Error starting container: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp0_1         | 13:08:54.949 [dockercontroller] deployImage -> ERRO 01e Error building images: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp0_1         | 13:08:54.949 [dockercontroller] deployImage -> ERRO 01f Image Output:
vp0_1         | ********************
vp0_1         | Step 1 : FROM hyperledger/fabric-baseimage
vp0_1         |  ---> 4ad13274ef00
vp0_1         | Step 2 : COPY . $GOPATH/src/build-chaincode/
vp0_1         |  ---> Using cache
vp0_1         |  ---> bb1896086a91
vp0_1         | Step 3 : WORKDIR $GOPATH
vp0_1         |  ---> Using cache
vp0_1         |  ---> a73cff05864e
vp0_1         | Step 4 : RUN go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b
vp0_1         |  ---> Running in 531f7b1281fb
vp0_1         | # build-chaincode
vp0_1         | src/build-chaincode/chaincode.go:123: cannot use new(SimpleChaincode) (type *SimpleChaincode) as type shim.Chaincode in argument to shim.Start:
vp0_1         |     *SimpleChaincode does not implement shim.Chaincode (wrong type for Init method)
vp0_1         |         have Init(*shim.ChaincodeStub, string, []string) ([]byte, error)
vp0_1         |         want Init(shim.ChaincodeStubInterface, string, []string) ([]byte, error)
vp0_1         |
vp0_1         | ********************
vp0_1         | 13:08:54.949 [chaincode] Launch -> ERRO 020 launchAndWaitForRegister failed Error starting container: The command '/bin/sh -c go install build-chaincode && cp src/build-chaincode/vendor/github.com/hyperledger/fabric/peer/core.yaml $GOPATH/bin && mv $GOPATH/bin/build-chaincode $GOPATH/bin/fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b' returned a non-zero code: 2
vp0_1         | 2016/10/28 13:09:07 transport: http2Server.HandleStreams failed to receive the preface from client: EOF
vp0_1         | 2016/10/28 13:09:17 transport: http2Server.HandleStreams failed to receive the preface from client: EOF
vp0_1         | 2016/10/28 13:09:17 transport: http2Server.HandleStreams failed to receive the preface from client: EOF
vp0_1         | 2016/10/28 13:09:17 transport: http2Server.HandleStreams failed to receive the preface from client: EOF
vp0_1         | 2016/10/28 13:09:17 transport: http2Server.HandleStreams failed to receive the preface from client: EOF

The node server seems to work but still obviously can't login or anything :

[nodemon] 1.11.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node ./bin/www`
info: [SDK] Initializing the blockchain
info: [SDK] Running in local mode
info: [SDK] Connected to memberservice and peer
info: [NodeJS] Express server listening at http://localhost:8080
info: [SDK] Successfully registered WebAppAdmin
info: [SDK] Going to register users
info: [SDK] Checking if redeploy is needed
info: [SDK] Going to deploy chaincode
info: [SDK] User john1 successfully registered and enrolled
info: [SDK] User jane1 successfully registered and enrolled
info: [SDK] Successfully deployed chaincode
info: [SDK] Deploy result:
{ uuid: 'fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b',
  chaincodeID: 'fa78e17c341c0b697d2636f3fb4fc6bfbe2e3edd182f1d44d903751219bbeb0b',
  result: 'TODO: get actual results; waited 20 seconds and assumed deploy was successful' }
info: [SDK] Executing after deployment
info: [SDK] Watching src/chaincode/chaincode.go for changes...
info: [TestData] Deploying Test Data
info: [TestData] Resetting indexes:
info: [SDK] submitted invoke:
{ uuid: 'bd55d682-a3d4-4f07-a8dd-941a03a0a508' }
info: [SDK] completed invoke:
{ result: 'waited 5 seconds and assumed invoke was successful' }
info: [TestData] Index reset
info: [TestData] Number of users: 2
info: [TestData] Will add new user:
info: {"userId":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"c7ec977acf8b968eccfb1c9b1df5101b","hash":"6ceffdd5b4cca77b87586638eb062650c7fe5f205973c1dbe23bc9ff555ca620ae060632d2c831f3ff58cf180f664934a3cc456b9763a79ef4e506e100b4f163","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]"}
info: [TestData] Will add new user:
info: {"userId":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"09f22f5655ebf3f3dbaf0d89412f47df","hash":"0e3b353d2a52b801f65aefae40e7404d9a2abd4946d4aeac1c9e1cebcfc54fab9ab22bed059c0e8e0263dbd7d17fbb89e28c27dbcec0e4588a35cb78087e833f","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]"}
info: [TestData] Number of things: 2
info: [TestData] Will add new Thing:
info: {"id":"12345678","description":"Lorem Ipsum"}
info: [TestData] Will add new Thing:
info: {"id":"87654321","description":"Ipsum Lorem"}
(node:2414) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
info: [SDK] submitted invoke:
{ uuid: 'dc77eca8-b684-4960-9377-3bfb27760f09' }
info: [SDK] submitted invoke:
{ uuid: '9e9ddb4a-5267-41ad-9033-6f74d45de93d' }
info: [SDK] submitted invoke:
{ uuid: '37266a4e-fc42-47ac-9e40-82176a74a8a9' }
info: [SDK] submitted invoke:
{ uuid: '10a4fca7-1192-420f-86d1-e6b6b296e04e' }
info: [SDK] completed invoke:
{ result: 'waited 5 seconds and assumed invoke was successful' }
info: [SDK] completed invoke:
{ result: 'waited 5 seconds and assumed invoke was successful' }
info: [TestData] Added user:  jane1
info: [TestData] Added thing:  12345678
info: [SDK] completed invoke:
{ result: 'waited 5 seconds and assumed invoke was successful' }
info: [TestData] Added user:  john1
info: [SDK] completed invoke:
{ result: 'waited 5 seconds and assumed invoke was successful' }
info: [TestData] Added thing:  87654321

localhost:7070 #=>

{"height":6,"currentBlockHash":"36X7z34lerZRd3LozSr/Qo6M1zX/4GoXoxhu95rwSvVM6iI5mChvOp3lptO9L07FZ3PnGY1wR+g6mJ/OKaGDMg==","previousBlockHash":"fmV/0Rtt4JJ7ZWZNEuEF00TtxMtYEXFWWj4GLG1hWd0PeZNE/tELXqNBWrMrWZXmcYbquQ9pujSWxpgLx4T34A=="}

Any help ?

Feature Suggestion - Automatic New Tab + Docker Attach

Team,
Thank you for this awesome boilerplate, it's really expedited the development process on my end!
If you don't mind I would love to suggest a feature for at some point in the future - a script that opens a new tab, continuously runs docker ps, and when the chaincode ID appears, runs docker attach #### for easy debugging!

Would love to even collaborate on developing this as part of start.sh once I wrap up my current project.

Suggestion - ui-router instead of ngRouter

  • ui-router allows for nested views and multiple named views. This is very useful with larger app where you may have pages that inherit from other sections.
  • ui-router allows for you to have strong-type linking between states based on state names. Change the url in one place will update every link to that state when you build your links with ui-sref. Very useful for larger projects where URLs might change.
  • There is also the concept of the decorator which could be used to allow your routes to be dynamically created based on the URL that is trying to be accessed. This could mean that you will not need to specify all of your routes before hand.
  • states allow you to map and access different information about different states and you can easily pass information between states via $stateParams.
  • You can easily determine if you are in a state or parent of a state to adjust UI element (highlighting the navigation of the current state) within your templates via $state provided by ui-router which you can expose via setting it in $rootScope on run.

--> more powerful client demos --> more IBM blockchain users : )

http://stackoverflow.com/questions/21023763/angularjs-difference-between-angular-route-and-angular-ui-router

NPM install - gyp ERR! build error gyp ERR! stack error

Running npm -version 3.10.8 and node -v 6.9.1.

Unable to complete npm install command.

gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:....\fabric_boil
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:....\workspace\block-to-build" "--module=C:\....\fabric_boilerplate\fabricmodule_path=C:....n\fabric_boilerplate\fabric-boilerpla
gyp ERR! cwd C...fabric_boilerplate\fabric-boilerplate\nod
gyp ERR! node -v v6.9.1
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'C:...nodejs\node.exe C:\U...\ld --fallback-to-build --module=C:....\fabric_boilerplate\fabpath=C:....\blockchain\fabric_boilerplate\fabric-boilerplate\node_module
node-pre-gyp ERR! stack at ChildProcess. (...\blockcha29)
node-pre-gyp ERR! stack at emitTwo (events.js:106:13)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:191:7)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:877:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
node-pre-gyp ERR! System Windows_NT 6.1.7601
node-pre-gyp ERR! command "C:\...\nodejs\node.exe" "C:...\node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:..fabric_boilerplate\fabric-boiler
node-pre-gyp ERR! node -v v6.9.1
node-pre-gyp ERR! node-pre-gyp -v v0.6.25
node-pre-gyp ERR! not ok
Failed to execute ...\fabric_boilerplate\fabric-boilerplate\node_modules\gr...\fabric_boilerplate\fabric-boilerplate\node_modules\grpc\src\node\extension_binar
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\...nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin
npm ERR! node v6.9.1
npm ERR! npm v3.10.8
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-pre-gyp install --fallback-to-build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the grpc package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-pre-gyp install --fallback-to-build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs grpc
npm ERR! Or if that isn't available, you can get their info via:/
npm ERR! npm owner ls grpc
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! C:...\fabric_boilerplate\fabric-boilerplate\npm

npm run installgo is leading to nowhere

First I tried npm start and got this error

Error:Failed to launch chaincode spec(Could not get deployment transaction for a6d7d80d48346954df4e9143b346f3c4b27d3129b1ba28ec295c11138efc9c7a - LedgerError - ResourceNotFound: ledger: resource not found)

Since it was refered in README.md I followed the steps and tried "npm run installgo" which lead to further errors

Failed at the [email protected] installgo script 'cd src/build-chaincode && GOPATH=$(pwd)/../.. && govend -v'.

I understand the above line originates from package.json. But I dont know how to proceed further.

node version: 6.9.2; npm version 4.0.5

Any tips?

npm install fails: make eror

Since, we were making no progress on issue #17, I decided to start from scratch on another host. But now even npm install fails.
After downloading lots of stuff the make fails.
Here are the details:
CXX(target) Release/obj.target/grpc_node/src/node/ext/byte_buffer.o
../src/node/ext/byte_buffer.cc: In function \u2018v8::Localv8::Value grpc::node::MakeFastBuffer(v8::Localv8::Value)\u2019:
../src/node/ext/byte_buffer.cc:99:72: warning: \u2018v8::Localv8::Object v8::Function::NewInstance(int, v8::Localv8::Value) const\u2019 is deprecated (declared at /home/nagin/.node-gyp/7.2.1/include/node/v8.h:3287): Use maybe version [-Wdeprecated-declarations]
Local fastBuffer = bufferConstructor->NewInstance(3, consArgs);
^
CXX(target) Release/obj.target/grpc_node/src/node/ext/call.o
../src/node/ext/call.cc: In static member function \u2018static Nan::NAN_METHOD_RETURN_TYPE grpc::node::Call::New(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
../src/node/ext/call.cc:616:20: error: \u2018class v8::Object\u2019 has no member named \u2018SetHiddenValue\u2019
info.This()->SetHiddenValue(Nan::New("channel_").ToLocalChecked(),
^
../src/node/ext/call.cc:625:19: warning: \u2018v8::Localv8::Object v8::Function::NewInstance(int, v8::Localv8::Value) const\u2019 is deprecated (declared at /home/nagin/.node-gyp/7.2.1/include/node/v8.h:3287): Use maybe version [-Wdeprecated-declarations]
argc, argv);
^
make: *** [Release/obj.target/grpc_node/src/node/ext/call.o] Error 1
make: Leaving directory `/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/build'

make: *** [Release/obj.target/grpc_node/src/node/ext/call.o] Error 1
make: Leaving directory /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/build' gyp ERR! build error gyp ERR! stack Error: make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 3.19.0-25-generic
gyp ERR! command "/usr/local/bin/node" "/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/src/node/extension_binary/grpc_node.node" "--module_name=grpc_node" "--module_path=/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/src/node/extension_binary"
gyp ERR! cwd /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc
gyp ERR! node -v v7.2.1
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok

lots of errors after this.

I did the nodejs v7 install based on
https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions for Ubuntu
$ npm -v
3.10.10
$ nodejs -v
v7.3.0

Requires hyperledger/fabric:latest image

Peer nodes use the image "hyperledger/fabric:latest" for spawning chaincode containers. Had to tag the most stable image I have "yeasy/hyperledger:0.5-dp" to "hyperledger/fabric:latest" inorder for chaincode to be deployed successfully.

npm run deploy-bluemix-> error: Error registering and enrolling user

npm run deploy-bluemix returns an error when try to enroll new users.
Apparently it succeeds to enroll the Admin but fails when trying register john1 and jane1

Error details below:

info: Connected to memberservice and peer
info: Admin user successfully enrolled
info: Going to deploy chaincode
info: Going to register users
info: User john1 is not yet enrolled and registered
info: User jane1 is not yet enrolled and registered
I1206 17:25:26.948695172 24662 socket_utils_common_posix.c:148] Disabling AF_INET6 sockets because ::1 is not available.
error: Error registering and enrolling user john1
error: Error: proto: can't skip unknown wire type 7 for protos.Attribute
at /home/nagin/work/src/github.com/KennethNagin/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:411:17
error: Error registering and enrolling user jane1
error: Error: proto: can't skip unknown wire type 7 for protos.Attribute
at /home/nagin/work/src/github.com/KennethNagin/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:411:17
error: Failed to deploy chaincode: [object Object]
error: uncaughtException: ENOENT: no such file or directory, open 'logs/logs.log'
{ date: 'Tue Dec 06 2016 17:25:27 GMT+0200 (IST)',
process:
{ pid: 24652,
uid: 1001,
gid: 1001,
cwd: '/home/nagin/work/src/github.com/KennethNagin/fabric-boilerplate/blockchain/deployBluemix',
execPath: '/usr/local/bin/node',
version: 'v6.9.1',
argv:
[ '/usr/local/bin/node',
'/home/nagin/work/src/github.com/KennethNagin/fabric-boilerplate/blockchain/deployBluemix/deployAndRegister.js' ],
memoryUsage: { rss: 69513216, heapTotal: 44978176, heapUsed: 27320464 } },
os:
{ loadavg: [ 1.0029296875, 1.01806640625, 1.04541015625 ],
uptime: 14229816 },
trace:
[ { column: null,
file: null,
function: 'Error',
line: null,
method: null,
native: true } ],
stack:
[ 'Error: ENOENT: no such file or directory, open 'logs/logs.log'',
' at Error (native)' ] }
--Ken

npm start failing

I am trying use the fabric-boilerplate.
I followed your instructions up to the npm start, but it fails.
The fabric docker instances seem to be running properly:
nagin@rcc-hrl-kvg-558:~/work/src/github.com/fabric-boilerplate$ sudo docker ps
[sudo] password for nagin:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8fbb050f8977 rikmoedt/fabric-peer:0.5-dp "sh -c 'sleep 5; peer" 25 minutes ago Up 25 minutes fabricboilerplate_vp1_1
567c1144a10f rikmoedt/fabric-peer:0.5-dp "sh -c 'sleep 5; peer" 25 minutes ago Up 25 minutes 0.0.0.0:7050-7051->7050-7051/tcp fabricboilerplate_vp0_1
561b339f7fb7 rikmoedt/fabric-membersrvc:0.5-dp "membersrvc" 25 minutes ago Up 25 minutes 0.0.0.0:7054->7054/tcp fabricboilerplate_membersrvc_1

However the npm start fails:

nagin@rcc-hrl-kvg-558:~/work/src/github.com/fabric-boilerplate$ sudo npm start

[email protected] start /home/nagin/work/src/github.com/fabric-boilerplate
npm run build-css | npm run watch-css | npm run nodemon

[email protected] nodemon /home/nagin/work/src/github.com/fabric-boilerplate
GOPATH=$(pwd) nodemon ./bin/www

sh: 1: node-sass: not found

sh: 1: node-sass: not found

sh: 1: nodemon: not found

npm ERR! Linux 3.19.0-25-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "nodemon"
npm npmERR! node v7.1.0
npm ERR! npm v3.10.9
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! npmerrno ENOENT

There many many npm ERR messages after that.

What do you suggest?

--Ken

Getting Error:Failed to launch chaincode spec even after following instructions and checking govend and gobuild work.

As the name suggests, in spite of having followed the instructions, getting no errors from go build and seeing that govend works properly I am still getting this:

  msg: 'Error:Failed to launch chaincode spec(Could not get deployment transaction for cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98 - LedgerError - ResourceNotFound: ledger: resource not found)' }
warn: Error:Failed to launch chaincode spec(Could not get deployment transaction for cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98 - LedgerError - ResourceNotFound: ledger: resource not found)

Can anyone suggest a fix? - I've attached the logs of start.sh and npm install below:

Log of ./start.sh

pastadin@nazgul ~/w/fabric-boilerplate> ./start.sh
###################################################
#####     HYPERLEDGER FABRIC START SCRIPT     #####
###################################################

Blockchain directory: /home/pastadin/workspace/fabric-boilerplate/blockchain 

Do you want to clear the environment? [y/N] y 
keyValStore removed
Latest deployed removed
All docker containers removed
All chaincode images removed
All untagged images removed
Starting docker containers...
Docker containers up and running

> [email protected] start /home/pastadin/workspace/fabric-boilerplate
> npm run build-css | npm run watch-css | npm run nodemon


> [email protected] nodemon /home/pastadin/workspace/fabric-boilerplate
> GOPATH=$(pwd) nodemon ./bin/www

[nodemon] 1.11.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node ./bin/www`
Rendering Complete, saving .css file...
Wrote CSS to /home/pastadin/workspace/fabric-boilerplate/client/assets/css/main.css
Using credentials from file.
info: [SDK] Initializing the blockchain
info: [SDK] $GOPATH: /home/pastadin/workspace/fabric-boilerplate
info: [SDK] Running in local mode
debug: [SDK] CA: grpc://localhost:7054
debug: [SDK] Peer: grpc://localhost:7051
info: [SDK] Connected to memberservice and peer
info: [NodeJS] Express server listening at http://localhost:8080
info: [SDK] Successfully registered WebAppAdmin
info: [SDK] Going to register users
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file:
debug: [SDK] Going to deploy chaincode
info: [SDK] User jane1 successfully registered and enrolled
info: [SDK] User john1 successfully registered and enrolled
debug: [SDK] Successfully deployed chaincode
debug: [SDK] Deploy result:  
{ uuid: 'cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98',
  chaincodeID: 'cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98',
  result: undefined }
debug: Saving chaincode id cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98
info: [SDK] Watching /home/pastadin/workspace/fabric-boilerplate/src/build-chaincode for changes...
info: [SDK] Done.
info: [SDK] Calling callback...
info: -- Deploying Test Data as  WebAppAdmin --
(node:30380) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
debug: [SDK] WebAppAdmin submitted invoke function add_test_data [{"id":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"9483f0a1eb96986ef48abb8f1c519c83","hash":"29ae886175c4e272ef6dd41dbf424b7062ba82665aec8f686a177ab129023575c723bf732552958be44c0c6b31c8251343a1c39a9adf8fc65a00c57f3de8d8fe","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]","role":0},{"id":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"8b545fb231c447bf6c4da454e13bec3a","hash":"ed64eba466486e22882320e99c7a9c8ed683e372c96fd8f0a2f4bbd69b7d76f2b8122378cdfd8dd4658380f7fc55176478cbeff98e692469a840857bc3cb57d3","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]","role":1}]
debug: -- Added testData
debug: Login attempt w/ username:  john1
error: [SDK] error on query: 
{ error: 
   { status: 'FAILURE',
     msg: 
      { '0': 69,
        '1': 114,
        '2': 114,
        '3': 111,
        '4': 114,
        '5': 58,
        '6': 70,
        '7': 97,
        '8': 105,
        '9': 108,
        '10': 101,
        '11': 100,
        '12': 32,
        '13': 116,
        '14': 111,
        '15': 32,
        '16': 108,
        '17': 97,
        '18': 117,
        '19': 110,
        '20': 99,
        '21': 104,
        '22': 32,
        '23': 99,
        '24': 104,
        '25': 97,
        '26': 105,
        '27': 110,
        '28': 99,
        '29': 111,
        '30': 100,
        '31': 101,
        '32': 32,
        '33': 115,
        '34': 112,
        '35': 101,
        '36': 99,
        '37': 40,
        '38': 67,
        '39': 111,
        '40': 117,
        '41': 108,
        '42': 100,
        '43': 32,
        '44': 110,
        '45': 111,
        '46': 116,
        '47': 32,
        '48': 103,
        '49': 101,
        '50': 116,
        '51': 32,
        '52': 100,
        '53': 101,
        '54': 112,
        '55': 108,
        '56': 111,
        '57': 121,
        '58': 109,
        '59': 101,
        '60': 110,
        '61': 116,
        '62': 32,
        '63': 116,
        '64': 114,
        '65': 97,
        '66': 110,
        '67': 115,
        '68': 97,
        '69': 99,
        '70': 116,
        '71': 105,
        '72': 111,
        '73': 110,
        '74': 32,
        '75': 102,
        '76': 111,
        '77': 114,
        '78': 32,
        '79': 99,
        '80': 102,
        '81': 55,
        '82': 102,
        '83': 54,
        '84': 99,
        '85': 50,
        '86': 48,
        '87': 54,
        '88': 48,
        '89': 101,
        '90': 54,
        '91': 53,
        '92': 57,
        '93': 50,
        '94': 97,
        '95': 51,
        '96': 48,
        '97': 51,
        '98': 48,
        '99': 55,
        '100': 53,
        '101': 57,
        '102': 98,
        '103': 56,
        '104': 56,
        '105': 97,
        '106': 101,
        '107': 98,
        '108': 53,
        '109': 57,
        '110': 52,
        '111': 100,
        '112': 99,
        '113': 101,
        '114': 52,
        '115': 102,
        '116': 57,
        '117': 100,
        '118': 101,
        '119': 99,
        '120': 57,
        '121': 98,
        '122': 98,
        '123': 48,
        '124': 56,
        '125': 98,
        '126': 97,
        '127': 53,
        '128': 48,
        '129': 100,
        '130': 97,
        '131': 100,
        '132': 51,
        '133': 56,
        '134': 55,
        '135': 53,
        '136': 49,
        '137': 97,
        '138': 51,
        '139': 52,
        '140': 100,
        '141': 57,
        '142': 56,
        '143': 32,
        '144': 45,
        '145': 32,
        '146': 76,
        '147': 101,
        '148': 100,
        '149': 103,
        '150': 101,
        '151': 114,
        '152': 69,
        '153': 114,
        '154': 114,
        '155': 111,
        '156': 114,
        '157': 32,
        '158': 45,
        '159': 32,
        '160': 82,
        '161': 101,
        '162': 115,
        '163': 111,
        '164': 117,
        '165': 114,
        '166': 99,
        '167': 101,
        '168': 78,
        '169': 111,
        '170': 116,
        '171': 70,
        '172': 111,
        '173': 117,
        '174': 110,
        '175': 100,
        '176': 58,
        '177': 32,
        '178': 108,
        '179': 101,
        '180': 100,
        '181': 103,
        '182': 101,
        '183': 114,
        '184': 58,
        '185': 32,
        '186': 114,
        '187': 101,
        '188': 115,
        '189': 111,
        '190': 117,
        '191': 114,
        '192': 99,
        '193': 101,
        '194': 32,
        '195': 110,
        '196': 111,
        '197': 116,
        '198': 32,
        '199': 102,
        '200': 111,
        '201': 117,
        '202': 110,
        '203': 100,
        '204': 41 } },
  msg: 'Error:Failed to launch chaincode spec(Could not get deployment transaction for cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98 - LedgerError - ResourceNotFound: ledger: resource not found)' }
warn: Error:Failed to launch chaincode spec(Could not get deployment transaction for cf7f6c2060e6592a3030759b88aeb594dce4f9dec9bb08ba50dad38751a34d98 - LedgerError - ResourceNotFound: ledger: resource not found)

Log of npm install:

pastadin@nazgul ~/w/fabric-boilerplate> npm install
npm WARN deprecated [email protected]: use uuid module instead
npm WARN prefer global [email protected] should be installed with -g
npm WARN prefer global [email protected] should be installed with -g

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable
> node-gyp configure build

make: Entering directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable/build'
  CXX(target) Release/obj.target/native/src/hashtable.o
./Release/.deps/Release/obj.target/native/src/hashtable.o.d.raw { dev: 64770,
  mode: 33204,
  nlink: 1,
  uid: 500,
  gid: 500,
  rdev: 0,
  blksize: 4096,
  ino: 29101829,
  size: 1405,
  blocks: 8,
  atime: 2016-12-20T13:21:31.000Z,
  mtime: 2016-12-20T13:21:31.000Z,
  ctime: 2016-12-20T13:21:31.305Z,
  birthtime: 2016-12-20T13:21:31.305Z }
  SOLINK_MODULE(target) Release/obj.target/native.node
  COPY Release/native.node
make: Leaving directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable/build'

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/sleep
> node-gyp rebuild

make: Entering directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/sleep/build'
  CXX(target) Release/obj.target/node_sleep/sleep.o
./Release/.deps/Release/obj.target/node_sleep/sleep.o.d.raw { dev: 64770,
  mode: 33204,
  nlink: 1,
  uid: 500,
  gid: 500,
  rdev: 0,
  blksize: 4096,
  ino: 29101982,
  size: 1213,
  blocks: 8,
  atime: 2016-12-20T13:21:32.000Z,
  mtime: 2016-12-20T13:21:32.000Z,
  ctime: 2016-12-20T13:21:32.653Z,
  birthtime: 2016-12-20T13:21:32.653Z }
  SOLINK_MODULE(target) Release/obj.target/node_sleep.node
  COPY Release/node_sleep.node
make: Leaving directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/sleep/build'

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/grpc
> node-pre-gyp install --fallback-to-build

[grpc] Success: "/home/pastadin/workspace/fabric-boilerplate/node_modules/grpc/src/node/extension_binary/grpc_node.node" is installed via remote

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass
> node scripts/install.js

Cached binary found at /home/pastadin/.npm/node-sass/3.13.1/linux-x64-48_binding.node

> [email protected] postinstall /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass
> node scripts/build.js

Binary found at /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass/vendor/linux-x64-48/binding.node
Testing binary
Binary is fine

> [email protected] postinstall /home/pastadin/workspace/fabric-boilerplate
> npm run install-dependencies


> [email protected] install-dependencies /home/pastadin/workspace/fabric-boilerplate
> cd client/assets && npm install; cd ../..; hash govend && npm run installgo || echo '(!) govend not installed - go dependencies not downloaded'

[email protected] /home/pastadin/workspace/fabric-boilerplate/client/assets
├── [email protected] 
├── [email protected] 
├── [email protected] 
└── [email protected] 


> [email protected] installgo /home/pastadin/workspace/fabric-boilerplate
> cd src/build-chaincode && GOPATH=$(pwd)/../.. && govend -v

github.com/hyperledger/fabric/core/chaincode/shim
google.golang.org/grpc
google.golang.org/grpc/transport
google.golang.org/grpc/peer
google.golang.org/grpc/credentials
golang.org/x/net/context
google.golang.org/grpc/metadata
google.golang.org/grpc/grpclog
google.golang.org/grpc/codes
golang.org/x/net/trace
golang.org/x/net/internal/timeseries
golang.org/x/net/http2/hpack
golang.org/x/net/http2
golang.org/x/net/lex/httplex
golang.org/x/net/idna
google.golang.org/grpc/test/codec_perf
github.com/golang/protobuf/proto
github.com/golang/protobuf/ptypes/any
github.com/golang/protobuf/proto/testdata
github.com/golang/protobuf/proto/proto3_proto
google.golang.org/grpc/naming
google.golang.org/grpc/internal
google.golang.org/grpc/credentials/oauth
golang.org/x/oauth2/jwt
golang.org/x/oauth2/jws
golang.org/x/oauth2/internal
golang.org/x/oauth2
google.golang.org/appengine/urlfetch
google.golang.org/appengine/internal/urlfetch
google.golang.org/appengine/internal
google.golang.org/appengine/internal/remote_api
google.golang.org/appengine/internal/log
google.golang.org/appengine/internal/datastore
google.golang.org/appengine/internal/base
golang.org/x/oauth2/google
google.golang.org/appengine
google.golang.org/appengine/internal/modules
google.golang.org/appengine/internal/app_identity
cloud.google.com/go/compute/metadata
golang.org/x/net/context/ctxhttp
cloud.google.com/go/internal
github.com/spf13/viper
gopkg.in/yaml.v2
gopkg.in/check.v1
github.com/stretchr/testify/assert
github.com/pmezard/go-difflib/difflib
github.com/davecgh/go-spew/spew
github.com/davecgh/go-spew/spew/testdata
github.com/spf13/pflag
github.com/spf13/jwalterweatherman
github.com/spf13/cast
github.com/spf13/afero
golang.org/x/text/unicode/norm
golang.org/x/text/transform
golang.org/x/text/internal/testtext
golang.org/x/text/internal/gen
golang.org/x/text/unicode/cldr
golang.org/x/text/internal/ucd
golang.org/x/text/internal/triegen
github.com/spf13/afero/sftp
github.com/pkg/sftp
golang.org/x/crypto/ssh
golang.org/x/crypto/ssh/testdata
golang.org/x/crypto/ssh/terminal
golang.org/x/crypto/ed25519
golang.org/x/crypto/ed25519/internal/edwards25519
golang.org/x/crypto/curve25519
github.com/pkg/errors
github.com/kr/fs
github.com/spf13/afero/mem
github.com/pelletier/go-pastadinl
github.com/pelletier/go-buffruneio
github.com/mitchellh/mapstructure
github.com/magiconair/properties
github.com/magiconair/properties/_third_party/gopkg.in/check.v1
github.com/magiconair/properties/_third_party/gopkg.in/check.v1 bad ping: stat vendor/github.com/magiconair/properties/_third_party/gopkg.in/check.v1: no such file or directory
github.com/hashicorp/hcl
github.com/hashicorp/hcl/testhelper
github.com/hashicorp/hcl/json/parser
github.com/hashicorp/hcl/json/token
github.com/hashicorp/hcl/hcl/token
github.com/hashicorp/hcl/hcl/strconv
github.com/hashicorp/hcl/json/scanner
github.com/hashicorp/hcl/hcl/ast
github.com/hashicorp/hcl/hcl/parser
github.com/hashicorp/hcl/hcl/scanner
github.com/fsnotify/fsnotify
golang.org/x/sys/unix
github.com/op/go-logging
github.com/looplab/fsm
github.com/hyperledger/fabric/protos
github.com/hyperledger/fabric/core/util
golang.org/x/crypto/sha3
github.com/golang/protobuf/ptypes/timestamp
github.com/golang/protobuf/ptypes/empty
github.com/hyperledger/fabric/core/comm
github.com/hyperledger/fabric/core/config
github.com/hyperledger/fabric/core/chaincode/shim/crypto/ecdsa
github.com/hyperledger/fabric/core/crypto/primitives
github.com/hyperledger/fabric/core/crypto/utils
github.com/hyperledger/fabric/core/chaincode/shim/crypto
github.com/hyperledger/fabric/core/chaincode/shim/crypto/attr
github.com/hyperledger/fabric/core/crypto/attributes
github.com/hyperledger/fabric/core/crypto/attributes/proto
[email protected] /home/pastadin/workspace/fabric-boilerplate
├── [email protected] 
├── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected]  (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │ │   └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └── [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └─┬ [email protected] 
│ │ │ │   │   ├── [email protected] 
│ │ │ │   │   └── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └── [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └─┬ [email protected] 
│ │ │   │   └─┬ [email protected] 
│ │ │   │     ├── [email protected] 
│ │ │   │     └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├── [email protected] 
│ │   └─┬ [email protected] 
│ │     └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ └── [email protected] 
│ │   └─┬ [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └─┬ [email protected] 
│ │ │     ├── [email protected] 
│ │ │     ├─┬ [email protected] 
│ │ │     │ ├─┬ [email protected] 
│ │ │     │ │ ├─┬ [email protected] 
│ │ │     │ │ │ └── [email protected] 
│ │ │     │ │ └── [email protected] 
│ │ │     │ ├── [email protected] 
│ │ │     │ └── [email protected] 
│ │ │     └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └─┬ [email protected] 
│ │ │   │ │   └── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └─┬ [email protected] 
│ │ │   │   └── [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     ├─┬ [email protected] 
│     │ └── [email protected] 
│     ├── [email protected] 
│     ├─┬ [email protected] 
│     │ └─┬ [email protected] 
│     │   └── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     └─┬ [email protected] 
│       └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └─┬ [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   └── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └─┬ [email protected] 
│ │ │     ├── [email protected] 
│ │ │     └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ ├── [email protected] 
│   │ │ └── [email protected] 
│   │ └── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   ├─┬ [email protected] 
│   │   │ ├─┬ [email protected] 
│   │   │ │ ├─┬ [email protected] 
│   │   │ │ │ └── [email protected] 
│   │   │ │ └── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ └── [email protected] 
│   │   └─┬ [email protected] 
│   │     └─┬ [email protected] 
│   │       ├── [email protected] 
│   │       ├── [email protected] 
│   │       ├── [email protected] 
│   │       └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   ├── [email protected] 
│   └── [email protected] 
├── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
└─┬ [email protected] 
  ├── [email protected] 
  └── [email protected] 

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

login fails: with LedgerError - ResourceNotFound: ledger:

I deployed the boilerplate according to the instructions: "Running the application automatically" with the docker-compose to bring up the fabric. I checked that the app is running by brouwsing http://localhost:8080/ in your browser. And attempted to login with the user credentials in testData/testData.json. However the log in fails.

Here are the details:

The login fails with LedgerError - ResourceNotFound: ledger: resource not found)"}

Log from the app:
(node:13033) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 5): [object Object]
debug: Login attempt w/ username: john1
error: [SDK] error on query: {"error":{"status":"FAILURE","msg":{"type":"Buffer","data":[69,114,114,111,114,58,70,97,105,108,101,100,32,116,111,32,108,97,117,110,99,104,32,99,104,97,105,110,99,111,100,101,32,115,112,101,99,40,67,111,117,108,100,32,110,111,116,32,103,101,116,32,100,101,112,108,111,121,109,101,110,116,32,116,114,97,110,115,97,99,116,105,111,110,32,102,111,114,32,56,56,56,49,50,98,48,51,98,97,55,100,55,53,48,50,51,53,99,56,57,50,97,56,97,57,57,57,50,54,102,56,50,49,56,53,54,53,97,98,56,100,98,55,99,98,52,52,57,55,56,49,97,100,99,49,55,57,56,97,49,54,55,100,32,45,32,76,101,100,103,101,114,69,114,114,111,114,32,45,32,82,101,115,111,117,114,99,101,78,111,116,70,111,117,110,100,58,32,108,101,100,103,101,114,58,32,114,101,115,111,117,114,99,101,32,110,111,116,32,102,111,117,110,100,41]}},"msg":"Error:Failed to launch chaincode spec(Could not get deployment transaction for 88812b03ba7d750235c892a8a99926f8218565ab8db7cb449781adc1798a167d - LedgerError - ResourceNotFound: ledger: resource not found)"}
error:
{ error:
{ status: 'FAILURE',
msg:
{ '0': 69,
lots of number follow
}
'204': 41 } },
msg: 'Error:Failed to launch chaincode spec(Could not get deployment transaction for 88812b03ba7d750235c892a8a99926f8218565ab8db7cb449781adc1798a167d - LedgerError - ResourceNotFound: ledger: resource not found)' }
(node:13033) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 6): [object Object]

log from the fabric:
vp0_1 | 2016/12/06 12:39:48 transport: http2Server.HandleStreams failed to receive the preface from client: EOF

I also took a look at ./logs/logs.log
nagin@rcc-hrl-kvg-558:~/work/src/github.com/KennethNagin/fabric-boilerplate$ cat logs/logs.log
{"level":"error","message":"[SDK] error on query: {"error":{"status":"FAILURE","msg":{"type":"Buffer","data":[69,114,114,111,114,58,70,97,105,108,101,100,32,116,111,32,108,97,117,110,99,104,32,99,104,97,105,110,99,111,100,101,32,115,112,101,99,40,67,111,117,108,100,32,110,111,116,32,103,101,116,32,100,101,112,108,111,121,109,101,110,116,32,116,114,97,110,115,97,99,116,105,111,110,32,102,111,114,32,56,56,56,49,50,98,48,51,98,97,55,100,55,53,48,50,51,53,99,56,57,50,97,56,97,57,57,57,50,54,102,56,50,49,56,53,54,53,97,98,56,100,98,55,99,98,52,52,57,55,56,49,97,100,99,49,55,57,56,97,49,54,55,100,32,45,32,76,101,100,103,101,114,69,114,114,111,114,32,45,32,82,101,115,111,117,114,99,101,78,111,116,70,111,117,110,100,58,32,108,101,100,103,101,114,58,32,114,101,115,111,117,114,99,101,32,110,111,116,32,102,111,117,110,100,41]}},"msg":"Error:Failed to launch chaincode spec(Could not get deployment transaction for 88812b03ba7d750235c892a8a99926f8218565ab8db7cb449781adc1798a167d - LedgerError - ResourceNotFound: ledger: resource not found)"}","timestamp":"2016-12-06T09:55:27.820Z"}
....

--Ken

Broken Build using Node JS v7.4.0

Didn't copy over the entire build log (since reverted to v6.9.4 of nodeJS) but the error
fatal error: 'tr1/unordered_map' file not found
appears when using node JS v7.4.0

hopefully this helps by giving a heads up for future reference and enables a fix in advance of v7.4.0's official release.

Trying to understand authentication

Hi,

I tested the code locally and everything seems to work fine, but I have trouble to understanding how the example authenticate the users.
My background is Ethereum, there when you invoke a function you have to sign the transaction.
It seems to me that the check for password happens only on web server side, so I did not see how, when you call a function in the blockchain, you make sure that you are really the user that you say you are.
Is it because I am testing locally?
Is there any documentation that can help me understand this?

Thanks.

Cannot invoke createThing Via REST

After enrolling a user in the rest API:
Post:http://localhost:7050/registrar
{"enrollId":"test_user0","enrollSecret" :"MS9qrN8hFjlE"}
Response:
{ "OK": "Login successful for user 'test_user0'."}
I am then unable to create a new thing via invoke/rest
POST:http://localhost:7050/chaincode

{
   "jsonrpc":"2.0",
   "method":"invoke",
   "params":{
      "type":1,
      "chaincodeID":{
         "name":"a2abd8f6ca44ea7287003028698edcf723f27f248bd12c8c5f31d5d26a8dd94b"
      },
      "ctorMsg":{
         "function":"createThing",
         "args":[
            {
               "thingID":"6a0a2ac8-e34b-e111-a1e3-00155d690d2a",
               "userID":"084003277",
               "description":"State  Committee",
               "someProperty":"124914266456"
            }
         ]
      },
      "secureContext":"test_user0"
   },
   "id":0
}

Response:

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32700,
    "message": "Parse error",
    "data": "Error unmarshalling chaincode request payload: json: cannot unmarshal object into Go value of type string"
  },
  "id": null
}


The command '/bin/sh -c grunt build' returned a non-zero code: 6

Hello,
I am not sure where I am going wrong with the boilerplate, I followed the instructions but when I try to run the application using docker-compose up I get the following
Aborted due to warnings. ERROR: Service 'server' failed to build: The command '/bin/sh -c grunt build' returned a non-zero code: 6
I'm running High Sierra 10.13.2

Thanks

browse to 8080 fails: missing node modules

The most recent release seems to have degenerated.
It it seems to start successfully. However when I browse to it (even before logging on) it throws all sorts of exceptions, since it is expected some node modules. I think the documentation is missing some setup to get some go modules.

This is the tail of the successful startup:

info: [SDK] Calling callback...
info: -- Deploying Test Data as  WebAppAdmin --
(node:10154) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
debug: [SDK] WebAppAdmin submitted invoke function add_test_data [{"id":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"f822b1301672299a2b34adb6dfb4e6ca","hash":"181eb661c0727b894b92d750ad3372909d0cfed1551cbefc66b81bade2677893a492d8e566599a964adbf8b3b4829b7181a35d96f393f4ecaf7f92ba0fd5a8a0","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]","role":0},{"id":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"73a099475825a6efc064e296545bfa54","hash":"509b205cc87d71ad26ca76447c5454400422fa71ad9c144310820ac9833070fa9a2e1090161c88dc4186171cbac5f5b6d91d3a205afeb169a15181c518da310c","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]","role":1}]
debug: -- Added testData

This is what happens when I browse to 8080:
Error: Not Found: /assets/node_modules/bootstrap/dist/css/bootstrap.min.css
    at /home/nagin/work/src/github.com/fabric-boilerplate/app.js:57:17
    at Layer.handle [as handle_request] (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:312:13)
    at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:280:7
    at Function.process_params (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:330:12)
    at next (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:271:10)
    at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:618:15
    at next (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:256:14)
    at Function.handle (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:176:3)
    at router (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:46:12)
Error: Not Found: /assets/node_modules/angular/angular.min.js
    at /home/nagin/work/src/github.com/fabric-boilerplate/app.js:57:17
    at Layer.handle [as handle_request] (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:312:13)
    at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:280:7
    at Function.process_params (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:330:12)
    at next (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:271:10)
    at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:618:15
    at next (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:256:14)
    at Function.handle (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:176:3)
    at router (/home/nagin/work/src/github.com/fabric-boilerplate/node_modules/express/lib/router/index.js:46:12)
Error: Not Found: /assets/node_modules/angular-route/angular-route.min.js

Errors running npm install

So following the tutorial and running npm install results in the following error -

z.vcxproj -> C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\build\Release\\libz.lib
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Ivaylo\\OneDrive\\fabric-boilerplate\\node_modules\\node-gyp\\bin\\node-gyp.js" "build" "--fallback-to-build" "--module=C:\\Users\\Ivaylo\\OneDrive\\fabric-boilerplate\\node_modules\\grpc\\src\\node\\extension_binary\\grpc_node.node" "--module_name=grpc_node" "--module_path=C:\\Users\\Ivaylo\\OneDrive\\fabric-boilerplate\\node_modules\\grpc\\src\\node\\extension_binary"
gyp ERR! cwd C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc
gyp ERR! node -v v7.0.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --module=C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\src\node\extension_binary\grpc_node.node --module_name=grpc_node --module_path=C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\src\node\extension_binary' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
node-pre-gyp ERR! stack     at emitTwo (events.js:106:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:877:16)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
node-pre-gyp ERR! System Windows_NT 10.0.14393
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Ivaylo\\OneDrive\\fabric-boilerplate\\node_modules\\grpc\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc
node-pre-gyp ERR! node -v v7.0.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.25
node-pre-gyp ERR! not ok
Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --module=C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\src\node\extension_binary\grpc_node.node --module_name=grpc_node --module_path=C:\Users\Ivaylo\OneDrive\fabric-boilerplate\node_modules\grpc\src\node\extension_binary' (1)
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! node v7.0.0
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the grpc package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-pre-gyp install --fallback-to-build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs grpc
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls grpc
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users\Ivaylo\OneDrive\fabric-boilerplate\npm-debug.log

I tried looking the error code up and installing all the VC components that were listed as possible culprits but to no avail.

npm ERR! [email protected] build-css: `node-sass --include-path scss client/assets/css/scss/main.scss client/assets/css/main.css`

I have started a fresh install of the boilerplate however when I try to run it with ./start.sh I get the following error:

npm ERR! Failed at the [email protected] build-css script 'node-sass --include-path scss client/assets/css/scss/main.scss client/assets/css/main.css'.

I'm running Red Hat 7.2 with node 6.9.2, npm 3.10.9, docker 1.12.4 and go 1.7.3

npm install logs:

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable
> node-gyp configure build

make: Entering directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable/build'
  CXX(target) Release/obj.target/native/src/hashtable.o
  SOLINK_MODULE(target) Release/obj.target/native.node
  COPY Release/native.node
make: Leaving directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/hashtable/build'

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/sleep
> node-gyp rebuild

make: Entering directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/sleep/build'
  CXX(target) Release/obj.target/node_sleep/sleep.o
  SOLINK_MODULE(target) Release/obj.target/node_sleep.node
  COPY Release/node_sleep.node
make: Leaving directory `/home/pastadin/workspace/fabric-boilerplate/node_modules/sleep/build'

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/grpc
> node-pre-gyp install --fallback-to-build

[grpc] Success: "/home/pastadin/workspace/fabric-boilerplate/node_modules/grpc/src/node/extension_binary/grpc_node.node" is installed via remote

> [email protected] install /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass
> node scripts/install.js

Cached binary found at /home/pastadin/.npm/node-sass/3.13.1/linux-x64-48_binding.node

> [email protected] postinstall /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass
> node scripts/build.js

Binary found at /home/pastadin/workspace/fabric-boilerplate/node_modules/node-sass/vendor/linux-x64-48/binding.node
Testing binary
Binary is fine

> [email protected] postinstall /home/pastadin/workspace/fabric-boilerplate
> npm run install-dependencies


> [email protected] install-dependencies /home/pastadin/workspace/fabric-boilerplate
> cd client/assets && npm install; cd ../..; hash govend && npm run installgo || echo '(!) govend not installed - go dependencies not downloaded'


> [email protected] installgo /home/pastadin/workspace/fabric-boilerplate
> cd src/build-chaincode && GOPATH=$(pwd)/../.. && govend -v

github.com/hyperledger/fabric/core/chaincode/shim
google.golang.org/grpc
google.golang.org/grpc/transport
google.golang.org/grpc/peer
google.golang.org/grpc/credentials
golang.org/x/net/context
google.golang.org/grpc/metadata
google.golang.org/grpc/grpclog
google.golang.org/grpc/codes
golang.org/x/net/trace
golang.org/x/net/internal/timeseries
golang.org/x/net/http2/hpack
golang.org/x/net/http2
golang.org/x/net/lex/httplex
golang.org/x/net/idna
google.golang.org/grpc/test/codec_perf
github.com/golang/protobuf/proto
github.com/golang/protobuf/ptypes/any
github.com/golang/protobuf/proto/testdata
github.com/golang/protobuf/proto/proto3_proto
google.golang.org/grpc/naming
google.golang.org/grpc/internal
google.golang.org/grpc/credentials/oauth
golang.org/x/oauth2/jwt
golang.org/x/oauth2/jws
golang.org/x/oauth2/internal
golang.org/x/oauth2
google.golang.org/appengine/urlfetch
google.golang.org/appengine/internal/urlfetch
google.golang.org/appengine/internal
google.golang.org/appengine/internal/remote_api
google.golang.org/appengine/internal/log
google.golang.org/appengine/internal/datastore
google.golang.org/appengine/internal/base
golang.org/x/oauth2/google
google.golang.org/appengine
google.golang.org/appengine/internal/modules
google.golang.org/appengine/internal/app_identity
cloud.google.com/go/compute/metadata
golang.org/x/net/context/ctxhttp
cloud.google.com/go/internal
github.com/spf13/viper
gopkg.in/yaml.v2
gopkg.in/check.v1
github.com/stretchr/testify/assert
github.com/pmezard/go-difflib/difflib
github.com/davecgh/go-spew/spew
github.com/davecgh/go-spew/spew/testdata
github.com/spf13/pflag
github.com/spf13/jwalterweatherman
github.com/spf13/cast
github.com/spf13/afero
golang.org/x/text/unicode/norm
golang.org/x/text/transform
golang.org/x/text/internal/testtext
golang.org/x/text/internal/gen
golang.org/x/text/unicode/cldr
golang.org/x/text/internal/ucd
golang.org/x/text/internal/triegen
github.com/spf13/afero/sftp
github.com/pkg/sftp
golang.org/x/crypto/ssh
golang.org/x/crypto/ssh/testdata
golang.org/x/crypto/ssh/terminal
golang.org/x/crypto/ed25519
golang.org/x/crypto/ed25519/internal/edwards25519
golang.org/x/crypto/curve25519
github.com/pkg/errors
github.com/kr/fs
github.com/spf13/afero/mem
github.com/pelletier/go-pastadinl
github.com/pelletier/go-buffruneio
github.com/mitchellh/mapstructure
github.com/magiconair/properties
github.com/magiconair/properties/_third_party/gopkg.in/check.v1
github.com/magiconair/properties/_third_party/gopkg.in/check.v1 bad ping: stat vendor/github.com/magiconair/properties/_third_party/gopkg.in/check.v1: no such file or directory
github.com/hashicorp/hcl
github.com/hashicorp/hcl/testhelper
github.com/hashicorp/hcl/json/parser
github.com/hashicorp/hcl/json/token
github.com/hashicorp/hcl/hcl/token
github.com/hashicorp/hcl/hcl/strconv
github.com/hashicorp/hcl/json/scanner
github.com/hashicorp/hcl/hcl/ast
github.com/hashicorp/hcl/hcl/parser
github.com/hashicorp/hcl/hcl/scanner
github.com/fsnotify/fsnotify
golang.org/x/sys/unix
github.com/op/go-logging
github.com/looplab/fsm
github.com/hyperledger/fabric/protos
github.com/hyperledger/fabric/core/util
golang.org/x/crypto/sha3
github.com/golang/protobuf/ptypes/timestamp
github.com/golang/protobuf/ptypes/empty
github.com/hyperledger/fabric/core/comm
github.com/hyperledger/fabric/core/config
github.com/hyperledger/fabric/core/chaincode/shim/crypto/ecdsa
github.com/hyperledger/fabric/core/crypto/primitives
github.com/hyperledger/fabric/core/crypto/utils
github.com/hyperledger/fabric/core/chaincode/shim/crypto
github.com/hyperledger/fabric/core/chaincode/shim/crypto/attr
github.com/hyperledger/fabric/core/crypto/attributes
github.com/hyperledger/fabric/core/crypto/attributes/proto
[email protected] /home/pastadin/workspace/fabric-boilerplate
├── [email protected] 
├── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected]  (git+https://github.com/mcavage/node-asn1.git#2c2a19e285a609adfca36a0114bb5b86cf4ac61b)
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │ │   └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ ├── [email protected] 
│ │ │ │ │ │ └── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   ├── [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └── [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └─┬ [email protected] 
│ │ │ │   │   ├── [email protected] 
│ │ │ │   │   └── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └── [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └─┬ [email protected] 
│ │ │   │   └─┬ [email protected] 
│ │ │   │     ├── [email protected] 
│ │ │   │     └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├── [email protected] 
│ │   └─┬ [email protected] 
│ │     └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ └── [email protected] 
│ │   └─┬ [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     ├── [email protected] 
│ │     └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └─┬ [email protected] 
│ │ │     ├── [email protected] 
│ │ │     ├─┬ [email protected] 
│ │ │     │ ├─┬ [email protected] 
│ │ │     │ │ ├─┬ [email protected] 
│ │ │     │ │ │ └── [email protected] 
│ │ │     │ │ └── [email protected] 
│ │ │     │ ├── [email protected] 
│ │ │     │ └── [email protected] 
│ │ │     └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └─┬ [email protected] 
│ │ │   │ │   └── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └─┬ [email protected] 
│ │ │   │   └── [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     ├─┬ [email protected] 
│     │ └── [email protected] 
│     ├── [email protected] 
│     ├─┬ [email protected] 
│     │ └─┬ [email protected] 
│     │   └── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     ├── [email protected] 
│     └─┬ [email protected] 
│       └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └─┬ [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   ├── [email protected] 
│ │ │   │ │   └── [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├─┬ [email protected] 
│ │ │   │ │ └── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   ├─┬ [email protected] 
│ │ │   │ ├── [email protected] 
│ │ │   │ └── [email protected] 
│ │ │   └─┬ [email protected] 
│ │ │     ├── [email protected] 
│ │ │     └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ ├── [email protected] 
│   │ │ └── [email protected] 
│   │ └── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   ├─┬ [email protected] 
│   │   │ ├─┬ [email protected] 
│   │   │ │ ├─┬ [email protected] 
│   │   │ │ │ └── [email protected] 
│   │   │ │ └── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ ├── [email protected] 
│   │   │ └── [email protected] 
│   │   └─┬ [email protected] 
│   │     └─┬ [email protected] 
│   │       ├── [email protected] 
│   │       ├── [email protected] 
│   │       ├── [email protected] 
│   │       └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   ├── [email protected] 
│   └── [email protected] 
├── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
└─┬ [email protected] 
  ├── [email protected] 
  └── [email protected] 

./start.sh logs:

pastadin@nazgul ~/w/fabric-boilerplate> ./start.sh > start.txt
Do you want to clear the environment? [y/N] y
Rendering Complete, saving .css file...
Error: EACCES: permission denied, open '/home/pastadin/workspace/fabric-boilerplate/client/assets/css/main.css'

npm ERR! Linux 3.10.0-514.2.2.el7.x86_64
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "run" "build-css"
npm ERR! node v6.9.2
npm ERR! npm  v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build-css: `node-sass --include-path scss client/assets/css/scss/main.scss client/assets/css/main.css`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] build-css script 'node-sass --include-path scss client/assets/css/scss/main.scss client/assets/css/main.css'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the server package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-sass --include-path scss client/assets/css/scss/main.scss client/assets/css/main.css
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs server
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls server
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/pastadin/workspace/fabric-boilerplate/npm-debug.log
debug: [SDK] CA: grpc://localhost:7054
debug: [SDK] Peer: grpc://localhost:7051
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file:
debug: [SDK] Going to deploy chaincode
debug: [SDK] Successfully deployed chaincode
debug: [SDK] Deploy result:  
{ uuid: '30de33806eb15a96a4eca7bf66e643902977d52cf5cef084d6dd663c7cec31e2',
  chaincodeID: '30de33806eb15a96a4eca7bf66e643902977d52cf5cef084d6dd663c7cec31e2',
  result: undefined }
debug: Saving chaincode id 30de33806eb15a96a4eca7bf66e643902977d52cf5cef084d6dd663c7cec31e2
(node:17860) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
debug: [SDK] WebAppAdmin submitted invoke function add_test_data [{"id":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"e55bd07026ffe7a969f0ffc9a6358468","hash":"a1402357ea03334f35accabe6fe4b115d91914cfcb8a564ca3a2a8d2c1c9c12bdf2bca9aed2eb3d74975c7dcab28b2ea9a83c12999c89339ceea40dbf30736d2","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]","role":0},{"id":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"5aa45b581028b4d644dea24369af07bc","hash":"d7231d4dc05c73622f3b241bf82c92576f4c3ebecb23ddafd21ce3c181de07c6d7e0c23d1e46d5c936cd92c380c3ddd2c80f01d3a910a3b768354263e6e792d0","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]","role":1}]
debug: -- Added testData
^CDo you want to clear the environment? [y/N] y
pastadin@nazgul ~/w/fabric-boilerplate> ./start.sh > start.txt
Do you want to clear the environment? [y/N] y
Rendering Complete, saving .css file...
Wrote CSS to /home/pastadin/workspace/fabric-boilerplate/client/assets/css/main.css
debug: [SDK] CA: grpc://localhost:7054
debug: [SDK] Peer: grpc://localhost:7051
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file:
debug: [SDK] Going to deploy chaincode
debug: [SDK] Successfully deployed chaincode
debug: [SDK] Deploy result:  
{ uuid: 'bc10e8519ff67fb62a5e2e5f965edd2d80ef282badbfab008597d5be0fe2e53f',
  chaincodeID: 'bc10e8519ff67fb62a5e2e5f965edd2d80ef282badbfab008597d5be0fe2e53f',
  result: undefined }
debug: Saving chaincode id bc10e8519ff67fb62a5e2e5f965edd2d80ef282badbfab008597d5be0fe2e53f
(node:18555) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
debug: [SDK] WebAppAdmin submitted invoke function add_test_data [{"id":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"9df0ef1bd78e6dadda5204f23fd05d5d","hash":"a2307093f9a932cdf9cbe5e924fc5b018b1c05291a08f90dce3445e570d5fa1ed9c404c1929d2fe633996327e53d26ef747361d449f5750c7243892e39b586ff","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]","role":0},{"id":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"c41b4240c69031080ab54472f44a5a3f","hash":"addbcd7272dcce427ccf88650f0c201d363131e7e4a37d9dfe9ec518cfa838b91558e094922e7ea741ab67e98ff03c343781830e5156c34189f1ca979c841674","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]","role":1}]
debug: -- Added testData
^CDo you want to clear the environment? [y/N] y
pastadin@nazgul ~/w/fabric-boilerplate> clear
�[3;J
pastadin@nazgul ~/w/fabric-boilerplate> ./start.sh
###################################################
#####     HYPERLEDGER FABRIC START SCRIPT     #####
###################################################

Blockchain directory: /home/pastadin/workspace/fabric-boilerplate/blockchain 

Do you want to clear the environment? [y/N] y
keyValStore removed
Latest deployed removed
All docker containers removed
All chaincode images removed
All untagged images removed
Starting docker containers...
Docker containers up and running

> [email protected] start /home/pastadin/workspace/fabric-boilerplate
> npm run build-css | npm run watch-css | npm run nodemon


> [email protected] nodemon /home/pastadin/workspace/fabric-boilerplate
> GOPATH=$(pwd) nodemon ./bin/www

Rendering Complete, saving .css file...
Wrote CSS to /home/pastadin/workspace/fabric-boilerplate/client/assets/css/main.css
[nodemon] 1.11.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node ./bin/www`
Using credentials from file.
info: [SDK] Initializing the blockchain
info: [SDK] $GOPATH: /home/pastadin/workspace/fabric-boilerplate
info: [SDK] Running in local mode
debug: [SDK] CA: grpc://localhost:7054
debug: [SDK] Peer: grpc://localhost:7051
info: [SDK] Connected to memberservice and peer
info: [NodeJS] Express server listening at http://localhost:8080
info: [SDK] Successfully registered WebAppAdmin
info: [SDK] Going to register users
debug: [SDK] Checking if redeploy is needed
debug: Found chaincode id from file:
debug: [SDK] Going to deploy chaincode
info: [SDK] User john1 successfully registered and enrolled
info: [SDK] User jane1 successfully registered and enrolled
debug: [SDK] Successfully deployed chaincode
debug: [SDK] Deploy result:  
{ uuid: '5f4e081ebffa10d8aad2cd62cb017495f054b0a7276056cea873e45522faf872',
  chaincodeID: '5f4e081ebffa10d8aad2cd62cb017495f054b0a7276056cea873e45522faf872',
  result: undefined }
debug: Saving chaincode id 5f4e081ebffa10d8aad2cd62cb017495f054b0a7276056cea873e45522faf872
info: [SDK] Watching /home/pastadin/workspace/fabric-boilerplate/src/build-chaincode for changes...
info: [SDK] Done.
info: [SDK] Calling callback...
info: -- Deploying Test Data as  WebAppAdmin --
(node:25096) DeprecationWarning: crypto.pbkdf2 without specifying a digest is deprecated. Please specify a digest
debug: [SDK] WebAppAdmin submitted invoke function add_test_data [{"id":"john1","firstName":"John","lastName":"Doe","things":["12345678","87654321"],"salt":"d07f51efe864ae9ed5472cc764db3e21","hash":"74fcfa914aa45eaeb0d8611ad48f2eedf1752a960ca54fb209b2006987dfc5a47fa0266af82e0e66c6783857167e33b8f1dde78329239bbfbc5574c44ce63a0a","address":"Dam 1, 1012 JS Amsterdam, The Netherlands","phoneNumber":"0900 0048","emailAddress":"[email protected]","role":0},{"id":"jane1","firstName":"Jane","lastName":"Doe","things":["87654321"],"salt":"6b74f160e205254dd5d2f6a93233960b","hash":"b1ff8016f311bfaa6f1bf6041770ef432cd3e71f941e549c1dd466bca18b74940b32e8e8ae7b79606e394d50ce371b3d4ccf6a95b3bfc8721404531120943acc","address":"128 West 44th Street, New York, NY 10036, United States","phoneNumber":"0900 0024","emailAddress":"[email protected]","role":1}]
debug: -- Added testData
^CDo you want to clear the environment? [y/N] y
keyValStore removed
Latest deployed removed
33e9a24afc15
9fdb6e38aed2
All docker containers removed
All chaincode images removed
All untagged images removed

Prerequisites section in README.md is wrong

I helped someone get going in the Hyperledger Slack channels with this sample, I think the docs need a couple of changes.

The PATH is wrong for installed Go executables (the src directory should not be there):
export PATH=$PATH:$GOPATH/src/bin
... should be ...
export PATH=$PATH:$GOPATH/bin

The go get -u github.com/govend/govend command was missed.
It might be worth calling more attention to it by wrapping it in backticks?

npm run deploy-bluemix fails

After successfully launching the boilerplate locally I attempting deploying the blockcode on bluemix.
First I launched a new blockchain service on bluemix. I copied its credential's to the credential.json and updated the manifest.yml. I then ran "npm run deploy-bluemix" but it failed:

error: Error registering and enrolling user john1
error: Error: proto: can't skip unknown wire type 7 for protos.Attribute
at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:411:17
error: Error registering and enrolling user jane1
error: Error: proto: can't skip unknown wire type 7 for protos.Attribute
at /home/nagin/work/src/github.com/fabric-boilerplate/node_modules/grpc/src/node/src/client.js:411:17
error: uncaughtException: ENOENT: no such file or directory, open 'logs/logs.log'
{ date: 'Sun Dec 11 2016 16:00:29 GMT+0200 (IST)',
process:
{ pid: 15347,
uid: 1001,
gid: 1001,
cwd: '/home/nagin/work/src/github.com/fabric-boilerplate/blockchain/deployBluemix',
execPath: '/usr/local/bin/node',
version: 'v6.9.2',
argv:
[ '/usr/local/bin/node',
'/home/nagin/work/src/github.com/fabric-boilerplate/blockchain/deployBluemix/deployAndRegister.js' ],
memoryUsage: { rss: 138272768, heapTotal: 88236032, heapUsed: 63126288 } },
os:
{ loadavg: [ 1.0830078125, 1.052734375, 1.05078125 ],
uptime: 14656718 },
trace:
[ { column: null,
file: null,
function: 'Error',
line: null,
method: null,
native: true } ],
stack:
[ 'Error: ENOENT: no such file or directory, open 'logs/logs.log'',
' at Error (native)' ] }
info: Deploy results: {"uuid":"54daf459f017d20fc7462163295c5efde3f16e8d1e209150adca084468b455e3","chaincodeID":"54daf459f017d20fc7462163295c5efde3f16e8d1e209150adca084468b455e3","result":"TODO: get actual results; waited 20 seconds and assumed deploy was successful"}
info: Saving latest chaincodeID to file

Few a very short time the blockchain was deployed but stopped. But then it disappeared.

Unable to login!! Query method throws error!

Please find below log, while i login with the users defined in testdata file.

debug: Login attempt w/ username: john1
error: [SDK] error on query:
{ error:
{ status: 'FAILURE',
msg:
{ '0': 69,
'1': 114,
'2': 114,
'3': 111,
'4': 114,
'5': 58,
'6': 70,
'7': 97,
'8': 105,
'9': 108,
'10': 101,
'11': 100,
'12': 32,
'13': 116,
'14': 111,
'15': 32,
'16': 108,
'17': 97,
'18': 117,
'19': 110,
'20': 99,
'21': 104,
'22': 32,
'23': 99,
'24': 104,
'25': 97,
'26': 105,
'27': 110,
'28': 99,
'29': 111,
'30': 100,
'31': 101,
'32': 32,
'33': 115,
'34': 112,
'35': 101,
'36': 99,
'37': 40,
'38': 67,
'39': 111,
'40': 117,
'41': 108,
'42': 100,
'43': 32,
'44': 110,
'45': 111,
'46': 116,
'47': 32,
'48': 103,
'49': 101,
'50': 116,
'51': 32,
'52': 100,
'53': 101,
'54': 112,
'55': 108,
'56': 111,
'57': 121,
'58': 109,
'59': 101,
'60': 110,
'61': 116,
'62': 32,
'63': 116,
'64': 114,
'65': 97,
'66': 110,
'67': 115,
'68': 97,
'69': 99,
'70': 116,
'71': 105,
'72': 111,
'73': 110,
'74': 32,
'75': 102,
'76': 111,
'77': 114,
'78': 32,
'79': 54,
'80': 102,
'81': 100,
'82': 50,
'83': 52,
'84': 52,
'85': 54,
'86': 57,
'87': 51,
'88': 99,
'89': 54,
'90': 97,
'91': 54,
'92': 55,
'93': 50,
'94': 51,
'95': 56,
'96': 53,
'97': 57,
'98': 98,
'99': 100,
'100': 50,
'101': 54,
'102': 101,
'103': 97,
'104': 57,
'105': 55,
'106': 50,
'107': 48,
'108': 100,
'109': 100,
'110': 99,
'111': 53,
'112': 51,
'113': 51,
'114': 55,
'115': 97,
'116': 99,
'117': 101,
'118': 102,
'119': 53,
'120': 102,
'121': 99,
'122': 55,
'123': 53,
'124': 48,
'125': 55,
'126': 51,
'127': 52,
'128': 100,
'129': 97,
'130': 97,
'131': 49,
'132': 100,
'133': 100,
'134': 100,
'135': 102,
'136': 101,
'137': 55,
'138': 54,
'139': 53,
'140': 97,
'141': 101,
'142': 53,
'143': 32,
'144': 45,
'145': 32,
'146': 76,
'147': 101,
'148': 100,
'149': 103,
'150': 101,
'151': 114,
'152': 69,
'153': 114,
'154': 114,
'155': 111,
'156': 114,
'157': 32,
'158': 45,
'159': 32,
'160': 82,
'161': 101,
'162': 115,
'163': 111,
'164': 117,
'165': 114,
'166': 99,
'167': 101,
'168': 78,
'169': 111,
'170': 116,
'171': 70,
'172': 111,
'173': 117,
'174': 110,
'175': 100,
'176': 58,
'177': 32,
'178': 108,
'179': 101,
'180': 100,
'181': 103,
'182': 101,
'183': 114,
'184': 58,
'185': 32,
'186': 114,
'187': 101,
'188': 115,
'189': 111,
'190': 117,
'191': 114,
'192': 99,
'193': 101,
'194': 32,
'195': 110,
'196': 111,
'197': 116,
'198': 32,
'199': 102,
'200': 111,
'201': 117,
'202': 110,
'203': 100,
'204': 41 } },
msg: 'Error:Failed to launch chaincode spec(Could not get deployment transaction for 6fd244693c6a6723859bd26ea9720ddc5337acef5fc750734daa1dddfe765ae5 - LedgerError - ResourceNotFound: ledger: resource not found)' }

Please help me to fix this.

Error on automatic deployment to Bluemix

I'm using the v2-typescript branch of fabric-boilerplate and deploying it to Bluemix. I ran npm run cf to get into the CF repository. Now, that I'm in the CF repository when I execute cd server && npm run deploy, it gives me the following error:

root@0e02eea94aac:/usr/src/app# cd server && npm run deploy
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info lifecycle [email protected]~predeploy: [email protected]
npm info lifecycle [email protected]~deploy: [email protected]

> [email protected] deploy /usr/src/app/server
> node dist/deploy.js

module.js:471
    throw err;
    ^

Error: Cannot find module '../../resources/testData.json'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/usr/src/app/server/dist/testdata/testData.js:10:18)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)

npm info lifecycle [email protected]~deploy: Failed to exec deploy script
npm ERR! Linux 4.4.43-boot2docker
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy"
npm ERR! node v6.9.1
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE
npm ERR! [email protected] deploy: `node dist/deploy.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] deploy script 'node dist/deploy.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the server package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node dist/deploy.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs server
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls server
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /usr/src/app/server/npm-debug.log

I can't see testdata.json file in the resources folder. I'm following the instruction given in the new readme file. Please help me in figuring this out.

Add GRPC to packages

I had to add "grpc": "0.13.0" to the dependencies in packages.json for it to work out of the box

Error TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.

Hi,

I am having trouble with adding a thing. Here's what I get in command line:

debug:
{ chaincodeID: 'a0ed64f9efff851b8f03b6e3fa28e4822f6bfeb2c16ca1761f3a2754a4fb0tee',
  fcn: 'update_things',
  args:
   [ '11223344',
     { id: '11223344', description: 'Piano Forte' },
     'test' ] }
Error TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
    at fromObject (buffer.js:262:9)
    at Function.Buffer.from (buffer.js:101:10)
    at new Buffer (buffer.js:80:17)
    at /Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:2301:40
    at Array.map (native)
    at prepend (/Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:2301:14)
    at TransactionContext.newInvokeOrQueryTransaction (/Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:1564:32)
    at /Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:1019:18
    at /Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:1179:20
    at TCertGetter.getNextTCert (/Users/user/Documents/Work/fabric-boilerplate/node_modules/hfc/lib/hfc.js:1651:20)
info: POST /api/v1/thing/update 500 2.193 ms - 21

This happens in this line:

// Invoke the request from the user object.
        var tx = user.invoke(invokeRequest);

The debug in the first code shows invokeRequest, after that it fails.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.