]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Add common popen support to the cisco plugin
authorGary Kotton <gkotton@redhat.com>
Mon, 24 Sep 2012 05:11:20 +0000 (05:11 +0000)
committerGary Kotton <gkotton@redhat.com>
Mon, 24 Sep 2012 05:11:20 +0000 (05:11 +0000)
Fixes bug 1055290

Change-Id: I5c90b3f23288101c34ac94470476676d5d9c141e

quantum/plugins/cisco/services/service_insertion.py
quantum/plugins/cisco/services/services_logistics.py
quantum/plugins/cisco/ucs/cisco_getvif.py

index cbe859de40325c278c46afbb1413b16ca4ac9738..afd6b6041c0fa20bff44e414f7baea25c018be98 100644 (file)
@@ -35,6 +35,7 @@ import subprocess
 import sys
 
 from quantum.common import constants
+from quantum.common import utils
 from quantum.plugins.cisco.common import cisco_constants as const
 from quantum.plugins.cisco.db import api as db
 from quantum.plugins.cisco.db import l2network_db as l2db
@@ -91,7 +92,8 @@ def insert_inpath_service(tenant_id, service_image_id,
         create_vm_args.append(servconts.CREATE_VM_CMD)
         create_vm_args.append(service_image_id)
         print ("Creating VM with image: %s" % (service_image_id))
-        process = subprocess.Popen(create_vm_args, stdout=subprocess.PIPE)
+        process = utils.subprocess_popen(create_vm_args,
+                                         stdout=subprocess.PIPE)
         result = process.stdout.readlines()
         tokens = re.search("i-[a-f0-9]*", str(result[1]))
         service_vm_name = tokens.group(0)
@@ -208,7 +210,8 @@ def connect_vm(tenant_id, vm_image_id, service_instance_id, *args):
         create_vm_args.append(servconts.CREATE_VM_CMD)
         create_vm_args.append(vm_image_id)
         print ("Creating VM with image: %s" % (vm_image_id))
-        process = subprocess.Popen(create_vm_args, stdout=subprocess.PIPE)
+        process = utils.subprocess_popen(create_vm_args,
+                                         stdout=subprocess.PIPE)
         result = process.stdout.readlines()
         tokens = re.search("i-[a-f0-9]*", str(result[1]))
         vm_name = tokens.group(0)
index db69a1270119a169b0de6321d47ccd46f16dca96..d8bf7651d1c8d91db7ab55012a88dbf2fec9daea 100644 (file)
@@ -24,6 +24,7 @@ import re
 import subprocess
 import time
 
+from quantum.common import utils
 from quantum.openstack.common import importutils
 from quantum.plugins.cisco.common import cisco_constants as const
 from quantum.plugins.cisco.db import services_db as sdb
@@ -54,8 +55,8 @@ class ServicesLogistics():
             while not flag and counter <= 5:
                 counter = counter + 1
                 time.sleep(2.5)
-                process = subprocess.Popen(service_args,
-                                           stdout=subprocess.PIPE)
+                process = utils.subprocess_popen(service_args,
+                                                 stdout=subprocess.PIPE)
                 result = process.stdout.readlines()
                 if not result:
                     flag = True
@@ -75,8 +76,8 @@ class ServicesLogistics():
             while not flag and counter <= 10:
                 counter = counter + 1
                 time.sleep(2.5)
-                process = subprocess.Popen(service_args,
-                                           stdout=subprocess.PIPE)
+                process = utils.subprocess_popen(service_args,
+                                                 stdout=subprocess.PIPE)
                 result = process.stdout.readlines()
                 if result:
                     tokens = re.search("running", str(result[1]))
index d8dc195eb46d1b93ca7d8adc4b80e9fb412e9588..f32b91f9e7814a60b2e2ce9f0525b646e1c76e73 100644 (file)
 
 import subprocess
 
+from quantum.common import utils
+
 
 def get_next_dynic(argv=[]):
     """Get the next available dynamic nic on this host"""
     cmd = ["ifconfig", "-a"]
     f_cmd_output = (
-        subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0])
+        utils.subprocess_popen(cmd, stdout=subprocess.PIPE).communicate()[0])
     eths = [lines.split(' ')[0] for lines in f_cmd_output.splitlines()
             if "eth" in lines]
     #print eths
     for eth in eths:
         cmd = ["ethtool", "-i", eth]
         f_cmd_output = (
-            subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0])
+            utils.subprocess_popen(cmd,
+                                   stdout=subprocess.PIPE).communicate()[0])
         bdf = [lines.split(' ')[1] for lines in f_cmd_output.splitlines()
                if "bus-info" in lines]
         #print bdf
         cmd = ["lspci", "-n", "-s", bdf[0]]
-        f_cmd_output = (subprocess.Popen(cmd, stdout=subprocess.PIPE).
+        f_cmd_output = (utils.subprocess_popen(cmd, stdout=subprocess.PIPE).
                         communicate()[0])
         deviceid = [(lines.split(':')[3]).split(' ')[0]
                     for lines in f_cmd_output.splitlines()]
@@ -44,7 +47,8 @@ def get_next_dynic(argv=[]):
         if deviceid[0] == "0044":
             cmd = ["/sbin/ip", "link", "show", eth]
             f_cmd_output = (
-                subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0])
+                utils.subprocess_popen(cmd, stdout=subprocess.PIPE).
+                communicate()[0])
             used = [lines for lines in f_cmd_output.splitlines()
                     if "UP" in lines]
             if not used: