mirror of
https://github.com/serai-dex/serai.git
synced 2025-02-03 03:36:35 +00:00
Make the dev profile a local testnet profile
Restores a dev profile which only has one validator, locally running.
This commit is contained in:
parent
83caa8b413
commit
083198ecf2
3 changed files with 59 additions and 11 deletions
|
@ -46,7 +46,7 @@ services:
|
|||
profiles:
|
||||
- base
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: base
|
||||
|
||||
serai-alice:
|
||||
|
@ -59,7 +59,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: alice
|
||||
VALIDATOR: true
|
||||
|
||||
|
@ -73,7 +73,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: bob
|
||||
VALIDATOR: true
|
||||
|
||||
|
@ -87,7 +87,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: charlie
|
||||
VALIDATOR: true
|
||||
|
||||
|
@ -99,7 +99,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: dave
|
||||
|
||||
serai-eve:
|
||||
|
@ -110,7 +110,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: eve
|
||||
|
||||
serai-ferdie:
|
||||
|
@ -121,7 +121,7 @@ services:
|
|||
- cluster-lg
|
||||
- cluster-coins-lg
|
||||
environment:
|
||||
CHAIN: dev
|
||||
CHAIN: local
|
||||
NAME: ferdie
|
||||
|
||||
# Processor Services
|
||||
|
|
|
@ -18,7 +18,11 @@ fn account_id_from_name(name: &'static str) -> AccountId {
|
|||
insecure_pair_from_name(name).public()
|
||||
}
|
||||
|
||||
fn testnet_genesis(wasm_binary: &[u8], endowed_accounts: Vec<AccountId>) -> GenesisConfig {
|
||||
fn testnet_genesis(
|
||||
wasm_binary: &[u8],
|
||||
validators: &[&'static str],
|
||||
endowed_accounts: Vec<AccountId>,
|
||||
) -> GenesisConfig {
|
||||
let session_key = |name| {
|
||||
let key = account_id_from_name(name);
|
||||
(key, key, SessionKeys { tendermint: Public::from(key) })
|
||||
|
@ -30,9 +34,7 @@ fn testnet_genesis(wasm_binary: &[u8], endowed_accounts: Vec<AccountId>) -> Gene
|
|||
balances: endowed_accounts.iter().cloned().map(|k| (k, 1 << 60)).collect(),
|
||||
},
|
||||
transaction_payment: Default::default(),
|
||||
session: SessionConfig {
|
||||
keys: vec![session_key("Alice"), session_key("Bob"), session_key("Charlie")],
|
||||
},
|
||||
session: SessionConfig { keys: validators.iter().map(|name| session_key(*name)).collect() },
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -48,6 +50,51 @@ pub fn development_config() -> Result<ChainSpec, &'static str> {
|
|||
|| {
|
||||
testnet_genesis(
|
||||
wasm_binary,
|
||||
&["Alice"],
|
||||
vec![
|
||||
account_id_from_name("Alice"),
|
||||
account_id_from_name("Bob"),
|
||||
account_id_from_name("Charlie"),
|
||||
account_id_from_name("Dave"),
|
||||
account_id_from_name("Eve"),
|
||||
account_id_from_name("Ferdie"),
|
||||
account_id_from_name("Alice//stash"),
|
||||
account_id_from_name("Bob//stash"),
|
||||
account_id_from_name("Charlie//stash"),
|
||||
account_id_from_name("Dave//stash"),
|
||||
account_id_from_name("Eve//stash"),
|
||||
account_id_from_name("Ferdie//stash"),
|
||||
],
|
||||
)
|
||||
},
|
||||
// Bootnodes
|
||||
vec![],
|
||||
// Telemetry
|
||||
None,
|
||||
// Protocol ID
|
||||
Some("serai"),
|
||||
// Fork ID
|
||||
None,
|
||||
// Properties
|
||||
None,
|
||||
// Extensions
|
||||
None,
|
||||
))
|
||||
}
|
||||
|
||||
pub fn testnet_config() -> Result<ChainSpec, &'static str> {
|
||||
let wasm_binary = WASM_BINARY.ok_or("Testnet wasm not available")?;
|
||||
|
||||
Ok(ChainSpec::from_genesis(
|
||||
// Name
|
||||
"Local Test Network",
|
||||
// ID
|
||||
"local",
|
||||
ChainType::Local,
|
||||
|| {
|
||||
testnet_genesis(
|
||||
wasm_binary,
|
||||
&["Alice", "Bob", "Charlie"],
|
||||
vec![
|
||||
account_id_from_name("Alice"),
|
||||
account_id_from_name("Bob"),
|
||||
|
|
|
@ -39,6 +39,7 @@ impl SubstrateCli for Cli {
|
|||
fn load_spec(&self, id: &str) -> Result<Box<dyn sc_service::ChainSpec>, String> {
|
||||
match id {
|
||||
"dev" => Ok(Box::new(chain_spec::development_config()?)),
|
||||
"local" => Ok(Box::new(chain_spec::testnet_config()?)),
|
||||
_ => panic!("Unknown network ID"),
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue