33
44use std:: time:: Duration ;
55
6- use crate :: utils:: initialize_network;
6+ use crate :: utils:: { initialize_network, DEFAULT_CHAIN_SPEC , DEFAULT_SUBSTRATE_IMAGE } ;
77use anyhow:: { anyhow, Result } ;
88use subxt:: { config:: substrate:: SubstrateConfig , dynamic:: tx, OnlineClient } ;
99use subxt_signer:: sr25519:: dev;
1010use zombienet_orchestrator:: network:: node:: LogLineCountOptions ;
11- use zombienet_sdk:: { environment:: get_spawn_fn, NetworkConfig , NetworkConfigBuilder , NetworkNode } ;
12-
13- const DEFAULT_SUBSTRATE_IMAGE : & str = "docker.io/paritypr/substrate:latest" ;
11+ use zombienet_sdk:: { NetworkConfig , NetworkConfigBuilder , NetworkNode } ;
1412
1513const NODE_NAMES : [ & str ; 2 ] = [ "alice" , "bob" ] ;
1614
@@ -28,13 +26,17 @@ const LOG_TIMEOUT_SECS: u64 = 2;
2826const SCRIPT_TIMEOUT_SECS : u64 = 30 ;
2927
3028const REMARK_PAYLOAD : & [ u8 ] = b"block-building-test" ;
29+ const INTEGRATION_IMAGE_ENV : & str = "ZOMBIENET_INTEGRATION_TEST_IMAGE" ;
30+ const CHAIN_SPEC_ENV : & str = "WARP_CHAIN_SPEC_PATH" ;
3131
3232#[ tokio:: test( flavor = "multi_thread" ) ]
3333async fn block_building_test ( ) -> Result < ( ) > {
3434 let _ = env_logger:: try_init_from_env (
3535 env_logger:: Env :: default ( ) . filter_or ( env_logger:: DEFAULT_FILTER_ENV , "info" ) ,
3636 ) ;
3737
38+ ensure_env_defaults ( ) ;
39+
3840 log:: info!( "Spawning network" ) ;
3941 let config = build_network_config ( ) ?;
4042 let network = initialize_network ( config) . await ?;
@@ -54,13 +56,28 @@ async fn block_building_test() -> Result<()> {
5456 Ok ( ( ) )
5557}
5658
59+ fn ensure_env_defaults ( ) {
60+ if std:: env:: var ( INTEGRATION_IMAGE_ENV ) . is_err ( ) {
61+ std:: env:: set_var ( INTEGRATION_IMAGE_ENV , DEFAULT_SUBSTRATE_IMAGE ) ;
62+ }
63+ if std:: env:: var ( CHAIN_SPEC_ENV ) . is_err ( ) {
64+ std:: env:: set_var ( CHAIN_SPEC_ENV , DEFAULT_CHAIN_SPEC ) ;
65+ }
66+ }
67+
5768fn build_network_config ( ) -> Result < NetworkConfig > {
69+ let integration_image = std:: env:: var ( INTEGRATION_IMAGE_ENV )
70+ . unwrap_or_else ( |_| DEFAULT_SUBSTRATE_IMAGE . to_string ( ) ) ;
71+ let chain_spec =
72+ std:: env:: var ( CHAIN_SPEC_ENV ) . unwrap_or_else ( |_| DEFAULT_CHAIN_SPEC . to_string ( ) ) ;
73+
5874 let config = NetworkConfigBuilder :: new ( )
5975 . with_relaychain ( |relaychain| {
6076 relaychain
6177 . with_chain ( "local" )
6278 . with_default_command ( "substrate" )
63- . with_default_image ( DEFAULT_SUBSTRATE_IMAGE )
79+ . with_default_image ( integration_image. as_str ( ) )
80+ . with_chain_spec_path ( chain_spec. as_str ( ) )
6481 . with_default_args ( vec ! [ "-lparachain=debug" . into( ) ] )
6582 . with_node ( |node| node. with_name ( "alice" ) )
6683 . with_node ( |node| node. with_name ( "bob" ) )
0 commit comments