Tools/faucet4Testing — Hardhat 셸 스크립트 모음
terminalBlockchain2026-04-25· 3분 읽기

faucet4Testing — Hardhat 셸 스크립트 모음

hardhat-node·deploy-usdt·mint-usdt·setup-usdt-localhost — 자주 쓰는 워크플로우를 셸로 묶은 bin/ 디렉터리.

list목차(5)

bin

로컬 개발용 실행 스크립트.

hardhat-node.sh

Hardhat 로컬 노드를 백그라운드로 띄웁니다.

  • 포트/프로세스 확인: 지정 포트(기본 8545)가 사용 중이면 기존 프로세스를 종료한 뒤 재실행합니다.
  • 로그: bin/log/hardhat-node-YYYY-MM-DD.log 에 날짜별로 저장됩니다. 같은 날 여러 번 실행하면 같은 파일에 이어서 기록됩니다.

사용법

# 기본 포트 8545로 실행(또는 재실행)
./bin/hardhat-node.sh

# 포트 지정
./bin/hardhat-node.sh 8546

종료

스크립트가 출력한 PID로 종료합니다.

kill <PID>

또는 포트로 프로세스 확인 후 종료:

lsof -i :8545
kill <PID>

deploy-usdt.sh

FaucetUSDT 컨트랙트를 배포합니다.

# 임시 체인에 배포 (Admin 대시보드에는 안 보임)
./bin/deploy-usdt.sh

# 실행 중인 노드(8545)에 배포 → Admin 대시보드에서 잔고 확인 가능
./bin/hardhat-node.sh   # 터미널 1: 노드 실행
./bin/deploy-usdt.sh localhost   # 터미널 2: 배포 후 출력된 주소를 .env에 USDT_CONTRACT_ADDRESS로

mint-usdt.sh

FaucetUSDT를 민트합니다. hardhat/.env 가 있으면 로드합니다.

환경변수 필수 설명
USDT_CONTRACT_ADDRESS FaucetUSDT 컨트랙트 주소
MINT_TO 받을 주소 (없으면 배포자)
MINT_AMOUNT 인간 단위 수량 (기본 1000)

Admin 대시보드에 잔고가 보이게 하려면 실행 중인 노드(8545)에 민트해야 합니다.

# 1) 노드 실행 중인 상태에서 (위 deploy-usdt.sh localhost 참고)
# 2) .env에 USDT_CONTRACT_ADDRESS=0x... 설정 후
./bin/mint-usdt.sh localhost

# 인라인으로 지정
USDT_CONTRACT_ADDRESS=0x... MINT_TO=0x... MINT_AMOUNT=500 ./bin/mint-usdt.sh localhost

잔고가 0으로만 보일 때

  • ./bin/mint-usdt.sh(인자 없음)는 임시 체인에서만 실행됩니다. Admin은 http://127.0.0.1:8545 노드를 보므로, 같은 노드에서 민트할 때만 잔고가 반영됩니다. → ./bin/mint-usdt.sh localhost 사용.

setup-usdt-localhost.sh

localhost 노드에 FaucetUSDT 배포 + 민트를 한 번에 수행합니다. (위 터미널에서 실행한 순서를 하나의 스크립트로 실행)

사전 조건: ./bin/hardhat-node.sh 로 노드가 이미 실행 중이어야 합니다.

# 터미널 1: 노드 실행
./bin/hardhat-node.sh

# 터미널 2: 배포 후 1000 USDT 민트 (계정 #0)
./bin/setup-usdt-localhost.sh

출력된 컨트랙트 주소를 local-dashboard/.envFAUCET_TOKEN_ADDRESS 에 넣으면 Admin 대시보드에서 잔고 조회 시 1000이 표시됩니다.


transfer-usdt.sh

FaucetUSDT를 다른 주소로 전송(ERC20 transfer)합니다.

환경변수 필수 설명
USDT_CONTRACT_ADDRESS FaucetUSDT 컨트랙트 주소
TRANSFER_TO 받을 주소
TRANSFER_AMOUNT 인간 단위 수량 (예: 50)
USDT_CONTRACT_ADDRESS=0x... TRANSFER_TO=0x... TRANSFER_AMOUNT=50 ./bin/transfer-usdt.sh

More in Blockchain