Skip to content

mariocao/seda-rust

Repository files navigation

seda-rust

SEDA Rust

Build Status GitHub Stars GitHub Contributors Discord chat Twitter

Open source Rust implementation of the SEDA Protocol.

NOTE this repo adheres to the GPLv3 license.

To learn how to build a local version, please read developing. To learn how to contribute, please read contributing.

Dependencies

There are currently no dependencies.

Configuration

The configuration for the node and the CLI commands.

TOML File

Config is written in TOML and read by default from your operating systems app config location.

  • Unix Systems(Mac & Linux) /etc/seda-rust/config.toml
  • Windows C:\\ProgramData\\seda-rust\\config.toml

On the first run, a default configuration generates. You need to specify some fields via the command line interface or from environment variables.

Some fields below are not required, as they have default values, or you can pass them through the environment variables or the CLI. For the sake of documentation, here the names of variables will be followed by parentheses with symbols inside:

  • ? - means the field is entirely optional and has a default value.
  • ! - means it's overwritable by an environment variable.
  • * - means it's overwritable by the cli.

You can look at the example configuration here.

Fields

  • seda_server_address(?!) - Defines the address for seda to run its RPC server on.
  • seda_server_port(?!) - Defines the port for seda to run its RPC server on.
  • chains - All config fields related to the supported chains.
    • near - All config fields related to the near chain.
      • chain_rpc_url(!*) - The near server URL.
  • node - All config fields related to the seda node.
    • contract_account_id(*) - Your near contract account id.
    • deposit(?*) - The deposit amount.
    • gas(?*) - The gas amount.
    • job_manager_interval_ms(?*) - How often the node runs jobs.
    • p2p_server_address(?*) - The address to run the p2p server on.
    • p2p_known_peers(?*) - The list of known peers for the node.
    • public_key(*) - Your near public key.
    • runtime_worker_threads(?*) - The number of threads the node can use to spin up jobs.
    • seda_chain_secret_key(!*) - Your near secret key.
    • seda_secret_key(!*) - Your node secret key.
    • seda_sk_file_path(!*) - Your node secret key file path.
    • signer_account_id(*) - Your near signer account id.
  • logging - All config fields related to the seda logger.
    • log_file_path(?!*) - The path where the log file will write.

ENV

SEDA configuration uses the following ENV variables if they exist.

NOTE: You can use a .env file to overwrite the env variables more easily.~~~

Name Description
SEDA_CONFIG_PATH Defines an alternative path for the seda configuration file to be.
SEDA_LOG_FILE_PATH Overwrites the config logging.log_file_path field.
SEDA_NEAR_RPC_URL Overwrites the config near_chain.chain_rpc_url field.
SEDA_CHAIN_SECRET_KEY Overwrites the config node.seda_chain_secret_key field.
SEDA_SECRET_KEY Overwrites the config node.seda_secret_key field.
SEDA_SERVER_ADDRESS Overwrites the config seda_server_address field.
SEDA_SERVER_PORT Overwrites the config seda_server_port field.
RUST_LOG Controlled via the tracing_subscriber crate.

About

Open source Rust implementation of the SEDA Protocol

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages