diff options
author | Ryan.RCS <lihainong@huawei.com> | 2016-12-20 08:36:24 +0000 |
---|---|---|
committer | Ryan.RCS <lihainong@huawei.com> | 2016-12-21 02:03:48 +0000 |
commit | aad4b7d74f7bfd272fd7ab601a61e7f2c4d0e64c (patch) | |
tree | 44f917519246b1776576fb5d1af36e2667561649 | |
parent | 367691281be05a5f2c76455465ff14078415e6c2 (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.yaml | 260 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/parser/parser.py | 6 |
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 ''' |