input-output-hk / cardano-shell

Node shell, a thin layer for running the node and it's modules.
Apache License 2.0
31 stars 11 forks source link

Migrate configuration.yaml to Haskell #8

Closed ksaric closed 5 years ago

ksaric commented 6 years ago

The configuration file (https://github.com/input-output-hk/cardano-sl/blob/develop/lib/configuration.yaml) is too large and contains things that are really not configurations. They would be mostly constants.

The task is to create a Haskell module on top of https://github.com/input-output-hk/cardano-shell/pull/7 which contains all this information in this repository. There is a common structure, so let's use a common structure.

erikd commented 6 years ago

The thing to note is that I suspect some of the item in that configuration object are not even needed in the post OBFT version. Anything to do with the VSS (verifiable secret sharing), LRC, SSC can probably be dropped because they are not relevant for OBFT and probably different for the new Ouroboros protocols.

robcohen commented 6 years ago

Created a bunch of data types for the configuration.

robcohen commented 5 years ago

Compiled a description of the variables in one place for quick ref: https://github.com/input-output-hk/cardano-shell/blob/robcohen/GH-8-configuration-yaml-migration/configuration.md

Still attempting to determine a metric to find which variables should be hardcoded vs not.

robcohen commented 5 years ago

I kindly request that my commits be reviewed when possible. There is a CardanoConfig for both dev and mainnet.