Add 5 node GCE test cases (#6524)
* Add 5 node GCE test cases * shell check
This commit is contained in:
parent
dc52b17c4d
commit
39fc677781
|
@ -0,0 +1,16 @@
|
||||||
|
steps:
|
||||||
|
- command: "system-test/testnet-performance/testnet-automation.sh"
|
||||||
|
label: "GCE - CPU Only 5 Node"
|
||||||
|
env:
|
||||||
|
UPLOAD_RESULTS_TO_SLACK: "true"
|
||||||
|
CLOUD_PROVIDER: "gce"
|
||||||
|
TESTNET_TAG: "gce-edge-perf-cpu-only"
|
||||||
|
RAMP_UP_TIME: 0
|
||||||
|
TEST_DURATION_SECONDS: 600
|
||||||
|
NUMBER_OF_VALIDATOR_NODES: 5
|
||||||
|
NUMBER_OF_CLIENT_NODES: 2
|
||||||
|
CLIENT_OPTIONS: "bench-tps=2=--tx_count 15000 --thread-batch-sleep-ms 250"
|
||||||
|
TESTNET_ZONES: "us-west1-a,us-west1-b,us-central1-a,europe-west4-a"
|
||||||
|
ADDITIONAL_FLAGS: "--dedicated"
|
||||||
|
agents:
|
||||||
|
- "queue=testnet-deploy"
|
|
@ -0,0 +1,17 @@
|
||||||
|
steps:
|
||||||
|
- command: "system-test/testnet-performance/testnet-automation.sh"
|
||||||
|
label: "GCE - GPU Enabled 5 Nodes"
|
||||||
|
env:
|
||||||
|
UPLOAD_RESULTS_TO_SLACK: "true"
|
||||||
|
CLOUD_PROVIDER: "gce"
|
||||||
|
TESTNET_TAG: "gce-edge-perf-gpu-enabled"
|
||||||
|
RAMP_UP_TIME: 0
|
||||||
|
TEST_DURATION_SECONDS: 600
|
||||||
|
NUMBER_OF_VALIDATOR_NODES: 5
|
||||||
|
VALIDATOR_NODE_MACHINE_TYPE: "--machine-type n1-standard-16 --accelerator count=2,type=nvidia-tesla-v100"
|
||||||
|
NUMBER_OF_CLIENT_NODES: 2
|
||||||
|
CLIENT_OPTIONS: "bench-tps=2=--tx_count 15000 --thread-batch-sleep-ms 250"
|
||||||
|
TESTNET_ZONES: "us-west1-a,us-west1-b,us-central1-a,europe-west4-a"
|
||||||
|
ADDITIONAL_FLAGS: "--dedicated"
|
||||||
|
agents:
|
||||||
|
- "queue=testnet-deploy"
|
|
@ -7,5 +7,7 @@ if 'results' in data:
|
||||||
for result in data['results']:
|
for result in data['results']:
|
||||||
if 'series' in result:
|
if 'series' in result:
|
||||||
print result['series'][0]['columns'][1].encode() + ': ' + str(result['series'][0]['values'][0][1])
|
print result['series'][0]['columns'][1].encode() + ': ' + str(result['series'][0]['values'][0][1])
|
||||||
|
else:
|
||||||
|
print "An expected result from CURL request is missing"
|
||||||
else:
|
else:
|
||||||
print "No results returned from CURL request"
|
print "No results returned from CURL request"
|
||||||
|
|
|
@ -1,16 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# TODO: Make sure a dB named $TESTNET_TAG exists in the influxDB host, or can be created
|
|
||||||
[[ -n $TESTNET_TAG ]] || TESTNET_TAG=testnet-automation
|
|
||||||
[[ -n $INFLUX_HOST ]] || INFLUX_HOST=https://metrics.solana.com:8086
|
|
||||||
|
|
||||||
# TODO: Remove all default values, force explicitness in the testcase definition
|
|
||||||
[[ -n $TEST_DURATION_SECONDS ]] || TEST_DURATION_SECONDS=300
|
|
||||||
[[ -n $RAMP_UP_TIME ]] || RAMP_UP_TIME=0
|
|
||||||
[[ -n $NUMBER_OF_VALIDATOR_NODES ]] || NUMBER_OF_VALIDATOR_NODES=2
|
|
||||||
[[ -n $NUMBER_OF_CLIENT_NODES ]] || NUMBER_OF_CLIENT_NODES=1
|
|
||||||
|
|
||||||
function collect_logs {
|
function collect_logs {
|
||||||
echo --- collect logs from remote nodes
|
echo --- collect logs from remote nodes
|
||||||
rm -rf net/log
|
rm -rf net/log
|
||||||
|
@ -75,7 +65,7 @@ EOF
|
||||||
}
|
}
|
||||||
trap cleanup_testnet EXIT
|
trap cleanup_testnet EXIT
|
||||||
|
|
||||||
launchTestnet() {
|
function launchTestnet() {
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
# shellcheck disable=SC2068
|
# shellcheck disable=SC2068
|
||||||
|
@ -164,6 +154,26 @@ launchTestnet() {
|
||||||
|
|
||||||
cd "$(dirname "$0")/../.."
|
cd "$(dirname "$0")/../.."
|
||||||
|
|
||||||
|
# TODO: Make sure a dB named $TESTNET_TAG exists in the influxDB host, or can be created
|
||||||
|
[[ -n $TESTNET_TAG ]] || TESTNET_TAG=testnet-automation
|
||||||
|
[[ -n $INFLUX_HOST ]] || INFLUX_HOST=https://metrics.solana.com:8086
|
||||||
|
[[ -n $RAMP_UP_TIME ]] || RAMP_UP_TIME=0
|
||||||
|
|
||||||
|
if [[ -z $TEST_DURATION_SECONDS ]] ; then
|
||||||
|
echo TEST_DURATION_SECONDS not defined
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z $NUMBER_OF_VALIDATOR_NODES ]] ; then
|
||||||
|
echo NUMBER_OF_VALIDATOR_NODES not defined
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z $NUMBER_OF_CLIENT_NODES ]] ; then
|
||||||
|
echo NUMBER_OF_CLIENT_NODES not defined
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ -z $SOLANA_METRICS_CONFIG ]]; then
|
if [[ -z $SOLANA_METRICS_CONFIG ]]; then
|
||||||
if [[ -z $SOLANA_METRICS_PARTIAL_CONFIG ]]; then
|
if [[ -z $SOLANA_METRICS_PARTIAL_CONFIG ]]; then
|
||||||
echo SOLANA_METRICS_PARTIAL_CONFIG not defined
|
echo SOLANA_METRICS_PARTIAL_CONFIG not defined
|
||||||
|
@ -188,7 +198,7 @@ maybeMachineType=${VALIDATOR_NODE_MACHINE_TYPE:+"-G"}
|
||||||
IFS=, read -r -a TESTNET_CLOUD_ZONES <<<"${TESTNET_ZONES}"
|
IFS=, read -r -a TESTNET_CLOUD_ZONES <<<"${TESTNET_ZONES}"
|
||||||
|
|
||||||
RESULT_FILE="$TESTNET_TAG"_SUMMARY_STATS_"$NUMBER_OF_VALIDATOR_NODES".log
|
RESULT_FILE="$TESTNET_TAG"_SUMMARY_STATS_"$NUMBER_OF_VALIDATOR_NODES".log
|
||||||
rm -f $RESULT_FILE
|
rm -f "$RESULT_FILE"
|
||||||
RESULT_DETAILS="Test failed to finish"
|
RESULT_DETAILS="Test failed to finish"
|
||||||
|
|
||||||
TEST_PARAMS_TO_DISPLAY=(CLOUD_PROVIDER \
|
TEST_PARAMS_TO_DISPLAY=(CLOUD_PROVIDER \
|
||||||
|
|
Loading…
Reference in New Issue