Resolve resource status sync

adding configuration to tempest.conf

Change-Id: I4c76f885db3774e91c927fb5bbe0687080274067
This commit is contained in:
Gueyoung Jung 2017-01-15 22:24:34 -05:00 committed by Omar Rivera
parent 0ff46ffb36
commit ce6b9b9871
12 changed files with 89 additions and 86 deletions

View File

@ -74,13 +74,16 @@ def tenant_servers_in_group(tenant_id, group):
server_list = server_list_for_group(group)
nova = nova_client()
for server_id in server_list:
try:
server = nova.servers.get(server_id)
if server.tenant_id == tenant_id:
servers.append(server_id)
except Exception as ex: # TODO(JD): update DB
api.LOG.error("Instance %s could not be found" % server_id)
api.LOG.error(ex)
if server_id == "none":
servers.append(server_id)
else:
try:
server = nova.servers.get(server_id)
if server.tenant_id == tenant_id:
servers.append(server_id)
except Exception as ex: # TODO(JD): update DB
api.LOG.error("Instance %s could not be found" % server_id)
api.LOG.error(ex)
if len(servers) > 0:
return servers

View File

@ -378,9 +378,13 @@ class MusicHandler(object):
if _e.heat_resource_uuid is not None and \
_e.heat_resource_uuid != "none":
heat_resource_uuid = _e.heat_resource_uuid
else:
heat_resource_uuid = _e.uuid
if _e.heat_root_stack_id is not None and \
_e.heat_root_stack_id != "none":
heat_root_stack_id = _e.heat_root_stack_id
else:
heat_root_stack_id = _e.uuid
data = {
'uuid': _e.uuid,

View File

@ -277,8 +277,7 @@ class Ostro(object):
break
for vm_id in vm_id_list:
if vm_id[2] != "none":
vm_list.append(vm_id[2])
vm_list.append(vm_id[2])
return vm_list

View File

@ -114,8 +114,9 @@ class ScenarioTestCase(test.BaseTestCase):
instance.name, generated_name)
instance.name = generated_name
self.wait_for_stack(stack_name, env_data, template_resources)
res = self.wait_for_stack(stack_name, env_data, template_resources)
self.addCleanup(self.delete_stack)
return res
except Exception:
self.log.log_error("Failed to create stack", traceback.format_exc())
@ -139,14 +140,21 @@ class ScenarioTestCase(test.BaseTestCase):
traceback.format_exc())
def get_env_file(self, template):
"""Return file.read for env file or return None."""
env_url = template.replace(".yml", ".env")
try:
env_url = template.replace(".yml", ".env")
if os.path.exists(env_url):
with open(env_url, "r") as f:
return f.read()
else:
return None
if os.path.exists(env_url):
with open(env_url, "r") as f:
filedata = f.read()
filedata = filedata.replace('image_place_holder', CONF.compute.image_ref)
filedata = filedata.replace('flavor_place_holder', CONF.compute.flavor_ref)
filedata = filedata.replace('network_place_holder', CONF.compute.fixed_network_name)
return filedata
else:
return None
except Exception:
self.log.log_error("Failed to load environment file", traceback.format_exc())
def _delete_group(self, group_id):
self.valet_client.delete_all_members(group_id)
@ -166,7 +174,8 @@ class ScenarioTestCase(test.BaseTestCase):
def wait_for_stack(self, stack_name, env_data, template_resources):
"""Use heat client to create stack, then wait for status."""
try:
self.log.log_info("Trying to create stack")
self.log.log_info("Trying to create stack "
"Waiting for stack status")
new_stack = self.heat_client.create_stack(
stack_name, environment=env_data,
template=template_resources.template_data)
@ -178,18 +187,15 @@ class ScenarioTestCase(test.BaseTestCase):
failure_pattern='^.*CREATE_FAILED$')
except exceptions.StackBuildErrorException as ex:
if "Ostro error" in str(ex):
if self.tries > 0:
self.log.log_error(
"Ostro error - try number %d" %
if "Ostro error" in str(ex) and self.tries > 0:
self.log.log_error("Ostro error - try number %d" %
(CONF.valet.TRIES_TO_CREATE - self.tries + 2))
self.tries -= 1
self.delete_stack()
time.sleep(CONF.valet.PAUSE)
self.wait_for_stack(stack_name, env_data,
template_resources)
else:
raise
self.tries -= 1
self.delete_stack()
time.sleep(CONF.valet.PAUSE)
self.wait_for_stack(stack_name, env_data, template_resources)
else:
self.log.log_error("Failed to create stack",
traceback.format_exc())
self.log.log_error("Failed to create stack", traceback.format_exc())
return False
return True

View File

@ -1,3 +1,4 @@
parameters:
instance_image: cirros-0.3.4-x86_64
instance_flavor: m1.tiny
instance_image: image_place_holder
instance_flavor: flavor_place_holder
network: network_place_holder

View File

@ -9,28 +9,29 @@ parameters:
instance_flavor:
type: string
network:
type: string
resources:
my-instance-1:
type: OS::Nova::Server
properties:
name: affinity-1
# key_name: ssh-key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
# networks:
# - network: 0c405776-0c37-4212-a814-e8aa539b32b5
networks:
- network: { get_param: network }
my-instance-2:
type: OS::Nova::Server
properties:
name: affinity-2
#key_name: ssh-key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
#networks:
# - network: 0c405776-0c37-4212-a814-e8aa539b32b5
# # - network: 0c405776-0c37-4212-a814-e8aa539b32b5
networks:
- network: { get_param: network }
test-affinity-group3:
type: ATT::Valet::GroupAssignment

View File

@ -1,3 +1,4 @@
parameters:
instance_image: cirros-0.3.4-x86_64
instance_flavor: m1.tiny
instance_image: image_place_holder
instance_flavor: flavor_place_holder
network: network_place_holder

View File

@ -9,37 +9,29 @@ parameters:
instance_flavor:
type: string
network:
type: string
resources:
my-instance-1:
type: OS::Nova::Server
properties:
name: test diversity -1
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
#networks:
#- network: 0c405776-0c37-4212-a814-e8aa539b32b5
networks:
- network: { get_param: network }
my-instance-2:
type: OS::Nova::Server
properties:
name: test diversity -2
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
#networks:
#- network: 0c405776-0c37-4212-a814-e8aa539b32b5
networks:
- network: { get_param: network }
# my-instance-3:
# type: OS::Nova::Server
# properties:
# name: test-3
# key_name: my_key
# image: cirros-0.3.4-x86_64-disk.img
# flavor: m1.small
# networks:
# - network: 0c405776-0c37-4212-a814-e8aa539b32b5
test-diversity-group:
type: ATT::Valet::GroupAssignment
@ -49,7 +41,6 @@ resources:
resources:
- {get_resource: my-instance-1}
- {get_resource: my-instance-2}
#- {get_resource: my-instance-3}
outputs:
instance_name-1:

View File

@ -1,3 +1,4 @@
parameters:
instance_image: cirros-0.3.4-x86_64
instance_flavor: m1.tiny
instance_image: image_place_holder
instance_flavor: flavor_place_holder
network: network_place_holder

View File

@ -9,39 +9,46 @@ parameters:
instance_flavor:
type: string
network:
type: string
resources:
my-instance-1:
type: OS::Nova::Server
properties:
name: test-1
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
my-instance-2:
type: OS::Nova::Server
properties:
name: test-2
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
my-instance-3:
type: OS::Nova::Server
properties:
name: test-3
# key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
my-instance-4:
type: OS::Nova::Server
properties:
name: test-4
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
test-affinity-group1:

View File

@ -1,3 +1,4 @@
parameters:
instance_image: cirros-0.3.4-x86_64
instance_flavor: m1.tiny
instance_image: image_place_holder
instance_flavor: flavor_place_holder
network: network_place_holder

View File

@ -9,31 +9,29 @@ parameters:
instance_flavor:
type: string
network:
type: string
resources:
my-instance-1:
type: OS::Nova::Server
properties:
name: test exclusivity-1
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
my-instance-2:
type: OS::Nova::Server
properties:
name: test exclusivity-2
#key_name: my_key
image: { get_param: instance_image }
flavor: { get_param: instance_flavor }
networks:
- network: { get_param: network }
# my-instance-3:
# type: OS::Nova::Server
# properties:
# name: test-3
# #key_name: my_key
# image: cirros-0.3.4-x86_64-disk.img
# flavor: m1.tiny
test-exclusivity-group:
type: ATT::Valet::GroupAssignment
properties:
@ -43,13 +41,3 @@ resources:
resources:
- {get_resource: my-instance-1}
- {get_resource: my-instance-2}
# test-diversity-group:
# type: ATT::CloudQoS::ResourceGroup
# properties:
# relationship: diversity
# level: host
# resources:
# - {get_resource: my-instance-1}
# - {get_resource: my-instance-3}