# hpc-testing
# Copyright (C) 2018 SUSE LLC
# 
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

get_port()
{
	local host=$1
	local host_id=$2
	local eth=$(eval echo \$IPPORT$host_id)

	tp $host "rxe_cfg remove $eth"
	tp $host "rxe_cfg add $eth"
	tp $host "rxe_cfg start"

	res=$(tpq $host rxe_cfg | grep $eth)
	if [ "$res" == "" ]; then
		fatal_error "Failed to find an active port on $host"
	fi

	ip=$(echo $res | awk '{ print $5}')
	rxe=$(echo $res | awk '{ print $6}')

	eval export IP$host_id=$ip
	eval export HCA$host_id=$rxe
	eval export IBPORT$host_id=1

	juLogSetProperty $host.ip_if $ip
	juLogSetProperty $host.port $rxe

	echo "[SUCCESS] Host $host uses interface $rxe."
}
