aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyan.RCS <lihainong@huawei.com>2016-12-20 08:36:24 +0000
committerRyan.RCS <lihainong@huawei.com>2016-12-21 02:03:48 +0000
commitaad4b7d74f7bfd272fd7ab601a61e7f2c4d0e64c (patch)
tree44f917519246b1776576fb5d1af36e2667561649
parent367691281be05a5f2c76455465ff14078415e6c2 (diff)
subprocess.call para stdout=PIPE is risky
1.In 'def run' function of parser.py file, subprocess.call parameter stdout= subprocess.PIPE is risky, so I changed the function from 'call' to 'popen' 2.updated sample/tosca.ymal because the version of that file is old. JIRA: YARDSTICK-473 Change-Id: Ie242e77eed6fdc2849394a3f170e40a0dd2be632 Signed-off-by: Ryan.RCS <lihainong@huawei.com>
-rw-r--r--samples/tosca.yaml260
-rw-r--r--yardstick/benchmark/scenarios/parser/parser.py6
2 files changed, 135 insertions, 131 deletions
diff --git a/samples/tosca.yaml b/samples/tosca.yaml
index 4472f7ef8..21c789133 100644
--- a/samples/tosca.yaml
+++ b/samples/tosca.yaml
@@ -5,145 +5,147 @@ import:
metadata:
- ID:clearwater
- Vendor:HP
+ ID: clearwater
+ Vendor: HP
dsl_definitions:
- compute_props_host_ellis:&compute_props_host_ellis
- num_cpu:4
- mem_size:4096
- compute_props_host_bono:&compute_props_host_bono
- num_cpu:3
- mem_size:2048
+ compute_props_host_ellis: &compute_props_host_ellis
+ num_cpu: 4
+ mem_size: 4096
+ compute_props_host_bono: &compute_props_host_bono
+ num_cpu: 3
+ mem_size: 2048
node_types:
- tosca.nodes.compute.ellis:
- derived_from:tosca.nodes.compute
+ tosca.nodes.compute.ellis:
+ derived_from: tosca.nodes.compute
- tosca.nodes.compute.bono:
- derived_from:tosca.nodes.compute
+ tosca.nodes.compute.bono:
+ derived_from: tosca.nodes.compute
topology_template:
- # a description of the topology template
- description:>
- Vdus used in a vnfd
- inputs:
- storage_size:
- type:scalar-unit.size
- default:2048
- description:The required storage resource
- storage_location:
- type:string
- description:>
- Block storage mount point (filesystem path).
- node_templates:
+ # A description of the topology template
+ description: >
+ Vdus used in a vnfd
+ inputs:
+ storage_size:
+ type: scalar-unit.size
+ default: 2048
+ description: The required storage resource
+ default: 3000
+ description: The required storage resource
+ storage_location:
+ type: string
+ description: >
+ Block storage mount point (filesystem path).
+ node_templates:
ellis:
- type:tosca.nodes.Compute
- capabilities:
- os:
- properties:
- architecture:
- type:
- distribution:
- version:
- host:
- properties:*compute_props_host_ellis
- scalable:
- properties:
- min_instances:1
- default_instances:1
- requirements:
- - local_storage:
- node:ellis_BlockStorage
- relationship:
- type:AttachesTo
- properties:
- location:{ get_input:storage_location }
- interfaces:
- Standard:
- start:
- implementation:start.sh
- delete:
- implementaion:stop.sh
- stop:
- implementaion:shutdown.sh
+ type: tosca.nodes.Compute
+ capabilities:
+ os:
+ properties:
+ architecture:
+ type:
+ distribution:
+ version:
+ host:
+ properties: *compute_props_host_ellis
+ scalable:
+ properties:
+ min_instances: 1
+ default_instances: 1
+ requirements:
+ - local_storage:
+ node: ellis_BlockStorage
+ relationship:
+ type: AttachesTo
+ properties:
+ location: { get_input:storage_location }
+ interfaces:
+ Standard:
+ start:
+ implementation: start.sh
+ delete:
+ implementaion: stop.sh
+ stop:
+ implementaion: shutdown.sh
ellis_BlockStorage:
- type:tosca.nodes.BlockStorage
- properties:
- size:{ get_input:storage_size }
+ type: tosca.nodes.BlockStorage
+ properties:
+ size: { get_input:storage_size }
bono:
- type:tosca.nodes.Compute
- capabilities:
- os:
- properties:
- architecture:
- type:
- distribution:
- version:
- host:
- properties:*compute_props_host_bono
- scalable:
- properties:
- min_instances:3
- default_instances:3
- requirements:
- - local_storage:
- node:bono_BlockStorage
- relationship:
- type:AttachesTo
- properties:
- location:{ get_input:storage_location }
- interfaces:
- Standard:
- start:
- implementation:start.sh
- delete:
- implementaion:stop.sh
- stop:
- implementaion:shutdown.sh
+ type: tosca.nodes.Compute
+ capabilities:
+ os:
+ properties:
+ architecture:
+ type:
+ distribution:
+ version:
+ host:
+ properties: *compute_props_host_bono
+ scalable:
+ properties:
+ min_instances: 3
+ default_instances: 3
+ requirements:
+ - local_storage:
+ node: bono_BlockStorage
+ relationship:
+ type: AttachesTo
+ properties:
+ location: { get_input:storage_location }
+ interfaces:
+ Standard:
+ start:
+ implementation: start.sh
+ delete:
+ implementaion: stop.sh
+ stop:
+ implementaion: shutdown.sh
bono_BlockStorage:
- type:tosca.nodes.BlockStorage
- properties:
- size:{ get_input:storage_size }
+ type: tosca.nodes.BlockStorage
+ properties:
+ size: { get_input:storage_size }
clearwater_network1:
- type:tosca.nodes.network.Network
- properties:
- ip_version:4
- ellis_port1:
- type:tosca.nodes.network.Port
- requirements:
- - binding:
- node:ellis
- - link:
- node:clearwater_network1
+ type:tosca.nodes.network.Network
+ properties:
+ ip_version:4
+ ellis_port1:
+ type:tosca.nodes.network.Port
+ requirements:
+ - binding:
+ node:ellis
+ - link:
+ node:clearwater_network1
clearwater_network2:
- type:tosca.nodes.network.Network
- properties:
- ip_version:4
- ellis_port2:
- type:tosca.nodes.network.Port
- requirements:
- - binding:
- node:ellis
- - link:
- node:clearwater_network2
+ type:tosca.nodes.network.Network
+ properties:
+ ip_version:4
+ ellis_port2:
+ type:tosca.nodes.network.Port
+ requirements:
+ - binding:
+ node:ellis
+ - link:
+ node:clearwater_network2
clearwater_network1:
- type:tosca.nodes.network.Network
- properties:
- ip_version:4
- bono_port1:
- type:tosca.nodes.network.Port
- requirements:
- - binding:
- node:bono
- - link:
- node:clearwater_network1
+ type:tosca.nodes.network.Network
+ properties:
+ ip_version:4
+ bono_port1:
+ type:tosca.nodes.network.Port
+ requirements:
+ - binding:
+ node:bono
+ - link:
+ node:clearwater_network1
clearwater_network2:
- type:tosca.nodes.network.Network
- properties:
- ip_version:4
- bono_port2:
- type:tosca.nodes.network.Port
- requirements:
- - binding:
- node:bono
- - link:
- node:clearwater_network2 \ No newline at end of file
+ type:tosca.nodes.network.Network
+ properties:
+ ip_version:4
+ bono_port2:
+ type:tosca.nodes.network.Port
+ requirements:
+ - binding:
+ node:bono
+ - link:
+ node:clearwater_network2 \ No newline at end of file
diff --git a/yardstick/benchmark/scenarios/parser/parser.py b/yardstick/benchmark/scenarios/parser/parser.py
index 006258d05..bb16e7c89 100644
--- a/yardstick/benchmark/scenarios/parser/parser.py
+++ b/yardstick/benchmark/scenarios/parser/parser.py
@@ -58,10 +58,12 @@ class Parser(base.Scenario):
cmd1 = "%s %s %s" % (self.parser_script, yangfile, toscafile)
cmd2 = "chmod 777 %s" % (self.parser_script)
subprocess.call(cmd2, shell=True)
- output = subprocess.call(cmd1, shell=True, stdout=subprocess.PIPE)
+ p = subprocess.Popen(cmd1, shell=True, stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ p.communicate()
print "yangtotosca finished"
- result['yangtotosca'] = "success" if output == 0 else "fail"
+ result['yangtotosca'] = "success" if p.returncode == 0 else "fail"
def teardown(self):
''' for scenario teardown remove parser and pyang '''