0
votes

Environment Details composer -v 0.19.0

My production environment don't have Internet connection. But running the 'composer network install' or 'composer network start' and 'composer network upgrade' required active Internet connection to download various NPM module. To overcome this problem I have set up local NPM registry by using 'Verdaccio' docker image. Now I can see all NPM module is getting downloaded from 'Verdaccio'. But still 'composer network upgrade' command failed.
Command : composer network upgrade -n tutorial-network -V 0.0.11 -c PeerAdmin@fabric-network -o npmrcFile=/home/firoz/tutorial-network/npmConfig

Output : Upgrading business network definition. This may take a minute... Error: Error trying to upgrade business network. Error: No valid responses from any peers. Response from attempted peer comms was an error: Error: 8 RESOURCE_EXHAUSTED: received trailing metadata size exceeds limit

Same command successfully run when machine having Internet connection. When I looked into Hyperledger/fabric-peer container log I can see the following error.

[email protected] install /chaincode/output/node_modules/x509
node-gyp rebuild
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: getaddrinfo EAI_AGAIN nodejs.org:443
gyp ERR! stack at Object._errnoException (util.js:1022:11)
gyp ERR! stack at errnoException (dns.js:55:15)
gyp ERR! stack at GetAddrInfoReqWrap.onlookup [as oncomplete]
(dns.js:92:26) gyp ERR! System Linux 4.13.0-38-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules
/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /chaincode/output/node_modules/x509
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok

It seems node-gyp is still trying to connect with nodejs.org:443.

Can I do some type of configuration so node-gyp should not look for Internet connection?

1

1 Answers

0
votes

The error - ie specific failure in that message above - is a getaddrinfo error for nodejs.org - it's a failing DNS lookup. I suspect that's a general issue on your network. Also you've verified that yourself with the 'before' and after (ie its not a Hyperledger Composer issue).

https://github.com/nodejs/node-gyp/issues/235#issuecomment-16261898 - if you want to set up a 'Verdaccio' or proxy style repository for your node modules

See also the 2nd comment in Instantiating Chaincode in Hyperledger Composer with local npm registry you would need to load your Composer modules in the registry (and all the dependencies)