main.rs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //! Substrate Node Template CLI library.
  2. #![warn(missing_docs)]
  3. #![warn(unused_extern_crates)]
  4. extern crate futures;
  5. #[macro_use]
  6. extern crate error_chain;
  7. extern crate tokio;
  8. #[macro_use]
  9. extern crate log;
  10. extern crate substrate_cli;
  11. extern crate substrate_primitives as primitives;
  12. extern crate substrate_consensus_aura as consensus;
  13. extern crate substrate_client as client;
  14. #[macro_use]
  15. extern crate substrate_network as network;
  16. #[macro_use]
  17. extern crate substrate_executor;
  18. extern crate substrate_transaction_pool as transaction_pool;
  19. extern crate substrate_basic_authorship as basic_authorship;
  20. #[macro_use]
  21. extern crate substrate_service;
  22. extern crate joystream_node_runtime;
  23. extern crate structopt;
  24. extern crate node_executor;
  25. extern crate sr_primitives as runtime_primitives;
  26. mod chain_spec;
  27. mod service;
  28. mod cli;
  29. pub use substrate_cli::{VersionInfo, IntoExit, error};
  30. fn run() -> cli::error::Result<()> {
  31. let version = VersionInfo {
  32. commit: env!("VERGEN_SHA_SHORT"),
  33. version: env!("CARGO_PKG_VERSION"),
  34. executable_name: "joystream-node",
  35. author: "jsgenesis",
  36. description: "joystream-node",
  37. };
  38. cli::run(::std::env::args(), cli::Exit, version)
  39. }
  40. quick_main!(run);