bxforce / bnc-hlf Goto Github PK
View Code? Open in Web Editor NEWBlockchain Network Composer for Hyperledger Fabric
License: Apache License 2.0
Blockchain Network Composer for Hyperledger Fabric
License: Apache License 2.0
Add verification that crypto-config exists before generating genesis
Some of the wallet files located in /var/www/xdev/bnc-hlf/build/hyperledger-fabric-network/wallets/organizations/
contains a null mspId which trigger an error with the SDK
For example with the file /var/www/xdev/bnc-hlf/build/hyperledger-fabric-network/wallets/organizations/org1.bnc.com/org1admin.id
{"credentials":{"certificate":"-----BEGIN CERTIFICATE-----\nMIICTDCCAfOgAwIBAgIUbhOas/MetdffPXHK8tN66p7OcRcwCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBjYTEub3Jn\nMS5ibmMuY29tMB4XDTIwMDcxNTEwMzIwMFoXDTIxMDcxNTEwMzcwMFowJDEOMAwG\nA1UECxMFYWRtaW4xEjAQBgNVBAMTCW9yZzFhZG1pbjBZMBMGByqGSM49AgEGCCqG\nSM49AwEHA0IABHI7dRfxaEUwd1BZZ7hF81KzRJHqIXtvkELbtSjaceP4TYW/qfak\nh1j98hCLR4oCUxaowbTmXD6YVzFwuE3a50ijgb4wgbswDgYDVR0PAQH/BAQDAgeA\nMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFKmFaGWH0FeUx71B/0TnkkFrOTIhMB8G\nA1UdIwQYMBaAFBgV+og059GbVwMd7SYjoy4Im6UAMFsGCCoDBAUGBwgBBE97ImF0\ndHJzIjp7ImhmLkFmZmlsaWF0aW9uIjoiIiwiaGYuRW5yb2xsbWVudElEIjoib3Jn\nMWFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0cAMEQCIGr7\nUgYeoPo3G8q+kv5EKy/gERqtPXuKmlHQG2rLM0PNAiB9VQn7pxKYUnSVlgrNIZXs\n2eFNB9u5PuSYX3WuEW/TJg==\n-----END CERTIFICATE-----\n","privateKey":"-----BEGIN PRIVATE KEY-----\r\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgXzRmg6eqcaWvqWYf\r\nZZH8zn6BhcZ0wHQ/3jgcZLP4cRehRANCAARyO3UX8WhFMHdQWWe4RfNSs0SR6iF7\r\nb5BC27Uo2nHj+E2Fv6n2pIdY/fIQi0eKAlMWqMG05lw+mFcxcLhN2udI\r\n-----END PRIVATE KEY-----\r\n"},"mspId":null,"type":"X.509","version":1}
I believe that file should have org1MSP as mspId
We can't use relative path for the config template_folder, ie:
template_folder: "./build/hyperledger-fabric-network"
gives me:
[BNC] - [End] Ran Download fabric binaries
[BNC] - [channel config]: HLF binaries downloaded !!!
[BNC] - [Peer Cred]: parsing deploy config done !!!
[BNC] - [Peer Cred]: docker engine configured !!!
[BNC] - [Peer Cred]: start CA container...
[BNC] - CA running
[BNC] - Folder OwnerShip updated successfully
[BNC] - [Peer Cred]: CA container started (true) !!!
[BNC] - [Peer Cred]: start create peer crypto & certs credentials...
[BNC] - Initiate CA Client services
[BNC] - Initiate CA Client services done !!!
[BNC] - Enroll CA Registrar
[BNC] - Successfully enrolled admin user "admin and imported it into the wallet
[BNC] - The admin account is enrolled (true)
[BNC] - Enroll CA Registrar done !!!
[BNC] - AssertionError [ERR_ASSERTION]: Trying to copy from a source that does not exist: ./build/hyperledger-fabric-network/organizations/fabric-ca/org1/crypto/ca-cert.pem
[BNC] - [Peer Cred]: credentials generated (false) !
Add the support for a CI-CD workflow, mainly for:
The file commands.ts has a shebang after a comment block. It should be at the start
> [email protected] prepare /var/www/xdev/bnc-hlf
> npm run build
> [email protected] build /var/www/xdev/bnc-hlf
> npm run clean && tsc
> [email protected] clean /var/www/xdev/bnc-hlf
> rimraf dist
src/command.ts:17:1 - error TS18026: '#!' can only be used at the start of a file.
17 #!/usr/bin/env node
src/command.ts:17:16 - error TS1005: ';' expected.
17 #!/usr/bin/env node
~~~~
Struggling to know the exact command to try out. It would be nice to have an example in the read me "ready to go", or a default config loaded if no file is passed.
Anyway, i'm having this behaviour during the new / init command (node 12.18):
mvanmeerbeck@mvanmeerbeck-pc:/var/www/xdev/bnc-hlf$ bnc new -f tests/wassim/config-deploy-wassim.yaml
[BNC] - Validate input configuration file
[BNC] - Validating tests/wassim/config-deploy-wassim.yaml...
[BNC] - Start parsing the blockchain configuration file
[BNC] - Starting Parsing configuration file
[BNC] - Finish Parsing configuration file
[BNC] - Finishing parsing the blockchain configuration file
mvanmeerbeck@mvanmeerbeck-pc:/var/www/xdev/bnc-hlf$ ls -al /home/wassim/hyperledger-fabric-network
total 8
drwxr-xr-x 2 mvanmeerbeck mvanmeerbeck 4096 juin 18 12:22 .
drwxr-xr-x 3 root root 4096 juin 18 12:22 ..
mvanmeerbeck@mvanmeerbeck-pc:/var/www/xdev/bnc-hlf$ bnc init -f tests/wassim/config-genesis-wassim.yaml
[BNC] - Request Init command ...
[BNC] - [Init]: generate all config files (genesis, configtx, anchortx)...
[BNC] - [Init]: exit command !!!
mvanmeerbeck@mvanmeerbeck-pc:/var/www/xdev/bnc-hlf$ ls -al /home/wassim/hyperledger-fabric-network
total 8
drwxr-xr-x 2 mvanmeerbeck mvanmeerbeck 4096 juin 18 12:22 .
drwxr-xr-x 3 root root 4096 juin 18 12:22 ..
The java fabric SDK needs the connection-profile.yaml file to connect to the peer:
https://hyperledger.github.io/fabric-gateway-java/master/org/hyperledger/fabric/gateway/Gateway.Builder.html#networkConfig-java.nio.file.Path-
There are multiple connection-profile file in hyperledger-fabric-network/settings
but they don't seem to be complete. Which one is the right one ?
Currently, my connection-profile (not in bnc) looks like this
---
name: ipng.libriciel.fr
version: 1.0.0
client:
organization: Org1
connection:
timeout:
peer:
endorser: '300'
organizations:
Org1:
mspid: Org1MSP
peers:
- peer0.org1.ipng.libriciel.fr
- peer1.org1.ipng.libriciel.fr
certificateAuthorities:
- ca.org1.ipng.libriciel.fr
Org2:
mspid: Org2MSP
peers:
- peer0.org2.ipng.libriciel.fr
- peer1.org2.ipng.libriciel.fr
certificateAuthorities:
- ca.org2.ipng.libriciel.fr
channels:
ipng-channel:
orderers:
- orderer.ipng.libriciel.fr
peers:
peer0.org1.ipng.libriciel.fr:
endorsingPeer: true
chaincodeQuery: true
ledgerQuery: true
eventSource: true
peer1.org1.ipng.libriciel.fr:
endorsingPeer: false
chaincodeQuery: true
ledgerQuery: true
eventSource: true
peer0.org2.ipng.libriciel.fr:
endorsingPeer: true
chaincodeQuery: true
ledgerQuery: true
eventSource: true
peer1.org2.ipng.libriciel.fr:
endorsingPeer: false
chaincodeQuery: true
ledgerQuery: true
eventSource: true
orderers:
orderer.ipng.libriciel.fr:
url: grpcs://orderer.ipng.libriciel.fr:7050
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICWzCCAgGgAwIBAgIQZ9g2P8D6pFq/HFSyF2h0XjAKBggqhkjOPQQDAjB4MQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEaMBgGA1UEChMRaXBuZy5saWJyaWNpZWwuZnIxIDAeBgNVBAMTF3Rs
c2NhLmlwbmcubGlicmljaWVsLmZyMB4XDTE5MTIwNDEwNTMwMFoXDTI5MTIwMTEw
NTMwMFoweDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNV
BAcTDVNhbiBGcmFuY2lzY28xGjAYBgNVBAoTEWlwbmcubGlicmljaWVsLmZyMSAw
HgYDVQQDExd0bHNjYS5pcG5nLmxpYnJpY2llbC5mcjBZMBMGByqGSM49AgEGCCqG
SM49AwEHA0IABPQHbpNJruzqn43LLpEuiEYsmjCckoA5qDYvQOSl4IBFNGSXzGCU
esAn+b/OaL8NAlIcA9ebf4EZwxoRoSb0zl2jbTBrMA4GA1UdDwEB/wQEAwIBpjAd
BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zAp
BgNVHQ4EIgQg3+8/kszFgUIWLvB5pOqhSEGaY05zHHKtjNsuf3h+xQkwCgYIKoZI
zj0EAwIDSAAwRQIhALWSgw9QsKWKE5jIHpp3hxtGO98T8VgaWAVxKWEN6X0OAiBE
jBW6Kc9lbiRWpf5sgDd8clrNsLiapyHhGrq3TApxOA==
-----END CERTIFICATE-----
grpcOptions:
ssl-target-name-override: orderer.ipng.libriciel.fr
peers:
peer0.org1.ipng.libriciel.fr:
url: grpcs://peer0.org1.ipng.libriciel.fr:7051
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICcjCCAhigAwIBAgIRAIkrhfEBlqscb4L/AJxwtGYwCgYIKoZIzj0EAwIwgYIx
CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4g
RnJhbmNpc2NvMR8wHQYDVQQKExZvcmcxLmlwbmcubGlicmljaWVsLmZyMSUwIwYD
VQQDExx0bHNjYS5vcmcxLmlwbmcubGlicmljaWVsLmZyMB4XDTE5MTIwNDEwNTMw
MFoXDTI5MTIwMTEwNTMwMFowgYIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxp
Zm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMR8wHQYDVQQKExZvcmcxLmlw
bmcubGlicmljaWVsLmZyMSUwIwYDVQQDExx0bHNjYS5vcmcxLmlwbmcubGlicmlj
aWVsLmZyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEK8G/rb161YSOGXFXJhze
XpX2UUPy4l8RVzGcJNzhqtptz8PgLGH/GBd5gKywH6W8wHDAMo/Ql2qvOY25hEgB
TaNtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCAvc33hciY3eU/yvXBZbqyK
5XSsMoUWNkkiAwNMYtxYODAKBggqhkjOPQQDAgNIADBFAiEA+uGlwhCcyDghWOIk
00tZlCbUcFKm0r3b3oyioElBelICIB7oPNBXS6cEtsiIhJpRNx0SLTfeweS2M7y4
dGcO7553
-----END CERTIFICATE-----
grpcOptions:
ssl-target-name-override: peer0.org1.ipng.libriciel.fr
hostnameOverride: peer0.org1.ipng.libriciel.fr
peer1.org1.ipng.libriciel.fr:
url: grpcs://peer1.org1.ipng.libriciel.fr:8051
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICcjCCAhigAwIBAgIRAIkrhfEBlqscb4L/AJxwtGYwCgYIKoZIzj0EAwIwgYIx
CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4g
RnJhbmNpc2NvMR8wHQYDVQQKExZvcmcxLmlwbmcubGlicmljaWVsLmZyMSUwIwYD
VQQDExx0bHNjYS5vcmcxLmlwbmcubGlicmljaWVsLmZyMB4XDTE5MTIwNDEwNTMw
MFoXDTI5MTIwMTEwNTMwMFowgYIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxp
Zm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMR8wHQYDVQQKExZvcmcxLmlw
bmcubGlicmljaWVsLmZyMSUwIwYDVQQDExx0bHNjYS5vcmcxLmlwbmcubGlicmlj
aWVsLmZyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEK8G/rb161YSOGXFXJhze
XpX2UUPy4l8RVzGcJNzhqtptz8PgLGH/GBd5gKywH6W8wHDAMo/Ql2qvOY25hEgB
TaNtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCAvc33hciY3eU/yvXBZbqyK
5XSsMoUWNkkiAwNMYtxYODAKBggqhkjOPQQDAgNIADBFAiEA+uGlwhCcyDghWOIk
00tZlCbUcFKm0r3b3oyioElBelICIB7oPNBXS6cEtsiIhJpRNx0SLTfeweS2M7y4
dGcO7553
-----END CERTIFICATE-----
grpcOptions:
ssl-target-name-override: peer1.org1.ipng.libriciel.fr
hostnameOverride: peer1.org1.ipng.libriciel.fr
peer0.org2.ipng.libriciel.fr:
url: grpcs://peer0.org2.ipng.libriciel.fr:9051
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICcTCCAhigAwIBAgIRALH8CjsUGld4GJ/8mtGW4UwwCgYIKoZIzj0EAwIwgYIx
CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4g
RnJhbmNpc2NvMR8wHQYDVQQKExZvcmcyLmlwbmcubGlicmljaWVsLmZyMSUwIwYD
VQQDExx0bHNjYS5vcmcyLmlwbmcubGlicmljaWVsLmZyMB4XDTE5MTIwNDEwNTMw
MFoXDTI5MTIwMTEwNTMwMFowgYIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxp
Zm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMR8wHQYDVQQKExZvcmcyLmlw
bmcubGlicmljaWVsLmZyMSUwIwYDVQQDExx0bHNjYS5vcmcyLmlwbmcubGlicmlj
aWVsLmZyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8XoBXhyVXeHdDjMV0Vxs
psoKa9BUMqnxTThPjN+O4Fu5yyEv6vdPS9VDtRkudPVIKbMvLyVMda/wLyvfvD3I
SaNtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCCS8E+ZtEywbYKdke7NiFQU
EuvUn/r2CE2ejeEeYfKBcDAKBggqhkjOPQQDAgNHADBEAiEA5vgQ0eg6Fz3lmXZP
HFttfBF8Ct3y8/XGviLlQrS7qPgCHwXEqsynigsjvhIDPv3nLHHu3JiM4WN+cOBf
qQUwH0Q=
-----END CERTIFICATE-----
grpcOptions:
ssl-target-name-override: peer0.org2.ipng.libriciel.fr
hostnameOverride: peer0.org2.ipng.libriciel.fr
peer1.org2.ipng.libriciel.fr:
url: grpcs://peer1.org2.ipng.libriciel.fr:10051
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICcTCCAhigAwIBAgIRALH8CjsUGld4GJ/8mtGW4UwwCgYIKoZIzj0EAwIwgYIx
CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4g
RnJhbmNpc2NvMR8wHQYDVQQKExZvcmcyLmlwbmcubGlicmljaWVsLmZyMSUwIwYD
VQQDExx0bHNjYS5vcmcyLmlwbmcubGlicmljaWVsLmZyMB4XDTE5MTIwNDEwNTMw
MFoXDTI5MTIwMTEwNTMwMFowgYIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxp
Zm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMR8wHQYDVQQKExZvcmcyLmlw
bmcubGlicmljaWVsLmZyMSUwIwYDVQQDExx0bHNjYS5vcmcyLmlwbmcubGlicmlj
aWVsLmZyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8XoBXhyVXeHdDjMV0Vxs
psoKa9BUMqnxTThPjN+O4Fu5yyEv6vdPS9VDtRkudPVIKbMvLyVMda/wLyvfvD3I
SaNtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCCS8E+ZtEywbYKdke7NiFQU
EuvUn/r2CE2ejeEeYfKBcDAKBggqhkjOPQQDAgNHADBEAiEA5vgQ0eg6Fz3lmXZP
HFttfBF8Ct3y8/XGviLlQrS7qPgCHwXEqsynigsjvhIDPv3nLHHu3JiM4WN+cOBf
qQUwH0Q=
-----END CERTIFICATE-----
grpcOptions:
ssl-target-name-override: peer1.org2.ipng.libriciel.fr
hostnameOverride: peer1.org2.ipng.libriciel.fr
certificateAuthorities:
ca.org1.ipng.libriciel.fr:
url: https://ca.org1.ipng.libriciel.fr:7054
caName: ca.org1.ipng.libriciel.fr
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICaTCCAhCgAwIBAgIRAMNcoTQZNOrtV6Zg6TIGOFcwCgYIKoZIzj0EAwIwfzEL
MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG
cmFuY2lzY28xHzAdBgNVBAoTFm9yZzEuaXBuZy5saWJyaWNpZWwuZnIxIjAgBgNV
BAMTGWNhLm9yZzEuaXBuZy5saWJyaWNpZWwuZnIwHhcNMTkxMjA0MTA1MzAwWhcN
MjkxMjAxMTA1MzAwWjB/MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5p
YTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEChMWb3JnMS5pcG5nLmxp
YnJpY2llbC5mcjEiMCAGA1UEAxMZY2Eub3JnMS5pcG5nLmxpYnJpY2llbC5mcjBZ
MBMGByqGSM49AgEGCCqGSM49AwEHA0IABA27bUf+A5I16UwFvTp4Ws0mN2FU7JJ+
jsy6LqvmH7JauiOiLENxudD9ivxeCrERJRQ9nmjYwuNx2O8v+hu8IJCjbTBrMA4G
A1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDwYD
VR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgVxSLNOdwfn0H4qS3ytNAbK3aSJ/pZtAS
xR4eysEx6iowCgYIKoZIzj0EAwIDRwAwRAIgC9XpVNpsX8tNy5mTP/u868cECX1t
kEYYTk09Q/3WsXMCIG2BXoL/UvC0ms1d/dK2D3fxooDhXNMrgKPv5l9n18Xe
-----END CERTIFICATE-----
httpOptions:
verify: false
ca.org2.ipng.libriciel.fr:
url: https://ca.org2.ipng.libriciel.fr:8054
caName: ca.org2.ipng.libriciel.fr
tlsCACerts:
pem: |
-----BEGIN CERTIFICATE-----
MIICaDCCAg+gAwIBAgIQPWqEqNYJcFOz9csNiPiwNzAKBggqhkjOPQQDAjB/MQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEfMB0GA1UEChMWb3JnMi5pcG5nLmxpYnJpY2llbC5mcjEiMCAGA1UE
AxMZY2Eub3JnMi5pcG5nLmxpYnJpY2llbC5mcjAeFw0xOTEyMDQxMDUzMDBaFw0y
OTEyMDExMDUzMDBaMH8xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlh
MRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMR8wHQYDVQQKExZvcmcyLmlwbmcubGli
cmljaWVsLmZyMSIwIAYDVQQDExljYS5vcmcyLmlwbmcubGlicmljaWVsLmZyMFkw
EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEO9/n/ZQcJlG4jd/bviuPMau7aj1lmBe/
xwl3YMg+LurRpNvmcrTsZtquMnWRyPoDI2/j6DMrYOTECKyVBgjCg6NtMGswDgYD
VR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAPBgNV
HRMBAf8EBTADAQH/MCkGA1UdDgQiBCAzJVBCgShElr3eNTymBHwPAlEAiJ0JdDw1
x6Y5yMjOlzAKBggqhkjOPQQDAgNHADBEAiB+HV0/mljaGxFJj+T4waEejPh9/72a
s3/VsU5QPZt6FQIgSBPX7w3m5mVotwZgzrcPb0elOUMvn4peJa+H1AD0EWo=
-----END CERTIFICATE-----
httpOptions:
verify: false
The orderers enrollment fail when the orderers of org1 and org2 have the same name because it doesn't use the domain name of each org but the "ordererDomain":
root@ipng-org1:~/bnc# bnc enroll-orderers -f config-genesis-org1-org2.yaml
[BNC] - [Orderer Cred]: start parsing...
[BNC] - Parsing genesis input file
[BNC] - Validating config-genesis-org1-org2.yaml...
[BNC] - Input genesis file validated
[BNC] - Start parsing genesis input file
[BNC] - Genesis input file parsed
[BNC] - [Orderer Cred]: parsing done!!!
[BNC] - [Orderer Cred]: configure local docker engine to be used for the generation process !!!
[BNC] - Docker network (bnc_network) already exists
[BNC] - [Orderer Cred]: docker engine configured !!!
[BNC] - [Orderer Cred]: start CA container...
[BNC] - CA running
[BNC] - Folder OwnerShip updated successfully
[BNC] - [Orderer Cred]: CA container started (true) !!!
[BNC] - [Orderer Cred]: start generating credentials...
[BNC] - Initiate CA Client services
[BNC] - CA initialized done
[BNC] - Start enrolling Orderer CA Registrar...
[BNC] - Successfully enrolled admin user "admin and imported it into the wallet
[BNC] - The admin account is enrolled (true)
[BNC] - Enrolling Orderer CA Registrar done !!!
[BNC] - Start enrolling Orderer Admin user...
[BNC] - Successfully add user "ordererOrganizationAdmin and imported it into the wallet
[BNC] - Orderer Admin is enrolled successfully
[BNC] - Enrolling Orderer Admin user done !!!
[BNC] - Start register & enroll Orderers...
+ fabric-ca-client gencsr --csr.cn orderer0.org1.ipng.theblockchainxdev.com --csr.hosts orderer0.org1.ipng.theblockchainxdev.com,localhost -M /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com -H /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com
2020/07/20 16:26:33 [INFO] Created a default configuration file at /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com/fabric-ca-client-config.yaml
2020/07/20 16:26:33 [INFO] generating key: &{A:ecdsa S:256}
2020/07/20 16:26:33 [INFO] encoded CSR
2020/07/20 16:26:33 [INFO] Stored CSR at /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com/signcerts/orderer0.org1.ipng.theblockchainxdev.com.csr
+ set +x
[BNC] - Successfully add user "orderer0.org1.ipng.theblockchainxdev.com and imported it into the wallet
[BNC] - Orderer orderer0 is enrolled successfully
[BNC] - TLS enrolled for user orderer0.org1.ipng.theblockchainxdev.com
[BNC] - Orderer TLS orderer0 is enrolled successfully
+ fabric-ca-client gencsr --csr.cn orderer0.org1.ipng.theblockchainxdev.com --csr.hosts orderer0.org1.ipng.theblockchainxdev.com,localhost -M /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com -H /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com
2020/07/20 16:26:33 [INFO] Created a default configuration file at /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com/fabric-ca-client-config.yaml
2020/07/20 16:26:33 [INFO] generating key: &{A:ecdsa S:256}
2020/07/20 16:26:33 [INFO] encoded CSR
2020/07/20 16:26:33 [INFO] Stored CSR at /home/docker-user/bnc/build/hyperledger-fabric-network/csr/ordererOrganization.org1.ipng.theblockchainxdev.com/signcerts/orderer0.org1.ipng.theblockchainxdev.com.csr
+ set +x
[BNC] - An identity for the user (orderer0.org1.ipng.theblockchainxdev.com) already exists
[BNC] - Orderer orderer0 is enrolled successfully
[BNC] - TypeError: Cannot read property 'enrollment' of null
[BNC] - [Orderer Cred]: credentials generated --> (false) !!!
My config-genesis-org1-org2.yaml
orderer0.org1.ipng.theblockchainxdev.com
orderer0.org2.ipng.theblockchainxdev.com
genesis:
template_folder: "/home/docker-user/bnc/build/hyperledger-fabric-network"
consensus: "raft"
ordererDomain: "org1.ipng.theblockchainxdev.com"
ca:
url: "127.0.0.1"
port: 9054
organisations:
- organisation: "org1"
domain_name: "org1.ipng.theblockchainxdev.com"
orderers:
- orderer: "orderer0"
host_name: "orderer0.org1.ipng.theblockchainxdev.com"
port: 7050
anchorPeer:
host_name: "peer0.org1.ipng.theblockchainxdev.com"
port: 7051
- organisation: "org2"
domain_name: "org2.ipng.theblockchainxdev.com"
orderers:
- orderer: "orderer0"
host_name: "orderer0.org2.ipng.theblockchainxdev.com"
port: 7050
anchorPeer:
host_name: "peer0.org2.ipng.theblockchainxdev.com"
port: 7051
mvanmeerbeck@mvanmeerbeck-pc:/var/www/xdev/bnc-hlf$ npm link
> [email protected] install /var/www/xdev/bnc-hlf/node_modules/pkcs11js
> node-gyp rebuild
make : on entre dans le répertoire « /var/www/xdev/bnc-hlf/node_modules/pkcs11js/build »
CXX(target) Release/obj.target/pkcs11/src/main.o
CXX(target) Release/obj.target/pkcs11/src/dl.o
CXX(target) Release/obj.target/pkcs11/src/const.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/error.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/v8_convert.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/template.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/mech.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_aes.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_rsa.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/param_ecdh.o
CXX(target) Release/obj.target/pkcs11/src/pkcs11/pkcs11.o
CXX(target) Release/obj.target/pkcs11/src/async.o
CXX(target) Release/obj.target/pkcs11/src/node.o
SOLINK_MODULE(target) Release/obj.target/pkcs11.node
COPY Release/pkcs11.node
make : on quitte le répertoire « /var/www/xdev/bnc-hlf/node_modules/pkcs11js/build »
> [email protected] install /var/www/xdev/bnc-hlf/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using request for node-pre-gyp https download
[grpc] Success: "/var/www/xdev/bnc-hlf/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64-glibc/grpc_node.node" is installed via remote
> [email protected] install /var/www/xdev/bnc-hlf/node_modules/husky
> node husky install
husky > Setting up git hooks
ENOENT: no such file or directory, mkdir 'node_modules/husky/.git/hooks'
husky > Failed to install
> [email protected] postinstall /var/www/xdev/bnc-hlf/node_modules/mem-fs-editor/node_modules/ejs
> node ./postinstall.js
Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)
> [email protected] postinstall /var/www/xdev/bnc-hlf/node_modules/ejs
> node --harmony ./postinstall.js
Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)
> [email protected] postinstall /var/www/xdev/bnc-hlf/node_modules/husky
> opencollective-postinstall || exit 0
Thank you for using husky!
If you rely on this package, please consider supporting our open collective:
> https://opencollective.com/husky/donate
> [email protected] prepare /var/www/xdev/bnc-hlf
> npm run build
> [email protected] build /var/www/xdev/bnc-hlf
> npm run clean && tsc
> [email protected] clean /var/www/xdev/bnc-hlf
> rimraf dist
npm WARN [email protected] requires a peer of fabric-ca-client@>=~1.1.0 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
added 1082 packages from 566 contributors and audited 821 packages in 39.999s
found 22 vulnerabilities (18 low, 4 high)
run `npm audit fix` to fix them, or `npm audit` for details
npm ERR! path ../lib/node_modules/bnc/dist/command.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/bnc/dist/command.js' -> '/usr/bin/bnc'
npm ERR! { [OperationalError: EACCES: permission denied, symlink '../lib/node_modules/bnc/dist/command.js' -> '/usr/bin/bnc']
npm ERR! cause:
npm ERR! { [Error: EACCES: permission denied, symlink '../lib/node_modules/bnc/dist/command.js' -> '/usr/bin/bnc']
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/bnc/dist/command.js',
npm ERR! dest: '/usr/bin/bnc' },
npm ERR! isOperational: true,
npm ERR! stack:
npm ERR! "Error: EACCES: permission denied, symlink '../lib/node_modules/bnc/dist/command.js' -> '/usr/bin/bnc'",
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/bnc/dist/command.js',
npm ERR! dest: '/usr/bin/bnc' }
```
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.