Перейти к основному содержанию
Это руководство показывает команды, необходимые для инициализации, сборки и развёртывания проекта Web3 Action с помощью Tenderly CLI. Шаг 1: Установите Tenderly CLI Используйте команду curl, чтобы скачать и установить бинарник Tenderly CLI на вашу локальную машину. Установка на macOS:
example
curl https://raw.githubusercontent.com/Tenderly/tenderly-cli/master/scripts/install-macos.sh | sh
Установка на Linux:
example
curl https://raw.githubusercontent.com/Tenderly/tenderly-cli/master/scripts/install-linux.sh | sh
Шаг 2: Войдите в Tenderly через CLI Войдите в Tenderly CLI с вашими учётными данными, выполнив эту команду:
example
tenderly login
Шаг 3: Инициализируйте проект Web3 Actions Чтобы инициализировать проект Web3 Action, выполните эту команду:
example
tenderly actions init
Вы можете изменить настройки инициализации по умолчанию с помощью двух флагов: изменить имя корневой папки Web3 Actions (по умолчанию: actions) и язык для написания функций Action (по умолчанию: typescript или javascript).
example
tenderly actions init --sources=actions --language=typescript
Вам будет предложено добавить ваши Web3 Actions в проект Tenderly. Вы можете либо создать новый проект, либо выбрать существующий. Шаг 3: Установите необходимые NPM-зависимости После запуска tenderly init в вашем распоряжении есть NPM-проект, поэтому вы можете устанавливать любые нужные npm-библиотеки привычным способом.
example
cd actions
npm i --save-dev axios ethers
cd ..
Шаг 4: Соберите и разверните Web3 Actions После того как вы написали функцию и конфигурацию триггера в tenderly.yaml, вы можете выполнить эти команды для сборки и развёртывания Web3 Action.
example
# run within the folder containing tenderly.yaml

# Build the project (optional)
tenderly actions build

# Publish the project to Tenderly without running it (start manually)
tenderly actions publish

# Deploy the project to Tenderly Runtime (or re-deploy any changes you make)
tenderly actions deploy
Вскоре после выполнения publish ваш Web3 Action становится доступным в Dashboard и начинает отслеживать события в соответствии с вашей конфигурацией.
Вы можете обновлять свои Web3 Actions без простоя, выполнив команду publish после того, как вы отредактировали функцию и конфигурацию триггера.
Опционально: Валидация вашего tenderly.yaml Перед развёртыванием вы можете локально проверить структуру и конфигурацию триггеров вашего tenderly.yaml. Вход в систему не требуется.
example
# Validate all projects in tenderly.yaml
tenderly actions validate

# Validate a single project only
tenderly actions validate --project username/project-slug

# Machine-readable JSON output (useful in CI pipelines)
tenderly actions validate --json
Флаг --json выводит структурированный результат. Когда всё валидно:
{ "valid": true }
При неудачной валидации включаются schema_errors и/или trigger_errors (опускаются, если пусты):
{
  "valid": false,
  "schema_errors": ["..."],
  "trigger_errors": [
    { "project": "my-org/my-project", "action": "myAction", "errors": ["..."] }
  ]
}
Опционально: Обзор поддерживаемых возможностей Чтобы увидеть машиночитаемый манифест всех поддерживаемых типов триггеров, runtime, типов выполнения и интервалов:
example
# Print the capabilities manifest
tenderly actions capabilities

# Include the full embedded JSON Schema in the output
tenderly actions capabilities --include-schema
Это полезно для интеграций с редакторами и инструментов, которым нужно узнать возможности CLI без парсинга документации. Опционально: Использование Tenderly Runtime локально Установите пакет @tenderly/actions-test для локального тестирования функций Web3 Action. Предполагая, что вы уже находитесь в npm-проекте, выполните следующее:
example
npm install @tenderly/actions-test
Рекомендуется держать тесты и скрипты запуска для web3-actions вне каталога actions, чтобы не увеличивать размер вашего проекта Web3 Actions.
Ознакомьтесь с руководством по локальной разработке и тестированию Web3 Actions для получения дополнительных подробностей и примеров.