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