DEV Community

EgorMajj
EgorMajj

Posted on

Руководство по процессу разработки локальной тестовой сети

Это руководство описывает end-to-end процесс разработки в локальной тестовой сети.

CLI ИЗ ИСХОДНИКОВ, А НЕ С GITHUB
Это руководство некорректно, если вы используете aptos CLI из релиза на GitHub или из cargo install, только если вы собираете его самостоятельно из aptos-core, как описано ниже.

Пожалуйста, внимательно прочитайте это руководство. В этом руководстве рассматривается локальный метод разработки в тестнете. Этот метод не будет работать, если вы создаете в devnet.

Запустите локальный тестнет из aptos-core

Выберите и зайдите в aptos-core:

git clone git@github.com:aptos-labs/aptos-core.git ~/aptos-core && cd ~/aptos-core
Enter fullscreen mode Exit fullscreen mode

Запустите локальную тестовую сеть:

cargo run -p aptos -- node run-local-testnet --with-faucet --faucet-port 8081 --force-restart --assume-yes
Enter fullscreen mode Exit fullscreen mode

Вы можете добавить параметр --release после cargo run, если хотите собрать релизную версию CLI для запуска локального тестнета.

Теперь вы запускаете локальную тестовую сеть, собранную из основы aptos-core.

Typescript: Использование SDK из aptos-core

Важно: В этом методе разработки важно не использовать SDK из npmjs. Вместо этого вы должны использовать тот же SDK, из которого собран aptos CLI, что мы опишем ниже.

Это руководство предполагает, что вы выполнили предыдущий шаг по локальному тестированию. Мы также предполагаем, что у вас установлен yarn.

Сначала зайдите в aptos-core и соберите SDK:

cd ~/aptos-core/ecosystem/typescript/sdk
yarn install
yarn build
Enter fullscreen mode Exit fullscreen mode

Создайте новый проект, если у вас его еще нет:

mkdir ~/project && cd ~/project
yarn init
Enter fullscreen mode Exit fullscreen mode

Сделайте свой проект целевым для SDK из локального aptos-core:

yarn add ../aptos-core/ecosystem/typescript/sdk
Enter fullscreen mode Exit fullscreen mode

Вы также можете использовать полный путь, например, /home/daniel/aptos-core/ecosystem/typescript/sdk.

Установите все:

yarn install
Enter fullscreen mode Exit fullscreen mode

Теперь все готово! Вы должны увидеть в package.json, что ваш проект нацелен на локальное aptos-core:

{
  "name": "project",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "dependencies": {
    "aptos": "../a/core/ecosystem/typescript/sdk/"
  }
}
Enter fullscreen mode Exit fullscreen mode

Таким образом, ваша локальная тестовая сеть и SDK, который вы используете, совпадают, что означает, что вы не увидите никаких проблем с совместимостью.

Теперь вы можете использовать модуль aptos в своем коде следующим образом:

import { AptosClient, AptosAccount, FaucetClient } from "aptos";

const NODE_URL = "https://127.0.0.1:8080/v1";
const FAUCET_URL = "https://127.0.0.1:8081";

(async () => {
  const client = new AptosClient(NODE_URL);
  const faucetClient = new FaucetClient(NODE_URL, FAUCET_URL);
})();
Enter fullscreen mode Exit fullscreen mode

Примечание: Обратите внимание, что этот код создает клиентов, которые общаются с вашим локальным testnet, а не devnet.

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Engage with a sea of insights in this enlightening article, highly esteemed within the encouraging DEV Community. Programmers of every skill level are invited to participate and enrich our shared knowledge.

A simple "thank you" can uplift someone's spirits. Express your appreciation in the comments section!

On DEV, sharing knowledge smooths our journey and strengthens our community bonds. Found this useful? A brief thank you to the author can mean a lot.

Okay