* Restart test without supermajority * Change check to look at stake rather than transaction confirmation * Add stake info while waiting for consensus * replace jq with grep (buildkite doesn't have jq installed)
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| set -ex
 | |
| 
 | |
| # shellcheck disable=SC1090
 | |
| # shellcheck disable=SC1091
 | |
| source "$(dirname "$0")"/../automation_utils.sh
 | |
| 
 | |
| RESULT_FILE="$1"
 | |
| 
 | |
| if [[ -z $CONSENSUS_TIMEOUT ]]; then
 | |
|   CONSENSUS_TIMEOUT=180
 | |
| fi
 | |
| 
 | |
| startGpuMode="off"
 | |
| if [[ -z $ENABLE_GPU ]]; then
 | |
|   ENABLE_GPU=false
 | |
| fi
 | |
| if [[ "$ENABLE_GPU" = "true" ]]; then
 | |
|   startGpuMode="on"
 | |
| fi
 | |
| 
 | |
| declare maybeAsyncNodeInit
 | |
| if [[ "$ASYNC_NODE_INIT" = "true" ]]; then
 | |
|   maybeAsyncNodeInit="--async-node-init"
 | |
| fi
 | |
| 
 | |
| # Restart the network
 | |
| "$REPO_ROOT"/net/net.sh stop
 | |
| 
 | |
| sleep 2
 | |
| 
 | |
| # shellcheck disable=SC2086
 | |
| "$REPO_ROOT"/net/net.sh start --skip-setup --no-snapshot-fetch --no-deploy \
 | |
|   --gpu-mode $startGpuMode $maybeAsyncNodeInit
 | |
| 
 | |
| # wait until consensus
 | |
| start=$SECONDS
 | |
| activeStake=$(get_active_stake)
 | |
| while [[ $((SECONDS - start)) -lt $CONSENSUS_TIMEOUT ]]; do
 | |
|   currentStake=$(get_current_stake)
 | |
|   echo "$((SECONDS - start))s: Current stake $currentStake, Active stake $activeStake" >> "$RESULT_FILE"
 | |
|   if [[ $activeStake -eq $currentStake ]]; then
 | |
|     echo "Restart Test Succeeded" >>"$RESULT_FILE"
 | |
|     exit 0
 | |
|   fi
 | |
|   sleep 5
 | |
| done
 | |
| 
 | |
| echo "Could not establish consensus in $CONSENSUS_TIMEOUT seconds" >> "$RESULT_FILE"
 | |
| exit 1
 |