Fixes detecting Apex instack IP with functest 25/6025/1
authorTim Rozet <trozet@redhat.com>
Sun, 10 Jan 2016 04:49:14 +0000 (23:49 -0500)
committerTim Rozet <trozet@redhat.com>
Sun, 10 Jan 2016 04:49:14 +0000 (23:49 -0500)
default leases file may not always exist, especially in the case of
using leasefile-ro with dnsmasq.  This is a more sure fire way of
detecting the IP.

Change-Id: I6c4db3cda7c2f1b645015df7d326ed786980f8d3
Signed-off-by: Tim Rozet <trozet@redhat.com>
jjb/functest/functest-ci-jobs.yml

index 6c7b661..c556404 100644 (file)
             # labconfig is used only for joid
             labconfig=""
             if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
-                INSTALLER_IP=$(grep instack /var/lib/libvirt/dnsmasq/default.leases \
-                    |awk '{print $3}' | head -n 1)
+                instack_mac=$(virsh domiflist instack | grep default | \
+                              grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
+                INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk {'print $1'})
                 sshkey="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa"
                 sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
                 sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable