revive_dev_node/chain_spec.rs
1// This file is part of Substrate.
2
3// Copyright (C) Parity Technologies (UK) Ltd.
4// SPDX-License-Identifier: Apache-2.0
5
6// Licensed under the Apache License, Version 2.0 (the "License");
7// you may not use this file except in compliance with the License.
8// You may obtain a copy of the License at
9//
10// http://www.apache.org/licenses/LICENSE-2.0
11//
12// Unless required by applicable law or agreed to in writing, software
13// distributed under the License is distributed on an "AS IS" BASIS,
14// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15// See the License for the specific language governing permissions and
16// limitations under the License.
17
18use polkadot_sdk::{
19 sc_service::{ChainType, Properties},
20 *,
21};
22use revive_dev_runtime::WASM_BINARY;
23
24/// This is a specialization of the general Substrate ChainSpec type.
25pub type ChainSpec = sc_service::GenericChainSpec;
26
27fn props() -> Properties {
28 let mut properties = Properties::new();
29 properties.insert("tokenDecimals".to_string(), 12.into());
30 properties.insert("tokenSymbol".to_string(), "MINI".into());
31 properties
32}
33
34pub fn development_chain_spec() -> Result<ChainSpec, String> {
35 Ok(ChainSpec::builder(WASM_BINARY.expect("Development wasm not available"), Default::default())
36 .with_name("Development")
37 .with_id("dev")
38 .with_chain_type(ChainType::Development)
39 .with_genesis_config_preset_name(sp_genesis_builder::DEV_RUNTIME_PRESET)
40 .with_properties(props())
41 .build())
42}