| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #!/usr/bin/env bash
- #
- # solana-cli integration sanity test
- #
- set -e
- cd "$(dirname "$0")"/..
- # shellcheck source=multinode-demo/common.sh
- source multinode-demo/common.sh
- if [[ -z $1 ]]; then # no network argument, use localhost by default
- args=(--url http://127.0.0.1:8899)
- else
- args=("$@")
- fi
- args+=(--keypair "$SOLANA_CONFIG_DIR"/faucet.json)
- node_readiness=false
- timeout=60
- while [[ $timeout -gt 0 ]]; do
- set +e
- output=$($solana_cli "${args[@]}" transaction-count --commitment finalized)
- rc=$?
- set -e
- if [[ $rc -eq 0 && -n $output ]]; then
- node_readiness=true
- break
- fi
- sleep 2
- (( timeout=timeout-2 ))
- done
- if ! "$node_readiness"; then
- echo "Timed out waiting for cluster to start"
- exit 1
- fi
- (
- set -x
- $solana_cli "${args[@]}" address
- $solana_cli "${args[@]}" balance
- $solana_cli "${args[@]}" ping --count 5 --interval 0
- $solana_cli "${args[@]}" balance
- )
- echo PASS
- exit 0
|