Распаковать smart-updown.tar.gz: исходники по-человечески, архив удалён

This commit is contained in:
Hermes Agent
2026-09-01 19:41:06 +03:00
parent 5e78a4e36c
commit a9d54feab6
36 changed files with 7696 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
#
# Развёртывание smart-updown на localnet (solana-test-validator).
# Использование: ./deploy-localnet.sh
#
# Требования: Solana CLI (solana-test-validator, solana program deploy).
# Если нужно пересобрать программу из исходников, см. README (опционально).
set -euo pipefail
HERE="$(cd "$(dirname "$0")" && pwd)"
PROGRAM_SO="$HERE/deploy/smart_updown.so"
PROGRAM_KEYPAIR="$HERE/deploy/smart_updown-keypair.json"
PROGRAM_ID="E7Hg55ywRDKRZJ35rDMJGC3YFThQbh6nAK9GDayG4sr3"
RPC_URL="http://127.0.0.1:8899"
# 1. Настройка CLI на localhost
solana config set --url "$RPC_URL"
solana-keygen pubkey "$PROGRAM_KEYPAIR" >/dev/null 2>&1 || {
echo "Ошибка: нет deploy/smart_updown-keypair.json"
exit 1
}
# 2. Запуск валидатора с предзагруженной программой (если ещё не запущен)
if ! solana cluster-version >/dev/null 2>&1; then
echo ">>> Стартую solana-test-validator с программой $PROGRAM_ID"
solana-test-validator --reset \
--bpf-program "$PROGRAM_ID" "$PROGRAM_SO" \
>test-ledger.log 2>&1 &
sleep 6
fi
solana cluster-version
# 3. Убеждаемся, что программа на месте
if ! solana program show "$PROGRAM_ID" >/dev/null 2>&1; then
echo ">>> Деплою программу"
solana program deploy --program-id "$PROGRAM_KEYPAIR" "$PROGRAM_SO"
else
echo ">>> Программа уже задеплоена: $PROGRAM_ID"
fi
solana program show "$PROGRAM_ID" | head -12
echo
echo "Готово. Vault/Global инициализируется первым запуском relayer: npm run init"
echo "Дальше: npm run loop (непрерывно) или npm run run (один прогон)."
echo