Merge "Have api tests use IPv4"
This commit is contained in:
commit
80312c2797
@ -16,6 +16,7 @@
|
||||
|
||||
from datetime import datetime
|
||||
import json
|
||||
import netaddr
|
||||
from time import sleep
|
||||
import uuid
|
||||
|
||||
@ -24,6 +25,7 @@ from proboscis.asserts import assert_equal
|
||||
from proboscis.asserts import assert_not_equal
|
||||
from proboscis.asserts import assert_raises
|
||||
from proboscis.asserts import assert_true
|
||||
from proboscis.asserts import fail
|
||||
from proboscis import before_class
|
||||
from proboscis.decorators import time_out
|
||||
from proboscis import SkipTest
|
||||
@ -84,7 +86,11 @@ def _execute_query(host, user_name, password, query):
|
||||
|
||||
def _get_address(instance_id):
|
||||
result = instance_info.dbaas_admin.mgmt.instances.show(instance_id)
|
||||
return result.ip[0]
|
||||
try:
|
||||
return next(str(ip) for ip in result.ip
|
||||
if netaddr.valid_ipv4(ip))
|
||||
except StopIteration:
|
||||
fail("No IPV4 ip found")
|
||||
|
||||
|
||||
def _test_configuration_is_applied_to_instance(instance, configuration_id):
|
||||
|
@ -13,6 +13,7 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import netaddr
|
||||
import os
|
||||
import re
|
||||
import time
|
||||
@ -126,9 +127,14 @@ class InstanceTestInfo(object):
|
||||
def get_address(self):
|
||||
result = self.dbaas_admin.mgmt.instances.show(self.id)
|
||||
if not hasattr(result, 'hostname'):
|
||||
return result.ip[0]
|
||||
try:
|
||||
return next(str(ip) for ip in result.ip
|
||||
if netaddr.valid_ipv4(ip))
|
||||
except StopIteration:
|
||||
fail("No IPV4 ip found")
|
||||
else:
|
||||
return result.server['addresses']
|
||||
return [str(ip) for ip in result.server['addresses']
|
||||
if netaddr.valid_ipv4(ip)]
|
||||
|
||||
def get_local_id(self):
|
||||
mgmt_instance = self.dbaas_admin.management.show(self.id)
|
||||
|
@ -115,8 +115,7 @@ class SqlAlchemyConnection(object):
|
||||
@staticmethod
|
||||
def _init_engine(user, password, host):
|
||||
return session.EngineFacade(
|
||||
"mysql+pymysql://%s:%s@%s:3306" % (user, password, host),
|
||||
pool_recycle=1800, echo=True
|
||||
"mysql+pymysql://%s:%s@%s:3306" % (user, password, host)
|
||||
).get_engine()
|
||||
|
||||
|
||||
|
@ -13,7 +13,9 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import netaddr
|
||||
import os
|
||||
from proboscis.asserts import fail
|
||||
|
||||
from trove import tests
|
||||
from trove.tests import util
|
||||
@ -33,7 +35,12 @@ class ServerSSHConnection(object):
|
||||
self.user = util.test_config.users.find_user(req_admin)
|
||||
self.dbaas_admin = util.create_dbaas_client(self.user)
|
||||
self.instance = self.dbaas_admin.management.show(self.instance_id)
|
||||
self.ip_address = self.instance.ip[0]
|
||||
try:
|
||||
self.ip_address = [str(ip) for ip in self.instance.ip
|
||||
if netaddr.valid_ipv4(ip)][0]
|
||||
except Exception:
|
||||
fail("No IPV4 ip found")
|
||||
|
||||
TROVE_TEST_SSH_USER = os.environ.get('TROVE_TEST_SSH_USER')
|
||||
if TROVE_TEST_SSH_USER and '@' not in self.ip_address:
|
||||
self.ip_address = TROVE_TEST_SSH_USER + '@' + self.ip_address
|
||||
|
Loading…
x
Reference in New Issue
Block a user