diff mbox

[RFC,02/14] KVM Test: Add a function get_interface_name() to kvm_net_utils.py

Message ID 20100720013506.2212.7371.stgit@z
State Not Applicable
Headers show

Commit Message

Amos Kong July 20, 2010, 1:35 a.m. UTC
The function get_interface_name is used to get the interface name of linux
guest through the macaddress of specified macaddress.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Amos Kong <akong@redhat.com>
---
 0 files changed, 0 insertions(+), 0 deletions(-)

Comments

Lucas Meneghel Rodrigues July 27, 2010, 2:08 a.m. UTC | #1
On Tue, 2010-07-20 at 09:35 +0800, Amos Kong wrote:
> The function get_interface_name is used to get the interface name of linux
> guest through the macaddress of specified macaddress.

I wonder if it wouldn't be overkill to have separate utility libraries
on the kvm test instead of a single kvm_utils and kvm_test_utils like
you are proposing. Any thoughts Michael?

> Signed-off-by: Jason Wang <jasowang@redhat.com>
> Signed-off-by: Amos Kong <akong@redhat.com>
> ---
>  0 files changed, 0 insertions(+), 0 deletions(-)
> 
> diff --git a/client/tests/kvm/kvm_net_utils.py b/client/tests/kvm/kvm_net_utils.py
> new file mode 100644
> index 0000000..ede4965
> --- /dev/null
> +++ b/client/tests/kvm/kvm_net_utils.py
> @@ -0,0 +1,18 @@
> +import re
> +
> +def get_linux_ifname(session, mac_address):
> +    """
> +    Get the interface name through the mac address.
> +
> +    @param session: session to the virtual machine
> +    @mac_address: the macaddress of nic
> +    """
> +
> +    output = session.get_command_output("ifconfig -a")
> +
> +    try:
> +        ethname = re.findall("(\w+)\s+Link.*%s" % mac_address, output,
> +                             re.IGNORECASE)[0]
> +        return ethname
> +    except:
> +        return None
> 
>
Michael Goldish July 28, 2010, 10:29 a.m. UTC | #2
On 07/27/2010 05:08 AM, Lucas Meneghel Rodrigues wrote:
> On Tue, 2010-07-20 at 09:35 +0800, Amos Kong wrote:
>> The function get_interface_name is used to get the interface name of linux
>> guest through the macaddress of specified macaddress.
> 
> I wonder if it wouldn't be overkill to have separate utility libraries
> on the kvm test instead of a single kvm_utils and kvm_test_utils like
> you are proposing. Any thoughts Michael?

Yes, looks like this could be in kvm_test_utils.py, especially if
there's only a small number of functions here.

>> Signed-off-by: Jason Wang <jasowang@redhat.com>
>> Signed-off-by: Amos Kong <akong@redhat.com>
>> ---
>>  0 files changed, 0 insertions(+), 0 deletions(-)
>>
>> diff --git a/client/tests/kvm/kvm_net_utils.py b/client/tests/kvm/kvm_net_utils.py
>> new file mode 100644
>> index 0000000..ede4965
>> --- /dev/null
>> +++ b/client/tests/kvm/kvm_net_utils.py
>> @@ -0,0 +1,18 @@
>> +import re
>> +
>> +def get_linux_ifname(session, mac_address):
>> +    """
>> +    Get the interface name through the mac address.
>> +
>> +    @param session: session to the virtual machine
>> +    @mac_address: the macaddress of nic
>> +    """
>> +
>> +    output = session.get_command_output("ifconfig -a")
>> +
>> +    try:
>> +        ethname = re.findall("(\w+)\s+Link.*%s" % mac_address, output,
>> +                             re.IGNORECASE)[0]
>> +        return ethname
>> +    except:
>> +        return None
>>
>>
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Amos Kong Aug. 3, 2010, 1:39 a.m. UTC | #3
On Wed, Jul 28, 2010 at 01:29:22PM +0300, Michael Goldish wrote:
> On 07/27/2010 05:08 AM, Lucas Meneghel Rodrigues wrote:
> > On Tue, 2010-07-20 at 09:35 +0800, Amos Kong wrote:
> >> The function get_interface_name is used to get the interface name of linux
> >> guest through the macaddress of specified macaddress.
> > 
> > I wonder if it wouldn't be overkill to have separate utility libraries
> > on the kvm test instead of a single kvm_utils and kvm_test_utils like
> > you are proposing. Any thoughts Michael?
> 
> Yes, looks like this could be in kvm_test_utils.py, especially if
> there's only a small number of functions here.

Current functions of network are not too much, but we may add a lot of new utility functions in the future.
It's more clear to use another file.
 
> >> Signed-off-by: Jason Wang <jasowang@redhat.com>
> >> Signed-off-by: Amos Kong <akong@redhat.com>
> >> ---
> >>  0 files changed, 0 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/client/tests/kvm/kvm_net_utils.py b/client/tests/kvm/kvm_net_utils.py
> >> new file mode 100644
> >> index 0000000..ede4965
> >> --- /dev/null
> >> +++ b/client/tests/kvm/kvm_net_utils.py
> >> @@ -0,0 +1,18 @@
> >> +import re
> >> +
> >> +def get_linux_ifname(session, mac_address):
> >> +    """
> >> +    Get the interface name through the mac address.
> >> +
> >> +    @param session: session to the virtual machine
> >> +    @mac_address: the macaddress of nic
> >> +    """
> >> +
> >> +    output = session.get_command_output("ifconfig -a")
> >> +
> >> +    try:
> >> +        ethname = re.findall("(\w+)\s+Link.*%s" % mac_address, output,
> >> +                             re.IGNORECASE)[0]
> >> +        return ethname
> >> +    except:
> >> +        return None
> >>
> >>
> > 
> > 
> > --
> > To unsubscribe from this list: send the line "unsubscribe kvm" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
diff mbox

Patch

diff --git a/client/tests/kvm/kvm_net_utils.py b/client/tests/kvm/kvm_net_utils.py
new file mode 100644
index 0000000..ede4965
--- /dev/null
+++ b/client/tests/kvm/kvm_net_utils.py
@@ -0,0 +1,18 @@ 
+import re
+
+def get_linux_ifname(session, mac_address):
+    """
+    Get the interface name through the mac address.
+
+    @param session: session to the virtual machine
+    @mac_address: the macaddress of nic
+    """
+
+    output = session.get_command_output("ifconfig -a")
+
+    try:
+        ethname = re.findall("(\w+)\s+Link.*%s" % mac_address, output,
+                             re.IGNORECASE)[0]
+        return ethname
+    except:
+        return None