[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [test-API PATCH 1/6] Slight cross-distribution support



On 03/26/2012 02:30 PM, Peter Krempa wrote:
> On 03/24/2012 06:42 PM, Martin Kletzander wrote:
>> There is no support for distributions without 'rpm' as a package
>> manager. This patch modifies (at this time) the only
>> distribution-specific import in order to ease the broadening of
>> distribution list supported by libvirt-test-API.
>> ---
>>   env_inspect.py =>  dist/redhat/env_inspect.py |    0
>>   generator.py                                 |   12 ++++++++++--
>>   2 files changed, 10 insertions(+), 2 deletions(-)
>>   create mode 100644 dist/__init__.py
>>   create mode 100644 dist/redhat/__init__.py
>>   rename env_inspect.py =>  dist/redhat/env_inspect.py (100%)
>>
>> diff --git a/dist/__init__.py b/dist/__init__.py
>> new file mode 100644
>> index 0000000..e69de29
>> diff --git a/dist/redhat/__init__.py b/dist/redhat/__init__.py
>> new file mode 100644
>> index 0000000..e69de29
>> diff --git a/env_inspect.py b/dist/redhat/env_inspect.py
>> similarity index 100%
>> rename from env_inspect.py
>> rename to dist/redhat/env_inspect.py
>> diff --git a/generator.py b/generator.py
>> index 6108963..4f4478b 100644
>> --- a/generator.py
>> +++ b/generator.py
>> @@ -1,6 +1,6 @@
>>   #!/usr/bin/env python
>>   #
>> -# libvirt-test-API is copyright 2010 Red Hat, Inc.
>> +# libvirt-test-API is copyright 2010, 2012 Red Hat, Inc.
>>   #
>>   # libvirt-test-API is free software: you can redistribute it and/or modify it
>>   # under the terms of the GNU General Public License as published by
>> @@ -23,10 +23,18 @@ import sys
>>   import traceback
>>
>>   import mapper
>> -import env_inspect
>>   from utils.Python import log
>>   from utils.Python import format
>>
>> +# Import of distribution-specific code.  If this is needed somewhere
>> +# else in the future, please don't copy-paste this, but create some
>> +# sensible distribution-specific package
>> +import os
>> +for dist in os.listdir('dist'):
>> +    if os.path.exists('/etc/%s-release' % dist):
>> +        exec('from dist.%s import env_inspect' % dist)
>> +        break
>> +
> Works great on Gentoo, but I'm afraid a bit that it could break Fedora 
> if it uses a different version file name. (but I don't have any at hand 
> so I can't test this )
>
> Peter

Fedora is using /etc/redhat-release file so you use the same handling
for Fedora and RHEL then it's fine.

Michal

-- 
Michal Novotny <minovotn redhat com>, RHCE, Red Hat
Virtualization | libvirt-php bindings | php-virt-control.org


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]