test(bats): Fix flaky connect helper... AGAIN (#6580)

pull/6577/head
Michael Li 1 month ago committed by GitHub
parent a52bdded1f
commit efc6fed502
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -4,18 +4,48 @@
function connect_nc() {
local id=$1
# Note: When this command returns, the session immediately goes into a "canceling" state
echo "SSH-2.0-Test" | boundary connect -exec nc -target-id $id -- -v -w 5 {{boundary.ip}} {{boundary.port}}
# Capture output and check for success message since nc may return non-zero on pipe close
local output
output=$(echo "SSH-2.0-Test" | boundary connect -exec nc -target-id $id -- -v -w 5 {{boundary.ip}} {{boundary.port}} 2>&1)
local status=$?
echo "$output"
# If connection succeeded, return 0 regardless of nc's exit status
if echo "$output" | grep -q "succeeded"; then
return 0
fi
return $status
}
function connect_alias() {
local alias=$1
# Note: When this command returns, the session immediately goes into a "canceling" state
echo "SSH-2.0-Test" | boundary connect $alias -exec nc -- -v -w 5 {{boundary.ip}} {{boundary.port}}
# Capture output and check for success message since nc may return non-zero on pipe close
local output
output=$(echo "SSH-2.0-Test" | boundary connect $alias -exec nc -- -v -w 5 {{boundary.ip}} {{boundary.port}} 2>&1)
local status=$?
echo "$output"
# If connection succeeded, return 0 regardless of nc's exit status
if echo "$output" | grep -q "succeeded"; then
return 0
fi
return $status
}
function connect_alias_with_host_id() {
local alias=$1
local hostid=$2
# Note: When this command returns, the session immediately goes into a "canceling" state
echo "SSH-2.0-Test" | boundary connect $alias -host-id $hostid -exec nc -- -v -w 5 {{boundary.ip}} {{boundary.port}}
# Capture output and check for success message since nc may return non-zero on pipe close
local output
output=$(echo "SSH-2.0-Test" | boundary connect $alias -host-id $hostid -exec nc -- -v -w 5 {{boundary.ip}} {{boundary.port}} 2>&1)
local status=$?
echo "$output"
# If connection succeeded, return 0 regardless of nc's exit status
if echo "$output" | grep -q "succeeded"; then
return 0
fi
return $status
}

Loading…
Cancel
Save