-
Notifications
You must be signed in to change notification settings - Fork 12
Description
Configuration Files
TOML configuration file
All configurations described in the TOML configuration file can be customized in CLI arguments.
It has configurations for a node. Each node can change the values in the TOML configuration file freely. It does not affect network behavior.
For example, you can change the port number or data directory in the TOML configuration file.
Scheme file
Contains configurations for a network. It contains Tendermint parameters and Genesis block information. All nodes in a network should have the same scheme file.
App descriptor
Contains configurations for modules. It contains information that which modules are used in a network. It contains configurations for modules.
Some configuration in the app descriptor must be the same in a network. For example, which modules are used. How they are connected must be the same in a network. Some configurations like the number of threads do not affect network behavior.
Splitting App descriptor to App descriptor and Link descriptor
We have a plan to split the app descriptor file: Foundry configuration (genesis config, transaction services) and general linking instructions (export, import, init config). Let's say the latter as a 'link descriptor'.
See #512
Removing Scheme file
We can think of the content of the scheme file is configurations for the host in the app descriptor. The app descriptor contains the genesis configuration of modules. The scheme file contains the genesis header's information. We don't need to have two configuration files for a genesis block.
Configuration for network or for node
The current app descriptor has two types of configurations. As I said before, some configurations are for the network, some configurations are for a node.
We didn't discuss yet whether should we split them or how do we split them.