Выполнение Task от Stride
6 TASK. Выполнить stake, redeem и claim flow (включая 6-ти часовой unbonding)
6.1 Stake. укажите свой кошелек в <WALLET>
strided tx stakeibc liquid-stake 1000 uatom --from <WALLET> --chain-id STRIDE-TESTNET-4
После накопления некоторого количества вознаграждений за stake, вы можете сделать выкуп. В настоящее время период отвязки в нашей тестовой сети Gaia (Cosmos Hub) составляет около 6 часов, часто этот процесс занимает больше 12 часов.
strided tx stakeibc redeem-stake 1000 GAIA <COSMOS_ADDRESS_YOU> --chain-id STRIDE-TESTNET-4 --from <WALLET>
Заходим в https://poolparty.stride.zone/GAIA и проверяем :
Дня начала проверьте можете ли Вы претендовать на вознаграждения, замените на свой адрес кошелька!!!!
strided q records list-user-redemption-record --limit 10000 --output json | jq '.UserRedemptionRecord | map(select(.sender == "stride15rdc0pzpr4x88wee3tjlu6f2alknh79ph03y2t"))'
[
{
"id": "GAIA.280.stride15rdc0pzpr4x88wee3tjlu6f2alknh79ph03y2t",
"sender": "stride15rdc0pzpr4x88wee3tjlu6f2alknh79ph03y2t",
"receiver": "cosmos15rdc0pzpr4x88wee3tjlu6f2alknh79p5y3c78",
"amount": "1504870",
"denom": "uatom",
"hostZoneId": "GAIA",
"epochNumber": "280",
"isClaimable": true
}
]Если значение "isClaimable": true , то вы можете сделать Claim токенов командой:
strided tx stakeibc claim-undelegated-tokens GAIA 280 stride15rdc0pzpr4x88wee3tjlu6f2alknh79ph03y2t --chain-id STRIDE-TESTNET-4 --from <WALLET> --yes
Отправьте хэш транзакции по ссылке https://docs.google.com/forms/d/e/1FAIpQLSeoZEC5kd89KCQSJjn5Zpf-NQPX-Gc8ERjTIChK1BEbiVfMVQ/viewform
7 TASK. Запускайте ретранслятор на каналах ICA, указанных в #validator-announcements, в течение как минимум 7 дней. Между тестовыми сетями Stride и Gaia.
Выполнение данного задания представлено в : https://teletype.in/@garfield1/i9KgMh9EAg4
8 Task. Настройка GO Relayer v2 между Stride и GAIA
Перед настройкой ретранслятора вам необходимо убедиться, что у вас уже есть:
1.Полностью синхронизированные узлы RPC для каждого проекта Cosmos, к которому вы хотите подключиться
2.Ваши кошельки должны быть пополнены через кран
3. Точки RPC должны быть открыты и доступны из экземпляра ретранслятора (indexer=kv)
# STRIDE sed -i -e "s/^indexer *=.*/indexer = \"kv\"/" $HOME/.stride/config/config.toml # GAIA sed -i -e "s/^indexer *=.*/indexer = \"kv\"/" $HOME/.gaia/config/config.toml
RPC конфигурация нод проектов, находящихся вconfig.toml file:
# STRIDE laddr = "tcp://0.0.0.0:26657" in $HOME/.stride/config/config.toml # GAIA laddr = "tcp://0.0.0.0:23657" in $HOME/.gaia/config/config.toml
RELAYER_ID='kjnodes|#8455' # используйте свой ник из Discorda STRIDE_RPC_ADDR='127.0.0.1:26657' # ресерчьте config.toml по слову laddr GAIA_RPC_ADDR='127.0.0.1:23657 # ресерчьте config.toml по слову laddr
### обновляемся sudo apt update && sudo apt upgrade -y ### установка зависимостей sudo apt install curl build-essential git wget jq make gcc tmux chrony -y
### Установка Go if ! [ -x "$(command -v go)" ]; then ver="1.18.3" cd $HOME wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" rm "go$ver.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile source ~/.bash_profile fi
8.2 Загрузка и сборка бинарника и инициализация relayer go v2
git clone https://github.com/cosmos/relayer.git cd relayer && git checkout v2.0.0-rc4 make install rly config init --memo $RELAYER_ID sudo mkdir $HOME/.relayer/chains sudo mkdir $HOME/.relayer/paths
8.3 Создаем сервисные файлы для каждой цепочки
### Создаем конфиг файл для STRIDE
sudo tee $HOME/.relayer/chains/stride.json > /dev/null <<EOF
{
"type": "cosmos",
"value": {
"key": "wallet",
"chain-id": "STRIDE-TESTNET-4",
"rpc-addr": "http://${STRIDE_RPC_ADDR}",
"account-prefix": "stride",
"keyring-backend": "test",
"gas-adjustment": 1.2,
"gas-prices": "0.000ustrd",
"gas": 200000,
"timeout": "20s",
"trusting-period": "8h",
"output-format": "json",
"sign-mode": "direct"
}
}
EOF### Создаем конфиг файл для GAIA
sudo tee $HOME/.relayer/chains/gaia.json > /dev/null <<EOF
{
"type": "cosmos",
"value": {
"key": "wallet",
"chain-id": "GAIA",
"rpc-addr": "http://${GAIA_RPC_ADDR}",
"account-prefix": "cosmos",
"keyring-backend": "test",
"gas-adjustment": 1.2,
"gas-prices": "0.000uatom",
"gas": 200000,
"timeout": "20s",
"trusting-period": "8h",
"output-format": "json",
"sign-mode": "direct"
}
}
EOF### Загрузка каждого конфиг файла в рестранслятор rly chains add --file=$HOME/.relayer/chains/stride.json stride rly chains add --file=$HOME/.relayer/chains/gaia.json gaia
### check rly chains list
### Загружаем кошельки в рестранслятор rly keys restore stride wallet "вставляем мнемонику кошелька STRIDE" rly keys restore gaia wallet "вставляем мнемонику кошелька GAIA"
### Проверка, должны на выходе появится ваши суммы на кошельках rly q balance stride rly q balance gaia
Создаем json файл с путем STRIDE-TESTNET-4 и GAIA
sudo tee $HOME/.relayer/paths/stride-gaia.json > /dev/null <<EOF
{
"src": {
"chain-id": "STRIDE-TESTNET-4",
"client-id": "07-tendermint-0",
"connection-id": "connection-0"
},
"dst": {
"chain-id": "GAIA",
"client-id": "07-tendermint-0",
"connection-id": "connection-0"
},
"src-channel-filter": {
"rule": "allowlist",
"channel-list": ["channel-0", "channel-1", "channel-2", "channel-3", "channel-4"]
}
}
EOF### Добавляем этот путь в relayer rly paths add STRIDE-TESTNET-4 GAIA stride-gaia --file $HOME/.relayer/paths/stride-gaia.json
### Проверка пути rly paths list
### Создаем сервисный файл sudo tee /etc/systemd/system/relayerd.service > /dev/null <<EOF [Unit] Description=GO Relayer v2 Service After=network.target [Service] Type=simple User=$USER ExecStart=$(which rly) start stride-gaia -p events Restart=on-failure RestartSec=10 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
### Если до этого вы использовали relyer через hermes, то останавливаем его sudo systemctl stop hermesd sudo systemctl disable hermesd
### Запускаем relayer go v2 sudo systemctl daemon-reload sudo systemctl enable relayerd sudo systemctl start relayerd
### наблюдаем за логами journalctl -u relayerd -f -o cat
Переходим в любой эксплорер, находим свой кошелек и ищем информацию о клиенте relayer go v2.
Форкаем репозиторий
Переходим в форканный репозиторий и добавляем файл (либо создаем новый) с путями, для каждого пути свой файл соответсвенно
relayer/configs/stride/chains/gaia.json relayer/configs/stride/chains/stride.json relayer/configs/stride/paths/stride-gaia.json
В форму отправляем хэш любой транзакции IBC relayer и ссылки на созданные файлы.
TASK9. Relay interchain queries using the new v2 go relayer
Установка и сборка двоичного файла
cd $HOME git clone https://github.com/Stride-Labs/interchain-queries.git cd interchain-queries go build sudo mv interchain-queries /usr/local/bin/icq
Создайте домашний каталог для icq и создайте файл конфигурации
Одной командой можете вставлять,но обратите внимание, что для каждой цепочки нужны свои значения RPC(которые находятся в config.toml и app.toml, соответственно) rpc-addr: и grpc-addr:
cd $HOME && mkdir .icq
sudo tee $HOME/.icq/config.yaml > /dev/null <<EOF
default_chain: stride-testnet
chains:
gaia-testnet:
key: wallet
chain-id: GAIA
rpc-addr: http://127.0.0.1:23657
grpc-addr: http://127.0.0.1:23090
account-prefix: cosmos
keyring-backend: test
gas-adjustment: 1.2
gas-prices: 0.001uatom
key-directory: /root/.icq/keys
debug: false
timeout: 20s
block-timeout: ""
output-format: json
sign-mode: direct
stride-testnet:
key: wallet
chain-id: STRIDE-TESTNET-4
rpc-addr: http://127.0.0.1:26657
grpc-addr: http://127.0.0.1:9090
account-prefix: stride
keyring-backend: test
gas-adjustment: 1.2
gas-prices: 0.001ustrd
key-directory: /root/.icq/keys
debug: false
timeout: 20s
block-timeout: ""
output-format: json
sign-mode: direct
cl: {}
EOFВам понадобятся мнемоники обоих проектов
icq keys restore --chain stride-testnet wallet icq keys restore --chain gaia-testnet wallet
9.4 Создаем сервисный файл ICQ
sudo tee /etc/systemd/system/icqd.service > /dev/null <<EOF [Unit] Description=Interchain Query Service After=network-online.target [Service] User=$USER ExecStart=$(which icq) run --debug Restart=on-failure RestartSec=3 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
sudo systemctl daemon-reload sudo systemctl enable icqd sudo systemctl restart icqd
Вам придется подождать некоторое время, пока вы не увидите некоторые логи (5-15мин)
journalctl -u icqd -f -o cat
После этого вы можете проверить свою транзакцию в эксплорере
Для подтверждения о выполнении данного задания понадобится повторить шаги из 8 задания по создания branch в github.
9 Task. Relay interchain-queries using the new GO v2 Relayer
9.1 Загрузка и формирование бинарника
cd $HOME git clone https://github.com/Stride-Labs/interchain-queries.git cd interchain-queries go build sudo mv interchain-queries /usr/local/bin/icq
9.2 Создайте домашний каталог для icq и создайте конфигурационный файл
Одной командой можете вставлять,но обратите внимание, что для каждой цепочки нужны свои значения RPC(которые находятся в config.toml и app.toml, соответственно) rpc-addr: и grpc-addr:
cd $HOME && mkdir .icq
sudo tee $HOME/.icq/config.yaml > /dev/null <<EOF
default_chain: stride-testnet
chains:
gaia-testnet:
key: wallet
chain-id: GAIA
rpc-addr: http://127.0.0.1:23657
grpc-addr: http://127.0.0.1:23090
account-prefix: cosmos
keyring-backend: test
gas-adjustment: 1.2
gas-prices: 0.001uatom
key-directory: /root/.icq/keys
debug: false
timeout: 20s
block-timeout: ""
output-format: json
sign-mode: direct
stride-testnet:
key: wallet
chain-id: STRIDE-TESTNET-4
rpc-addr: http://127.0.0.1:16657
grpc-addr: http://127.0.0.1:16090
account-prefix: stride
keyring-backend: test
gas-adjustment: 1.2
gas-prices: 0.001ustrd
key-directory: /root/.icq/keys
debug: false
timeout: 20s
block-timeout: ""
output-format: json
sign-mode: direct
cl: {}
EOFicq keys restore --chain stride-testnet wallet icq keys restore --chain gaia-testnet wallet
После вставьте мнемонику от соответствующего кошелька
sudo tee /etc/systemd/system/icqd.service > /dev/null <<EOF [Unit] Description=Interchain Query Service After=network-online.target [Service] User=$USER ExecStart=$(which icq) run --debug Restart=on-failure RestartSec=3 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
sudo systemctl daemon-reload sudo systemctl enable icqd sudo systemctl restart icqd
journalctl -u icqd -f -o cat
store/bank/key height parsed from GetHeightFromMetadata= 0 Fetching client update for height height 176886 store/bank/key height parsed from GetHeightFromMetadata= 0 Fetching client update for height height 176886 Requerying lightblock Requerying lightblock Requerying lightblock ICQ RELAYER | query.Height= 0 ICQ RELAYER | res.Height= 176885 Requerying lightblock ICQ RELAYER | query.Height= 0 ICQ RELAYER | res.Height= 176885 Send batch of 4 messages 1 ClientUpdate message 1 SubmitResponse message 1 ClientUpdate message 1 SubmitResponse message Sent batch of 2 (deduplicated) messages
Далее форкаем этот репозиторий и ищем хэш транзакций в эксплорере:
И отправляем в форму