functest utils - get_resolvconf_ns() Ensure that dns works with dns name resolution
authorboucherv <valentin.boucher@orange.com>
Wed, 3 Aug 2016 09:17:10 +0000 (11:17 +0200)
committerboucherv <valentin.boucher@orange.com>
Wed, 3 Aug 2016 09:34:23 +0000 (11:34 +0200)
JIRA: FUNCTEST-402

Change-Id: I5fa9204aafb13330eb810950aa7bc728f1a69162
Signed-off-by: boucherv <valentin.boucher@orange.com>
docker/requirements.pip
testcases/vnf/vIMS/orchestrator.py
testcases/vnf/vIMS/vIMS.py
utils/functest_utils.py

index f590b2a..52d0a9c 100644 (file)
@@ -25,3 +25,4 @@ paramiko==1.16.0
 python-congressclient==1.3.0
 subprocess32
 shyaml
+dnspython
index d88efe9..3da3fb0 100644 (file)
@@ -55,8 +55,6 @@ class orchestrator:
     def set_nameservers(self, nameservers):
         if 0 < len(nameservers):
             self.config['dns_subnet_1'] = nameservers[0]
-        if 1 < len(nameservers):
-            self.config['dns_subnet_2'] = nameservers[1]
 
     def set_logger(self, logger):
         self.logger = logger
index 790bfa0..dfbb675 100755 (executable)
@@ -441,9 +441,9 @@ def main():
     flavor_name = "m1.small"
     flavor_id = os_utils.get_flavor_id(nova, flavor_name)
     for requirement in CW_REQUIERMENTS:
-        if requirement == 'ram_min':
+        if requirement == 'ram_min' and flavor_id == '':
             flavor_id = os_utils.get_flavor_id_by_ram_range(
-                nova, CW_REQUIERMENTS['ram_min'], 8196)
+                nova, CW_REQUIERMENTS['ram_min'], 4500)
 
     if flavor_id == '':
         logger.error(
index b001430..5f790a0 100644 (file)
@@ -16,10 +16,10 @@ import os
 import os.path
 import re
 import shutil
-import socket
 import subprocess
 import sys
 import urllib2
+import dns.resolver
 
 import functest.ci.tier_builder as tb
 from git import Repo
@@ -226,13 +226,17 @@ def get_resolvconf_ns():
     nameservers = []
     rconf = open("/etc/resolv.conf", "r")
     line = rconf.readline()
+    resolver = dns.resolver.Resolver()
     while line:
         ip = re.search(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line)
-        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         if ip:
-            result = sock.connect_ex((ip.group(), 53))
-            if result == 0:
-                nameservers.append(ip.group())
+            resolver.nameservers = [str(ip)]
+            try:
+                result = resolver.query('opnfv.org')[0]
+                if result != "":
+                    nameservers.append(ip.group())
+            except dns.exception.Timeout:
+                pass
         line = rconf.readline()
     return nameservers