Files
pezkuwi-subxt/polkadot/parachain/test-parachains/adder/collator/src/cli.rs
T
Andrei Sandu 0fa91e7043 Zombienet: add new test collator and integration test (#4797)
* WIP: Wasm compilation perf

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Undying collator WIP

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix build

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* more fixes

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* update test with undying

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Correctly compute post hash

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* update helper

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* squash bugs

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add --pov-size cli parameter

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* refactor

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix strings

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add pov-size param to export genesis state

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix graveyard size

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* docs + fmt

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix PVF bug and switch to u8 graves

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Update tests

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Build/publish undying collator as colander img

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* add undying-collator to colander image

* Fix transaction overflow

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* warn fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* add parachain id for export genesis cli

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix the build

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* scale test up

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* default parachain id

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add PVF complexity param

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Hash on each iteration

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Update pvf metric histogram buckets

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Ladi attempt to fix tests

* Fix test

* Fix typos

* Fix pvf typo

* CI integration

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* cargo lock missing

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix clap merge damage

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* add zombienet image back

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Use collator image from env

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* bump zombienet version

* update test to check pvf prep/exec

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* delete file

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* use default bootnode in upgrade test

* FIx tests

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* add some stress -  pvf exec times up to 2s

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix name

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Dial down pvf execution time < 2s

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* 1100

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* bump

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* try again

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add connectivity check

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fixes and refactor folder struct

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* change toml name to match

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* bump zombienet

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* impl Feedback for Review 😎

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* spell check

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Zombienet: add disputes test (#4859)

* Zombienet disputes test

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* CI: add zombienet-parachain-disputes

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Bump zombienet

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* reduce duration

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Update zombienet_tests/functional/0002-parachains-disputes.feature

fix test

* Update zombienet_tests/functional/0002-parachains-disputes.feature

fix fix

* more logs and set collator image

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* spellcheck

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix cargo lock damage

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* merge fixes

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* bump zombienet image

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* cargo lock

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* debugging CI run - scale down test

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix cargo merge damage

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* default command fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Revert "debugging CI run - scale down test"

This reverts commit eec2ba7e65ede3f929e2f0a8fe44930df2119450.

* more review feedback

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

Co-authored-by: Javier Viola <javier@parity.io>
Co-authored-by: Lldenaurois <Ljdenaurois@gmail.com>
2022-02-28 10:27:01 +00:00

114 lines
3.0 KiB
Rust

// Copyright 2017-2020 Parity Technologies (UK) Ltd.
// This file is part of Polkadot.
// Polkadot 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.
// Polkadot 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 Polkadot. If not, see <http://www.gnu.org/licenses/>.
//! Polkadot CLI library.
use clap::Parser;
use sc_cli::{RuntimeVersion, SubstrateCli};
/// Sub-commands supported by the collator.
#[derive(Debug, Parser)]
pub enum Subcommand {
/// Export the genesis state of the parachain.
#[clap(name = "export-genesis-state")]
ExportGenesisState(ExportGenesisStateCommand),
/// Export the genesis wasm of the parachain.
#[clap(name = "export-genesis-wasm")]
ExportGenesisWasm(ExportGenesisWasmCommand),
}
/// Command for exporting the genesis state of the parachain
#[derive(Debug, Parser)]
pub struct ExportGenesisStateCommand {}
/// Command for exporting the genesis wasm file.
#[derive(Debug, Parser)]
pub struct ExportGenesisWasmCommand {}
#[allow(missing_docs)]
#[derive(Debug, Parser)]
pub struct RunCmd {
#[allow(missing_docs)]
#[clap(flatten)]
pub base: sc_cli::RunCmd,
/// Id of the parachain this collator collates for.
#[clap(long)]
pub parachain_id: Option<u32>,
}
#[allow(missing_docs)]
#[derive(Debug, Parser)]
pub struct Cli {
#[clap(subcommand)]
pub subcommand: Option<Subcommand>,
#[clap(flatten)]
pub run: RunCmd,
}
impl SubstrateCli for Cli {
fn impl_name() -> String {
"Parity Polkadot".into()
}
fn impl_version() -> String {
"0.0.0".into()
}
fn description() -> String {
env!("CARGO_PKG_DESCRIPTION").into()
}
fn author() -> String {
env!("CARGO_PKG_AUTHORS").into()
}
fn support_url() -> String {
"https://github.com/paritytech/polkadot/issues/new".into()
}
fn copyright_start_year() -> i32 {
2017
}
fn executable_name() -> String {
"adder-collator".into()
}
fn load_spec(&self, id: &str) -> std::result::Result<Box<dyn sc_service::ChainSpec>, String> {
let id = if id.is_empty() { "rococo" } else { id };
Ok(match id {
"rococo-staging" =>
Box::new(polkadot_service::chain_spec::rococo_staging_testnet_config()?),
"rococo-local" =>
Box::new(polkadot_service::chain_spec::rococo_local_testnet_config()?),
"rococo" => Box::new(polkadot_service::chain_spec::rococo_config()?),
path => {
let path = std::path::PathBuf::from(path);
Box::new(polkadot_service::RococoChainSpec::from_json_file(path)?)
},
})
}
fn native_runtime_version(
_spec: &Box<dyn polkadot_service::ChainSpec>,
) -> &'static RuntimeVersion {
&polkadot_service::rococo_runtime::VERSION
}
}