3
3
# Copied from https://github.com/cosmos/relayer and modified to initialize the Rust relayer light clients.
4
4
5
5
usage () {
6
- echo " Missing $1 parameter. Please check if all parameters were specified."
7
- echo " Usage: $0 [CONFIG_FILE] [CHAIN_ID_0] [CHAIN_ID_1]"
6
+ echo " Usage: $0 [CONFIG_FILE] [CHAIN_0_ID] [CHAIN_1_ID]"
8
7
echo " Example: $0 ./config.toml ibc-0 ibc-1"
9
8
exit 1
10
9
}
11
10
11
+ missing () {
12
+ echo " Missing $1 parameter. Please check if all parameters were specified."
13
+ usage
14
+ }
15
+
12
16
if [ -z " $1 " ]; then
13
- usage " CONFIG_FILE"
17
+ missing " CONFIG_FILE"
14
18
fi
15
19
16
20
if [ -z " $2 " ]; then
17
- usage " CHAIN_ID_0 "
21
+ missing " CHAIN_0_ID "
18
22
fi
19
23
20
24
if [ -z " $3 " ]; then
21
- usage " CHAIN_ID_1 "
25
+ missing " CHAIN_1_ID "
22
26
fi
23
27
24
- tomlcfg=" $1 "
25
- chainid0=" $2 "
26
- chainid1=" $3 "
28
+ if [ " $# " -gt 3 ]; then
29
+ echo " Incorrect number of parameters."
30
+ usage
31
+ fi
32
+
33
+ CONFIG_FILE=" $1 "
34
+ CHAIN_0_ID=" $2 "
35
+ CHAIN_1_ID=" $3 "
36
+
37
+ if ! [ -f $CONFIG_FILE ]; then
38
+ echo " [CONFIG_FILE] ($1 ) does not exist or is not a file."
39
+ usage
40
+ fi
27
41
28
42
GAIA_DATA=" $( pwd) /data"
29
43
30
44
# Ensure user understands what will be deleted
31
45
if [[ -d $GAIA_DATA ]] && [[ ! " $3 " == " skip" ]]; then
32
- echo " $0 will delete $HOME /.relayer and $ ( pwd) /data folder."
46
+ echo " $0 will delete $( pwd) /data folder."
33
47
read -p " > Do you wish to continue? (y/n): " -n 1 -r
34
48
echo
35
49
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
@@ -50,41 +64,49 @@ echo "GAIA VERSION INFO: $(gaiad version)"
50
64
rm -rf " $GAIA_DATA " & > /dev/null
51
65
52
66
# Stop existing gaiad processes
53
- killall gaiad & > /dev/null
54
- killall akash & > /dev/null
55
-
56
- set -e
67
+ killall gaiad & > /dev/null || true
68
+ killall akash & > /dev/null || true
57
69
58
70
echo " Generating gaia configurations..."
59
71
mkdir -p " $GAIA_DATA " && cd " $GAIA_DATA " && cd ../
60
72
61
73
ONE_CHAIN=" $( dirname " $0 " ) /one-chain"
62
74
63
- " $ONE_CHAIN " gaiad " $chainid0 " ./data 26657 26656 6060 9090
64
- " $ONE_CHAIN " gaiad " $chainid1 " ./data 26557 26556 6061 9091
75
+ CHAIN_0_RPC_PORT=26657
76
+ CHAIN_0_RPC_ADDR=" localhost:$CHAIN_0_RPC_PORT "
77
+ CHAIN_1_RPC_PORT=26557
78
+ CHAIN_1_RPC_ADDR=" localhost:$CHAIN_1_RPC_PORT "
79
+
80
+ CHAIN_0_SAMOLEANS=100000000000
81
+ CHAIN_1_SAMOLEANS=100000000000
65
82
66
- [ -f " $GAIA_DATA /$chainid0 .log" ] && echo " $chainid0 initialized. Watch file $GAIA_DATA /$chainid0 .log to see its execution."
67
- [ -f " $GAIA_DATA /$chainid1 .log" ] && echo " $chainid1 initialized. Watch file $GAIA_DATA /$chainid1 .log to see its execution."
83
+ " $ONE_CHAIN " gaiad " $CHAIN_0_ID " ./data $CHAIN_0_RPC_PORT 26656 6060 9090 $CHAIN_0_SAMOLEANS
84
+ " $ONE_CHAIN " gaiad " $CHAIN_1_ID " ./data $CHAIN_1_RPC_PORT 26556 6061 9091 $CHAIN_1_SAMOLEANS
85
+
86
+ [ -f " $GAIA_DATA /$CHAIN_0_ID .log" ] && echo " $CHAIN_0_ID initialized. Watch file $GAIA_DATA /$CHAIN_0_ID .log to see its execution."
87
+ [ -f " $GAIA_DATA /$CHAIN_1_ID .log" ] && echo " $CHAIN_1_ID initialized. Watch file $GAIA_DATA /$CHAIN_1_ID .log to see its execution."
68
88
69
89
echo " Building the Rust relayer..."
70
- cargo build
90
+ cargo build & > /dev/null
71
91
72
92
# cleanup the client entries from config
73
93
echo " Removing light client peers from configuration..."
74
- cargo run --bin relayer -- -c " $tomlcfg " light rm -c " $chainid0 " --all -y & > /dev/null || true
75
- cargo run --bin relayer -- -c " $tomlcfg " light rm -c " $chainid1 " --all -y & > /dev/null || true
94
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light rm -c " $CHAIN_0_ID " --all -y & > /dev/null || true
95
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light rm -c " $CHAIN_1_ID " --all -y & > /dev/null || true
76
96
77
97
# set the primary peers for clients on each chain
78
98
echo " Adding primary peers to light client configuration..."
79
- cargo run --bin relayer -- -c " $tomlcfg " light add localhost:26657 -c " $chainid0 " -f -p -s " $GAIA_DATA /$chainid0 /data" -y & > /dev/null
80
- cargo run --bin relayer -- -c " $tomlcfg " light add localhost:26557 -c " $chainid1 " -f -p -s " $GAIA_DATA /$chainid1 /data" -y & > /dev/null
99
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light add $CHAIN_0_RPC_ADDR -c " $CHAIN_0_ID " -f -p -s " $GAIA_DATA /$CHAIN_0_ID /data" -y & > /dev/null
100
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light add $CHAIN_1_RPC_ADDR -c " $CHAIN_1_ID " -f -p -s " $GAIA_DATA /$CHAIN_1_ID /data" -y & > /dev/null
81
101
82
102
# set the secondary peers for clients on each chain
83
103
echo " Adding secondary peers to light client configuration..."
84
- cargo run --bin relayer -- -c " $tomlcfg " light add localhost:26657 -c " $chainid0 " -s " $GAIA_DATA /$chainid0 /data" -y --peer-id 2427F8D914A6862279B3326FA64F76E3BC06DB2E & > /dev/null
85
- cargo run --bin relayer -- -c " $tomlcfg " light add localhost:26557 -c " $chainid1 " -s " $GAIA_DATA /$chainid1 /data" -y --peer-id A885BB3D3DFF6101188B462466AE926E7A6CD51E & > /dev/null
104
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light add $CHAIN_0_RPC_ADDR -c " $CHAIN_0_ID " -s " $GAIA_DATA /$CHAIN_0_ID /data" -y --peer-id 2427F8D914A6862279B3326FA64F76E3BC06DB2E & > /dev/null
105
+ cargo run --bin relayer -- -c " $CONFIG_FILE " light add $CHAIN_1_RPC_ADDR -c " $CHAIN_1_ID " -s " $GAIA_DATA /$CHAIN_1_ID /data" -y --peer-id A885BB3D3DFF6101188B462466AE926E7A6CD51E & > /dev/null
86
106
87
107
# add the key seeds to the keyring of each chain
88
108
echo " Importing keys..."
89
- cargo run --bin relayer -- -c " $tomlcfg " keys add " $chainid0 " " $GAIA_DATA /$chainid0 /key_seed.json" & > /dev/null
90
- cargo run --bin relayer -- -c " $tomlcfg " keys add " $chainid1 " " $GAIA_DATA /$chainid1 /key_seed.json" & > /dev/null
109
+ cargo run --bin relayer -- -c " $CONFIG_FILE " keys add " $CHAIN_0_ID " " $GAIA_DATA /$CHAIN_0_ID /key_seed.json" & > /dev/null
110
+ cargo run --bin relayer -- -c " $CONFIG_FILE " keys add " $CHAIN_1_ID " " $GAIA_DATA /$CHAIN_1_ID /key_seed.json" & > /dev/null
111
+
112
+ echo " Done!"
0 commit comments