Foundry
Деплой смарт-контракта при помощи Foundry
Что такое Foundry?
Foundry - это набор инструментов для разработки Ethereum на языке Rust, который помогает разработчикам управлять зависимостями, компилировать проекты, запускать тесты, развертывать контракты и взаимодействовать с блокчейном через интерфейс командной строки.
Кроме того, Foundry может напрямую взаимодействовать с Ethereum API компании Caldera, что позволяет использовать Foundry для развертывания смарт-контрактов в сети Caldera.
Начало работы с Foundry
Установите Foundry
Linux или MaxOS
curl -L https://foundry.paradigm.xyz | bash foundryup
Windows
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs/ | sh cargo install --git https://github.com/foundry-rs/foundry foundry-cli anvil --bins --locked
Создайте проект
forge init foundry
Перейдите в Source в проекте и создайте свой смарт-контракт
cd src touch MyToken.sol
Вставьте код смарт-контракта или используйте произвольный ниже код.
// SPDX-License-Identifier: MIT // compiler version must be greater than or equal to 0.8.17 and less than 0.9.0 pragma solidity ^0.8.17; contract HelloWorld { string public greet = "Hello World!"; }
Установите OpenZeppelin контракты как зависимость
forge install OpenZeppelin/openzeppelin-contracts
Скомпилируйте контракт
forge build
Деплой своего смарт-контракта
Развертывание контракта с помощью Forge - это простой процесс, который можно выполнить одной командой. Однако для этого требуется конечная точка RPC, закрытый ключ, который имеет средства, и любые аргументы для конструктора контракта.
Например, контракт MyToken.sol
требует начального количества токенов, указанного в его конструкторе, поэтому команда для его развертывания в сети будет включать аргумент 100.
Чтобы развернуть контракт MyToken.sol
, используйте команду, соответствующую RPC-адресу цепочки Caldera, во время выполнения команды forge create
:
forge create --rpc-url "RPC URL" //Insert your RPC URL here
--constructor-args 100 \
--private-key YOUR_PRIVATE_KEY \
src/MyToken.sol:MyToken
Last updated