Skip to content

Commit

Permalink
Add polkadot-omni-node binary
Browse files Browse the repository at this point in the history
  • Loading branch information
serban300 committed Oct 7, 2024
1 parent 00c0dce commit e3bf5ad
Show file tree
Hide file tree
Showing 6 changed files with 118 additions and 9 deletions.
11 changes: 9 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ members = [
"cumulus/parachains/runtimes/test-utils",
"cumulus/parachains/runtimes/testing/penpal",
"cumulus/parachains/runtimes/testing/rococo-parachain",
"cumulus/polkadot-omni-node",
"cumulus/polkadot-omni-node/lib",
"cumulus/polkadot-parachain",
"cumulus/primitives/aura",
Expand Down Expand Up @@ -541,6 +542,7 @@ members = [
]

default-members = [
"cumulus/polkadot-omni-node",
"cumulus/polkadot-parachain",
"polkadot",
"substrate/bin/node/cli",
Expand Down Expand Up @@ -1052,6 +1054,7 @@ polkadot-node-subsystem = { path = "polkadot/node/subsystem", default-features =
polkadot-node-subsystem-test-helpers = { path = "polkadot/node/subsystem-test-helpers" }
polkadot-node-subsystem-types = { path = "polkadot/node/subsystem-types", default-features = false }
polkadot-node-subsystem-util = { path = "polkadot/node/subsystem-util", default-features = false }
polkadot-omni-node = { path = "cumulus/polkadot-omni-node", default-features = false }
polkadot-omni-node-lib = { path = "cumulus/polkadot-omni-node/lib", default-features = false }
polkadot-overseer = { path = "polkadot/node/overseer", default-features = false }
polkadot-parachain-primitives = { path = "polkadot/parachain", default-features = false }
Expand Down
29 changes: 29 additions & 0 deletions cumulus/polkadot-omni-node/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[package]
name = "polkadot-omni-node"
version = "0.1.0"
authors.workspace = true
edition.workspace = true
build = "build.rs"
description = "Runs a polkadot parachain node"
license = "Apache-2.0"

[lints]
workspace = true

[dependencies]
color-eyre = { workspace = true }

# Local
polkadot-omni-node-lib = { workspace = true }

[build-dependencies]
substrate-build-script-utils = { workspace = true, default-features = true }

[features]
default = []
runtime-benchmarks = [
"polkadot-omni-node-lib/runtime-benchmarks",
]
try-runtime = [
"polkadot-omni-node-lib/try-runtime",
]
22 changes: 22 additions & 0 deletions cumulus/polkadot-omni-node/build.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// Copyright (C) Parity Technologies (UK) Ltd.
// This file is part of Cumulus.

// Cumulus is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// Cumulus is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with Cumulus. If not, see <http://www.gnu.org/licenses/>.

use substrate_build_script_utils::{generate_cargo_keys, rerun_if_git_head_changed};

fn main() {
generate_cargo_keys();
rerun_if_git_head_changed();
}
55 changes: 55 additions & 0 deletions cumulus/polkadot-omni-node/src/main.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
// Copyright (C) Parity Technologies (UK) Ltd.
// This file is part of Cumulus.

// Cumulus is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// Cumulus is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with Cumulus. If not, see <http://www.gnu.org/licenses/>.

//! Polkadot parachain node.

#![warn(missing_docs)]
#![warn(unused_extern_crates)]

use polkadot_omni_node_lib::{
chain_spec::DiskChainSpecLoader, run, runtime::DefaultRuntimeResolver, CliConfig as CliConfigT,
RunConfig,
};

struct CliConfig;

impl CliConfigT for CliConfig {
fn impl_version() -> String {
env!("SUBSTRATE_CLI_IMPL_VERSION").into()
}

fn author() -> String {
env!("CARGO_PKG_AUTHORS").into()
}

fn support_url() -> String {
"https://github.com/paritytech/polkadot-sdk/issues/new".into()
}

fn copyright_start_year() -> u16 {
2017
}
}

fn main() -> color_eyre::eyre::Result<()> {
color_eyre::install()?;

let config = RunConfig {
chain_spec_loader: Box::new(DiskChainSpecLoader),
runtime_resolver: Box::new(DefaultRuntimeResolver),
};
Ok(run::<CliConfig>(config)?)
}
7 changes: 0 additions & 7 deletions cumulus/polkadot-parachain/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,6 @@ penpal-runtime = { workspace = true }
people-rococo-runtime = { workspace = true }
people-westend-runtime = { workspace = true }
parachains-common = { workspace = true, default-features = true }
testnet-parachains-constants = { features = [
"rococo",
"westend",
], workspace = true }

# Substrate
sp-core = { workspace = true, default-features = true }
Expand All @@ -55,9 +51,6 @@ xcm = { workspace = true, default-features = true }
# Cumulus
cumulus-primitives-core = { workspace = true, default-features = true }

# Bridges
bp-messages = { workspace = true, default-features = true }

[build-dependencies]
substrate-build-script-utils = { workspace = true, default-features = true }

Expand Down

0 comments on commit e3bf5ad

Please sign in to comment.