[Freeipa-devel] [PATCH] 316 Improve DN usage in ipa-client-install

Martin Kosek mkosek at redhat.com
Tue Oct 2 10:48:32 UTC 2012


On 10/02/2012 10:49 AM, Petr Viktorin wrote:
> On 09/27/2012 01:35 PM, Martin Kosek wrote:
>> A hotfix pushed in a scope of ticket 3088 forced conversion of DN
>> object (baseDN) in IPA client discovery so that ipa-client-install
>> does not crash when creating an IPA default.conf. Since this is not
>> a preferred way to handle DN objects, improve its usage:
>>
>> - make sure, that baseDN retrieved by client discovery is always
>>    a DN object
>> - update ipachangeconf.py code to handle strings better and instead
>>    of concatenating objects, make sure they are converted to string
>>    first
>>
>> As a side-effect of ipachangeconf changes, default.conf config file
>> generated by ipa-client-install has no longer empty new line at the
>> end of a file.
>>
>> https://fedorahosted.org/freeipa/ticket/3088
> 
> ACK, but since you're reformatting the code, here are some minor issues found
> by the PEP8 checker.
> 
>> diff --git a/ipa-client/ipaclient/ipachangeconf.py
>> b/ipa-client/ipaclient/ipachangeconf.py
>> index
>> f6288062be5c5d1b29341ed90814e1fa1431019c..2bb0cc487670ce74833fc09b06449d0a176ffaf5
>> 100644
>> --- a/ipa-client/ipaclient/ipachangeconf.py
>> +++ b/ipa-client/ipaclient/ipachangeconf.py
>> @@ -68,7 +68,7 @@ class IPAChangeConf:
>>           elif type(indent) is str:
>>               self.indent = (indent, )
>>           else:
>> -           raise ValueError, 'Indent must be a list of strings'
>> +           raise ValueError('Indent must be a list of strings')
> 
> Please re-indent to 4 spaces.
> 
>>
>> @@ -143,35 +143,50 @@ class IPAChangeConf:
>>       def getSectionLine(self, section):
>>           if len(self.sectnamdel) != 2:
>>               return section
>> -        return self.sectnamdel[0]+section+self.sectnamdel[1]+self.deol
>> +        return self._dump_line(self.sectnamdel[0],
>> +                               section,
>> +                               self.sectnamdel[1],
>> +                               self.deol)
>> +
>> +    def _dump_line(self, *args):
>> +        return u"".join(unicode(x) for x in args)
>>
>>       def dump(self, options, level=0):
>> -        output = ""
>> +        output = []
>>           if level >= len(self.indent):
>>               level = len(self.indent)-1
>>
>>           for o in options:
>>               if o['type'] == "section":
>> -                output +=
>> self.sectnamdel[0]+o['name']+self.sectnamdel[1]+self.deol
>> -                output += self.dump(o['value'], level+1)
>> +                output.append(self._dump_line(self.sectnamdel[0],
>> +                                              o['name'],
>> +                                              self.sectnamdel[1]))
>> +                output.append(self.dump(o['value'], level+1))
> 
> Please surround the + operator by spaces (here & below).
> 
>> @@ -274,15 +297,19 @@ class IPAChangeConf:
>>                           opts.append(o)
>>                           continue
>>                       if no['action'] == 'comment':
>> -                       opts.append({'name':'comment', 'type':'comment',
>> -                                   
>> 'value':self.dcomment+o['name']+self.dassign+o['value']})
>> +                        value = self._dump_line(self.dcomment,
>> +                                                o['name'],
>> +                                                self.dassign,
>> +                                                o['value'])
>> +                        opts.append({'name':'comment', 'type':'comment',
>> +                                     'value':value})
> 
> Please add a space after each colon.
> 

Since the whole ipachangeconf.py is not much PEP8 compliant, I did not want to
create just small "islands of compliance" with different coding style that the
rest of the file.

In attached patch I fixed the PEP8 warnings in the whole file.

Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: freeipa-mkosek-316-2-improve-dn-usage-in-ipa-client-install.patch
Type: text/x-patch
Size: 18327 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/freeipa-devel/attachments/20121002/280ecfc8/attachment.bin>


More information about the Freeipa-devel mailing list