Развертывание Hyperlane Warp Routes для бриджинга токенов ERC20

A. Содержание

В этом руководстве мы покажем, как перевести WETH10 с L1 (Sepolia) на L2 (Rollup Testnet) с помощью Hyperlane Warp Routes.

Эти шаги применимы и ко всем другим токенам ERC-20 на любом роллапе AltLayer.

B. Развертывание контракта

В данном руководстве мы будем использовать следующие адреса

Разработчик: 0xC6391bAb6AfCc5dBDcbafA57C3340BbF9C800d33

Валидатор: 0x7C19F05dB313D89dea09781DF2c076EC1132C423

Передатчик: 0x5d3C6567683d9467B2c317A02ddA5B97E20F6029

Вам необходимо сгенерировать собственные адреса для следующих ролей. Пожалуйста, убедитесь, что они пополнены токенами газа

Для начала клонируйте репозиторий hyperlane https://github.com/hyperlane-xyz/hyperlane-deploy и запустите команду

yarn install

Измените config/chains.ts, указав конфигурацию чейна.

Ниже приведен пример конфигурации, в которой L1 - Sepolia, а L2 - тестнет AltLayer.

import { ChainMap, ChainMetadata } from '@hyperlane-xyz/sdk';

export const chains: ChainMap<ChainMetadata> = {
  sepolia: {
    name: 'sepolia',
    chainId: 11155111,
    nativeToken: {
      name: 'ether',
      symbol: 'ETH',
      decimals: 18,
    },
    publicRpcUrls: [
      {
        http: 'https://eth-sepolia.g.alchemy.com/v2/api-key',
      },
    ],
  },
  testnet: {
    name: 'testnet',
    chainId: 9997,
    nativeToken: {
      name: 'ALT',
      symbol: 'ALT',
      decimals: 18,
    },
    publicRpcUrls: [
      {
        http: 'https://testnet-rollup-api.altlayer.io',
      },
    ],
  },
};

Измените config/multisig_ism.ts. В данном примере мы установим значение 1. В реальной ситуации следует установить более высокий порог.

Запустите следующую команду с использованием приватного ключа разработчика для развертывания контрактов на L1 (Sepolia)

Запустите следующую команду с использованием приватного ключа разработчика для развертывания контрактов на L2

После запуска команды будут получены некоторые артефакты. Например:

  1. artifacts/addresses.json

  1. artifacts/agent_config.json

Измените config/warp_tokens.ts, используя значения из artifacts/addresses.json. В данной конфигурации мы заполнили контрактные адреса WETH10, токен, который мы хотим перевести с L1 на L2.

Запустите эту команду с использованием приватного ключа разработчика для развертывания wrap контрактов. В результате контракты HypERC20 будут развернуты на L2. В этом примере контрактом HypERC20 будет WETH10 на L2.

После выполнения команды будут выведены следующие артефакты

  1. artifacts/warp-token-addresses.json

  1. artifacts/warp-ui-token-list.json

Last updated