Westend->Millau headers relay in deployments (#831)

* reorganize monitoring

* Westend->Millau bridge

* support multiple bridges

* initialize Westend -> Millau bridge byMillau.George

* fix intersecting ports

* ignore dashboards

* single bridged network

* deal with multple --env-file args

* fix chain name

* use images from docker hub

* update show_help

* updated comment

* mount whole dashboards directory

* removed unneeded network

* reverted reverse-proxy changes

* prometheus -> targets

* separate Grafana.Dockerfile with builtin /etc/grafana

* Revert "separate Grafana.Dockerfile with builtin /etc/grafana"

This reverts commit 53e04c4556f882d19e3af0fac581a926b8e0c167.

* read dashboards from /etc/grafana/dashboards

* stop comment
This commit is contained in:
Svyatoslav Nikolsky
2021-03-23 09:50:13 +03:00
committed by Bastian Köcher
parent 1c7b5d1b30
commit 647eb80165
4 changed files with 18 additions and 6 deletions
+9 -2
View File
@@ -16,8 +16,8 @@
use bp_millau::derive_account_from_rialto_id;
use millau_runtime::{
AccountId, AuraConfig, BalancesConfig, BridgeRialtoConfig, GenesisConfig, GrandpaConfig, SessionConfig,
SessionKeys, Signature, SudoConfig, SystemConfig, WASM_BINARY,
AccountId, AuraConfig, BalancesConfig, BridgeRialtoConfig, BridgeWestendFinalityVerifierConfig, GenesisConfig,
GrandpaConfig, SessionConfig, SessionKeys, Signature, SudoConfig, SystemConfig, WASM_BINARY,
};
use sp_consensus_aura::sr25519::AuthorityId as AuraId;
use sp_core::{sr25519, Pair, Public};
@@ -179,6 +179,13 @@ fn testnet_genesis(
.map(|x| (x.0.clone(), x.0.clone(), session_keys(x.1.clone(), x.2.clone())))
.collect::<Vec<_>>(),
}),
pallet_finality_verifier_Instance1: Some(BridgeWestendFinalityVerifierConfig {
// for our deployments to avoid multiple same-nonces transactions:
// //Alice is already used to initialize Rialto<->Millau bridge
// => let's use //George to initialize Westend->Millau bridge
owner: Some(get_account_id_from_seed::<sr25519::Public>("George")),
..Default::default()
}),
}
}
+1 -1
View File
@@ -380,7 +380,7 @@ construct_runtime!(
BridgeRialtoMessages: pallet_bridge_messages::{Module, Call, Storage, Event<T>},
BridgeCallDispatch: pallet_bridge_call_dispatch::{Module, Event<T>},
BridgeRialtoFinalityVerifier: pallet_finality_verifier::{Module, Call},
BridgeWestendFinalityVerifier: pallet_finality_verifier::<Instance1>::{Module, Call},
BridgeWestendFinalityVerifier: pallet_finality_verifier::<Instance1>::{Module, Call, Config<T>},
System: frame_system::{Module, Call, Config, Storage, Event<T>},
RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Module, Call, Storage},
Timestamp: pallet_timestamp::{Module, Call, Storage, Inherent},
+4 -2
View File
@@ -256,8 +256,10 @@ pub mod pallet {
#[pallet::genesis_config]
pub struct GenesisConfig<T: Config<I>, I: 'static = ()> {
owner: Option<T::AccountId>,
init_data: Option<super::InitializationData<BridgedHeader<T, I>>>,
/// Optional module owner account.
pub owner: Option<T::AccountId>,
/// Optional module initialization data.
pub init_data: Option<super::InitializationData<BridgedHeader<T, I>>>,
}
#[cfg(feature = "std")]
@@ -115,6 +115,9 @@ async fn run_init_bridge(command: cli::InitBridge) -> Result<(), String> {
.next_account_index(millau_sign.signer.public().into())
.await?;
// at Westend -> Millau initialization we're not using sudo, because otherwise our deployments
// may fail, because we need to initialize both Rialto -> Millau and Westend -> Millau bridge.
// => since there's single possible sudo account, one of transaction may fail with duplicate nonce error
crate::headers_initialize::initialize(westend_client, millau_client.clone(), move |initialization_data| {
let initialize_call = millau_runtime::FinalityBridgeWestendCall::<
millau_runtime::Runtime,
@@ -126,7 +129,7 @@ async fn run_init_bridge(command: cli::InitBridge) -> Result<(), String> {
*millau_client.genesis_hash(),
&millau_sign.signer,
millau_signer_next_index,
millau_runtime::SudoCall::sudo(Box::new(initialize_call.into())).into(),
initialize_call.into(),
)
.encode(),
))