github.com/leonlxy/hyperledger@v1.0.0-alpha.0.20170427033203-34922035d248/core/endorser/endorser_test.yaml (about) 1 # CA server parameters 2 # 3 server: 4 # current version of the CA 5 version: "0.1" 6 7 # limits the number of operating system threads used by the CA 8 gomaxprocs: 2 9 10 # path to the OBC state directory and CA state subdirectory 11 # rootpath: "." 12 # cadir: ".ca" 13 14 # port the CA services are listening on 15 port: ":20051" 16 17 # TLS certificate and key file paths 18 tls: 19 20 # Enabling/disabling different logging levels of the CA. 21 # 22 logging: 23 trace: 0 24 info: 1 25 warning: 1 26 error: 1 27 panic: 1 28 29 # Enable attribute encryption in TCerts generated by TCA 30 tca: 31 attribute-encryption: 32 enabled: true 33 34 # Default attributes for Attribute Certificate Authority 35 aca: 36 attributes: 37 attribute-entry-0: user1;bank_a;company;ACompany;2015-01-01T00:00:00-03:00;; 38 attribute-entry-1: user1;bank_a;position;Software Staff;2015-01-01T00:00:00-03:00;2015-07-12T23:59:59-03:00; 39 attribute-entry-2: user1;bank_a;position;Software Engineer;2015-07-13T00:00:00-03:00;; 40 attribute-entry-3: user2;bank_a;company;ACompany;2001-02-02T00:00:00-03:00;; 41 attribute-entry-4: user2;bank_a;position;Project Manager;2001-02-02T00:00:00-03:00;; 42 address: localhost:20051 43 server-name: acap 44 enabled: true 45 46 # Default users to be registered with the CA on first launch. The role is a binary OR 47 # of the different roles a user can have: 48 # 49 # - simple client such as a wallet: CLIENT 50 # - non-validating peer: PEER 51 # - validating client: VALIDATOR 52 # - auditing client: AUDITOR 53 # 54 eca: 55 affiliations: 56 banks_and_institutions: 57 banks: 58 - bank_a 59 - bank_b 60 - bank_c 61 institutions: 62 - institution_a 63 users: 64 # <EnrollmentID>: <role (1:client, 2: peer, 4: validator, 8: auditor)> <EnrollmentPWD> <Affiliation> <Affiliation_Role> 65 lukas: 1 NPKYL39uKbkj institution_a 66 diego: 1 DRJ23pEQl16a institution_a 67 jim: 1 6avZQLwcUe9b institution_a 68 69 vp: 4 f3489fy98ghf 70 71 ############################################################################### 72 # 73 # CLI section 74 # 75 ############################################################################### 76 cli: 77 78 # The address that the cli process will use for callbacks from chaincodes 79 address: 0.0.0.0:7052 80 81 82 83 ############################################################################### 84 # 85 # REST section 86 # 87 ############################################################################### 88 rest: 89 90 # Enable/disable setting for the REST service. It is recommended to disable 91 # REST service on validators in production deployment and use non-validating 92 # nodes to host REST service 93 enabled: true 94 95 # The address that the REST service will listen on for incoming requests. 96 address: 0.0.0.0:7050 97 98 99 ############################################################################### 100 # 101 # LOGGING section 102 # 103 ############################################################################### 104 logging: 105 106 # Valid logging levels are case-insensitive strings chosen from 107 108 # CRITICAL | ERROR | WARNING | NOTICE | INFO | DEBUG 109 110 # Logging 'module' names are also strings, however valid module names are 111 # defined at runtime and are not checked for validity during option 112 # processing. 113 114 # Default logging levels are specified here for each of the peer 115 # commands. For commands that have subcommands, the defaults also apply to 116 # all subcommands of the command. These logging levels can be overridden 117 # on the command line using the --logging-level command-line option, or by 118 # setting the CORE_LOGGING_LEVEL environment variable. 119 120 # The logging level specification is of the form 121 122 # [<module>[,<module>...]=]<level>[:[<module>[,<module>...]=]<level>...] 123 124 # A logging level by itself is taken as the overall default. Otherwise, 125 # overrides for individual or groups of modules can be specified using the 126 # <module>[,<module>...]=<level> syntax. 127 128 # Examples: 129 # info - Set default to INFO 130 # warning:main,db=debug:chaincode=info - Override default WARNING in main,db,chaincode 131 # chaincode=info:main=debug:db=debug:warning - Same as above 132 msp: debug 133 peer: debug 134 crypto: info 135 status: warning 136 stop: warning 137 login: warning 138 vm: warning 139 chaincode: error 140 141 142 ############################################################################### 143 # 144 # Peer section 145 # 146 ############################################################################### 147 peer: 148 149 # Peer Version following version semantics as described here http://semver.org/ 150 # The Peer supplies this version in communications with other Peers 151 version: 0.1.0 152 153 # The Peer id is used for identifying this Peer instance. 154 id: jdoe 155 156 # The privateKey to be used by this peer 157 # privateKey: 794ef087680e2494fa4918fd8fb80fb284b50b57d321a31423fe42b9ccf6216047cea0b66fe8365a8e3f2a8140c6866cc45852e63124668bee1daa9c97da0c2a 158 159 # The networkId allows for logical seperation of networks 160 # networkId: dev 161 # networkId: test 162 networkId: dev 163 164 # The Address this Peer will listen on 165 listenAddress: 0.0.0.0:21212 166 # The Address this Peer will bind to for providing services 167 address: 0.0.0.0:21212 168 # Whether the Peer should programmatically determine the address to bind to. 169 # This case is useful for docker containers. 170 addressAutoDetect: true 171 172 # Peer port to accept connections on 173 port: 21212 174 # Setting for runtime.GOMAXPROCS(n). If n < 1, it does not change the current setting 175 gomaxprocs: -1 176 workers: 2 177 178 # Sync related configuration 179 sync: 180 blocks: 181 # Channel size for readonly SyncBlocks messages channel for receiving 182 # blocks from oppositie Peer Endpoints. 183 # NOTE: currently messages are not stored and forwarded, but rather 184 # lost if the channel write blocks. 185 channelSize: 10 186 state: 187 snapshot: 188 # Channel size for readonly syncStateSnapshot messages channel 189 # for receiving state deltas for snapshot from oppositie Peer Endpoints. 190 # NOTE: currently messages are not stored and forwarded, but 191 # rather lost if the channel write blocks. 192 channelSize: 50 193 deltas: 194 # Channel size for readonly syncStateDeltas messages channel for 195 # receiving state deltas for a syncBlockRange from oppositie 196 # Peer Endpoints. 197 # NOTE: currently messages are not stored and forwarded, 198 # but rather lost if the channel write blocks. 199 channelSize: 20 200 201 # Validator defines whether this peer is a validating peer or not, and if 202 # it is enabled, what consensus plugin to load 203 validator: 204 enabled: true 205 206 consensus: 207 # Consensus plugin to use. The value is the name of the plugin, e.g. pbft, noops ( this value is case-insensitive) 208 # if the given value is not recognized, we will default to noops 209 plugin: noops 210 211 # total number of consensus messages which will be buffered per connection before delivery is rejected 212 buffersize: 1000 213 214 events: 215 # The address that the Event service will be enabled on the validator 216 address: 0.0.0.0:7053 217 218 # total number of events that could be buffered without blocking the 219 # validator sends 220 buffersize: 100 221 222 # milliseconds timeout for producer to send an event. 223 # if < 0, if buffer full, unblocks immediately and not send 224 # if 0, if buffer full, will block and guarantee the event will be sent out 225 # if > 0, if buffer full, blocks till timeout 226 timeout: 10 227 228 # TLS Settings for p2p communications 229 tls: 230 enabled: false 231 cert: 232 file: testdata/server1.pem 233 key: 234 file: testdata/server1.key 235 236 # The server name use to verify the hostname returned by TLS handshake 237 # The key cert was generated using 238 # openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout testdata/server1.key -out testdata/server1.pem 239 serverhostoverride: dummy 240 241 # PKI member services properties 242 pki: 243 eca: 244 paddr: localhost:20051 245 tca: 246 paddr: localhost:20051 247 tlsca: 248 paddr: localhost:20051 249 tls: 250 enabled: false 251 rootcert: 252 file: tlsca.cert 253 # The server name use to verify the hostname returned by TLS handshake 254 serverhostoverride: 255 256 # Peer discovery settings. Controls how this peer discovers other peers 257 discovery: 258 259 # The root nodes are used for bootstrapping purposes, and generally 260 # supplied through ENV variables 261 rootnode: 262 263 # The duration of time between attempts to asks peers for their connected peers 264 period: 5s 265 266 ## leaving this in for example of sub map entry 267 # testNodes: 268 # - node : 1 269 # ip : 127.0.0.1 270 # port : 21212 271 # - node : 2 272 # ip : 127.0.0.1 273 # port : 21212 274 275 # Should the discovered nodes and their reputations 276 # be stored in DB and persisted between restarts 277 persist: true 278 279 # if peer discovery is off 280 # the peer window will show 281 # only what retrieved by active 282 # peer [true/false] 283 enabled: true 284 285 # number of workers that 286 # test the peers for being 287 # online [1..10] 288 workers: 8 289 290 # the period in seconds with which the discovery 291 # tries to reconnect to successful nodes 292 # 0 means the nodes are not reconnected 293 touchPeriod: 600 294 295 # the maximum nuber of nodes to reconnect to 296 # -1 for unlimited 297 touchMaxNodes: 100 298 299 # Path on the file system where peer will store data 300 fileSystemPath: /var/hyperledger/production 301 302 303 profile: 304 enabled: false 305 listenAddress: 0.0.0.0:6060 306 307 mspConfigPath: ../../sampleconfig/msp 308 309 # BCCSP (Blockchain crypto provider): Select which crypto implementation or 310 # library to use 311 BCCSP: 312 Default: SW 313 SW: 314 # TODO: The default Hash and Security level needs refactoring to be 315 # fully configurable. Changing these defaults requires coordination 316 # SHA2 is hardcoded in several places, not only BCCSP 317 Hash: SHA2 318 Security: 256 319 FileKeyStore: 320 KeyStore: 321 322 ############################################################################### 323 # 324 # VM section 325 # 326 ############################################################################### 327 vm: 328 329 # Endpoint of the vm management system. For docker can be one of the following in general 330 # unix:///var/run/docker.sock 331 # http://localhost:2375 332 # https://localhost:2376 333 endpoint: unix:///var/run/docker.sock 334 335 # settings for docker vms 336 docker: 337 tls: 338 enabled: false 339 cert: 340 file: /path/to/server.pem 341 ca: 342 file: /path/to/ca.pem 343 key: 344 file: /path/to/server-key.pem 345 346 ############################################################################### 347 # 348 # Chaincode section 349 # 350 ############################################################################### 351 chaincode: 352 353 # The id is used by the Chaincode stub to register the executing Chaincode 354 # ID with the Peerand is generally supplied through ENV variables 355 # the Path form of ID is provided when deploying the chaincode. The name is 356 # used for all other requests. The name is really a hashcode 357 # returned by the system in response to the deploy transaction. In 358 # development mode where user runs the chaincode, the name can be any string 359 id: 360 path: 361 name: 362 363 # Generic builder environment, suitable for most chaincode types 364 builder: $(DOCKER_NS)/fabric-ccenv:$(ARCH)-$(PROJECT_VERSION) 365 366 golang: 367 # golang will never need more than baseos 368 runtime: $(BASE_DOCKER_NS)/fabric-baseos:$(ARCH)-$(BASE_VERSION) 369 370 car: 371 # car may need more facilities (JVM, etc) in the future as the catalog 372 # of platforms are expanded. For now, we can just use baseos 373 runtime: $(BASE_DOCKER_NS)/fabric-baseos:$(ARCH)-$(BASE_VERSION) 374 375 java: 376 # This is an image based on java:openjdk-8 with addition compiler 377 # tools added for java shim layer packaging. 378 # This image is packed with shim layer libraries that are necessary 379 # for Java chaincode runtime. 380 Dockerfile: | 381 FROM $(DOCKER_NS)/fabric-javaenv:$(ARCH)-$(PROJECT_VERSION) 382 383 # timeout in millisecs for starting up a container and waiting for Register 384 # to come through. 1sec should be plenty for chaincode unit tests 385 startuptimeout: 300000 386 387 #timeout in millisecs for deploying chaincode from a remote repository. 388 deploytimeout: 30000 389 390 #mode - options are "dev", "net" 391 #dev - in dev mode, user runs the chaincode after starting validator from 392 # command line on local machine 393 #net - in net mode validator will run chaincode in a docker container 394 395 mode: net 396 # typically installpath should not be modified. Otherwise, user must ensure 397 # the chaincode executable is placed in the path specifed by installpath in 398 # the image 399 installpath: /opt/gopath/bin/ 400 401 # keepalive in seconds. In situations where the communiction goes through a 402 # proxy that does not support keep-alive, this parameter will maintain connection 403 # between peer and chaincode. 404 # A value <= 0 turns keepalive off 405 keepalive: 0 406 407 # system chaincodes whitelist. To add system chaincode "myscc" to the 408 # whitelist, add "myscc: enable" to the list 409 system: 410 lscc: enable 411 escc: enable 412 vscc: enable 413 414 ############################################################################### 415 # 416 # Ledger section - ledger configuration encompases both the blockchain 417 # and the state 418 # 419 ############################################################################### 420 ledger: 421 422 blockchain: 423 424 # Setting the deploy-system-chaincode property to false will prevent the 425 # deploying of system chaincode at genesis time. 426 deploy-system-chaincode: false 427 428 state: 429 430 # Control the number state deltas that are maintained. This takes additional 431 # disk space, but allow the state to be rolled backwards and forwards 432 # without the need to replay transactions. 433 deltaHistorySize: 500 434 435 # The data structure in which the state will be stored. Different data 436 # structures may offer different performance characteristics. 437 # Options are 'buckettree', 'trie' and 'raw'. 438 # ( Note:'raw' is experimental and incomplete. ) 439 # If not set, the default data structure is the 'buckettree'. 440 # This CANNOT be changed after the DB has been created. 441 dataStructure: 442 # The name of the data structure is for storing the state 443 name: buckettree 444 # The data structure specific configurations 445 configs: 446 # configurations for 'bucketree'. These CANNOT be changed after the DB 447 # has been created. 'numBuckets' defines the number of bins that the 448 # state key-values are to be divided 449 numBuckets: 1000003 450 # 'maxGroupingAtEachLevel' defines the number of bins that are grouped 451 #together to construct next level of the merkle-tree (this is applied 452 # repeatedly for constructing the entire tree). 453 maxGroupingAtEachLevel: 5 454 # 'bucketCacheSize' defines the size (in MBs) of the cache that is used to keep 455 # the buckets (from root upto secondlast level) in memory. This cache helps 456 # in making state hash computation faster. A value less than or equals to zero 457 # leads to disabling this caching. This caching helps more if transactions 458 # perform significant writes. 459 bucketCacheSize: 100 460 461 # configurations for 'trie' 462 # 'tire' has no additional configurations exposed as yet 463 464 ################################################################################ 465 # 466 # SECTION: STATETRANSFER 467 # 468 # - This applies to recovery behavior when the replica has detected 469 # a state transfer is required 470 # 471 # - This might happen: 472 # - During a view change in response to a faulty primary 473 # - After a network outage which has isolated the replica 474 # - If the current blockchain/state is determined to be corrupt 475 # 476 ################################################################################ 477 statetransfer: 478 479 # Should a replica attempt to fix damaged blocks? 480 # In general, this should be set to true, setting to false will cause 481 # the replica to panic, and require a human's intervention to intervene 482 # and fix the corruption 483 recoverdamage: true 484 485 # The number of blocks to retrieve per sync request 486 blocksperrequest: 20 487 488 # The maximum number of state deltas to attempt to retrieve 489 # If more than this number of deltas is required to play the state up to date 490 # then instead the state will be flagged as invalid, and a full copy of the state 491 # will be retrieved instead 492 maxdeltas: 200 493 494 # Timeouts 495 timeout: 496 497 # How long may returning a single block take 498 singleblock: 2s 499 500 # How long may returning a single state delta take 501 singlestatedelta: 2s 502 503 # How long may transferring the complete state take 504 fullstate: 60s