Skip to content

Commit f4af360

Browse files
Fixing remote integ test for windows by using awk instead of python (#1404)
Signed-off-by: Nishant Goel <[email protected]> (cherry picked from commit d6e7636) Co-authored-by: Nishant Goel <[email protected]>
1 parent d154604 commit f4af360

File tree

1 file changed

+38
-14
lines changed

1 file changed

+38
-14
lines changed

scripts/integtest.sh

100644100755
Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -103,24 +103,48 @@ then
103103
exit 1
104104
fi
105105

106-
data=$(python3 -c "import json; cluster=$ENDPOINT_LIST ; data_nodes=cluster; print(data_nodes[0][\"data_nodes\"][0][\"endpoint\"],':',data_nodes[0][\"data_nodes\"][0][\"port\"],':',data_nodes[0][\"data_nodes\"][0][\"transport\"],',',data_nodes[1][\"data_nodes\"][0][\"endpoint\"],':',data_nodes[1][\"data_nodes\"][0][\"port\"],':',data_nodes[1][\"data_nodes\"][0][\"transport\"])" | tr -d "[:blank:]")
106+
extract_values() {
107+
local cluster_name="$1"
108+
local field="$2"
107109

110+
echo "$ENDPOINT_LIST" | awk -v cluster="$cluster_name" -v field="$field" '
111+
BEGIN { RS=","; FS=":" }
112+
$1 ~ "\"cluster_name\"" && $2 ~ "\"" cluster "\"" {
113+
while (getline) {
114+
if ($1 ~ "\"" field "\"") {
115+
gsub(/"/, "", $2)
116+
gsub(/ /, "", $2)
117+
print $2
118+
exit
119+
}
120+
}
121+
}
122+
' | tr -d '{}'
123+
}
124+
125+
# Extract values for leader cluster
126+
leader_endpoint=$(extract_values "leader" "endpoint")
127+
leader_port=$(extract_values "leader" "port")
128+
leader_transport=$(extract_values "leader" "transport")
129+
130+
# Extract values for follower cluster
131+
follower_endpoint=$(extract_values "follower" "endpoint")
132+
follower_port=$(extract_values "follower" "port")
133+
follower_transport=$(extract_values "follower" "transport")
134+
135+
# Print extracted data
136+
echo "Leader Endpoint: $leader_endpoint"
137+
echo "Leader Port: $leader_port"
138+
echo "Leader Transport: $leader_transport"
139+
echo "Follower Endpoint: $follower_endpoint"
140+
echo "Follower Port: $follower_port"
141+
echo "Follower Transport: $follower_transport"
108142

109-
leader=$(echo $data | cut -d ',' -f1 | cut -d ':' -f1,2 )
110-
follower=$(echo $data | cut -d ',' -f2 | cut -d ':' -f1,2 )
111-
echo "leader: $leader"
112-
echo "follower: $follower"
113-
114143
# Get number of nodes, assuming both leader and follower have same number of nodes
115-
numNodes=$((${follower##*:} - ${leader##*:}))
144+
numNodes=$((${follower_port} - ${leader_port}))
116145
echo "numNodes: $numNodes"
117-
118-
LTRANSPORT_PORT=$(echo $data | cut -d ',' -f1 | cut -d ':' -f1,3 )
119-
FTRANSPORT_PORT=$(echo $data | cut -d ',' -f2 | cut -d ':' -f1,3 )
120-
echo "LTRANSPORT_PORT: $LTRANSPORT_PORT"
121-
echo "FTRANSPORT_PORT: $FTRANSPORT_PORT"
122-
123-
eval "./gradlew integTestRemote -Dleader.http_host=\"$leader\" -Dfollower.http_host=\"$follower\" -Dfollower.transport_host=\"$FTRANSPORT_PORT\" -Dleader.transport_host=\"$LTRANSPORT_PORT\" -Dsecurity_enabled=\"$SECURITY_ENABLED\" -Duser=\"$USERNAME\" -Dpassword=\"$PASSWORD\" -PnumNodes=$numNodes --console=plain "
146+
echo './gradlew integTestRemote -Dleader.http_host='"$leader_endpoint:$leader_port"' -Dfollower.http_host='"$follower_endpoint:$follower_port"' -Dfollower.transport_host='"$follower_endpoint:$follower_transport"' -Dleader.transport_host='"$leader_endpoint:$leader_transport"' -Dsecurity_enabled='"$SECURITY_ENABLED"' -Duser='"$USERNAME"' -Dpassword='"$PASSWORD"' -PnumNodes='"$numNodes"' --console=plain'
147+
./gradlew integTestRemote -Dleader.http_host=$leader_endpoint:$leader_port -Dfollower.http_host=$follower_endpoint:$follower_port -Dfollower.transport_host=$follower_endpoint:$follower_transport -Dleader.transport_host=$leader_endpoint:$leader_transport -Dsecurity_enabled=$SECURITY_ENABLED -Duser=$USERNAME -Dpassword=$PASSWORD -PnumNodes=$numNodes --console=plain
124148

125149
else
126150
# Single cluster

0 commit comments

Comments
 (0)