[Freeipa-devel] [PATCH 0098-0099] domain level 1 topology checks during IPA server uninstall

Martin Basti mbasti at redhat.com
Wed Dec 2 13:19:40 UTC 2015



On 02.12.2015 14:10, Martin Basti wrote:
>
>
> On 02.12.2015 14:08, Martin Babinsky wrote:
>> On 12/02/2015 10:45 AM, Martin Babinsky wrote:
>>> On 12/01/2015 02:40 PM, Martin Babinsky wrote:
>>>> On 11/30/2015 08:34 PM, Martin Basti wrote:
>>>>>
>>>>>
>>>>> On 30.11.2015 18:41, Martin Babinsky wrote:
>>>>>> On 11/30/2015 06:15 PM, Martin Basti wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 30.11.2015 16:43, Martin Babinsky wrote:
>>>>>>>> On 11/30/2015 12:31 PM, Jan Cholasta wrote:
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> On 27.11.2015 14:58, Martin Babinsky wrote:
>>>>>>>>>> On 11/19/2015 06:19 PM, Martin Babinsky wrote:
>>>>>>>>>>> These two patches fix the following tickets:
>>>>>>>>>>>
>>>>>>>>>>> https://fedorahosted.org/freeipa/ticket/5377
>>>>>>>>>>> https://fedorahosted.org/freeipa/ticket/5409
>>>>>>>>>>>
>>>>>>>>>>> I have added a new option '--ignore-disconnected-topology' 
>>>>>>>>>>> which
>>>>>>>>>>> forces
>>>>>>>>>>> IPA master uninstall despite reported errors in topology. 
>>>>>>>>>>> I'm not
>>>>>>>>>>> quite
>>>>>>>>>>> sure if we want to flood ipa-server-install with
>>>>>>>>>>> uninstall-specific
>>>>>>>>>>> options, maybe it is better to skip the check in unattended 
>>>>>>>>>>> mode
>>>>>>>>>>> and
>>>>>>>>>>> just print a warning about disconnected topology and what to do
>>>>>>>>>>> about
>>>>>>>>>>> it.
>>>>>>>>>>>
>>>>>>>>>>> I would like to hear your opinions about this.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> Attaching rebased and updated patches.
>>>>>>>>>
>>>>>>>>> Patch 0098: LGTM
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Patch 0099:
>>>>>>>>>
>>>>>>>>> a) This check should be done in Server.__init__() rather than
>>>>>>>>> install_check():
>>>>>>>>>
>>>>>>>>> +    if options.ignore_disconnected_topology:
>>>>>>>>> +        print("'--ignore-disconnected-topology' is used only
>>>>>>>>> during "
>>>>>>>>> +              "uninstallation")
>>>>>>>>> +        sys.exit(1)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> b) 
>>>>>>>>> s/--ignore-disconnected-topology/--ignore-topology-disconnect/,
>>>>>>>>> for
>>>>>>>>> consistency with other options, e.g. --no-ui-redirect.
>>>>>>>>>
>>>>>>>>> Maybe even shorten it to --ignore-topology? But we probably don't
>>>>>>>>> want
>>>>>>>>> people to use this option much, so it might be better to keep it
>>>>>>>>> long?
>>>>>>>>>
>>>>>>>> I would rather leave it with the long option name, it is more
>>>>>>>> apparent
>>>>>>>> what this switch should be around.
>>>>>>>>>
>>>>>>>>> c) I'm fine with uninstall options, you can remove the TODO:
>>>>>>>>>
>>>>>>>>> +    # TODO: ask jcholast about uninstallation options
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Honza
>>>>>>>>>
>>>>>>>>
>>>>>>>> Attaching updated patches.
>>>>>>>>
>>>>>>> NACK
>>>>>>>
>>>>>>> ipa-server-install --uninstall
>>>>>>>
>>>>>>> 2015-11-30T17:14:30Z DEBUG Destroyed connection
>>>>>>> context.ldap2_140081152041808
>>>>>>> 2015-11-30T17:14:30Z DEBUG Traceback (most recent call last):
>>>>>>>    File
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/common.py",
>>>>>>> line 91, in _handle_exception
>>>>>>>      super(Continuous, self)._handle_exception(exc_info)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/core.py",
>>>>>>> line 387, in _handle_exception
>>>>>>>      six.reraise(*exc_info)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/core.py",
>>>>>>> line 439, in _handle_exception
>>>>>>>      super(ComponentBase, self)._handle_exception(exc_info)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/core.py",
>>>>>>> line 387, in _handle_exception
>>>>>>>      six.reraise(*exc_info)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/core.py",
>>>>>>> line 355, in __runner
>>>>>>>      step()
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/core.py",
>>>>>>> line 352, in <lambda>
>>>>>>>      step = lambda: next(self.__gen)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/util.py",
>>>>>>> line 81, in run_generator_with_yield_from
>>>>>>>      six.reraise(*exc_info)
>>>>>>>    File 
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/util.py",
>>>>>>> line 59, in run_generator_with_yield_from
>>>>>>>      value = gen.send(prev_value)
>>>>>>>    File
>>>>>>> "/usr/lib/python2.7/site-packages/ipapython/install/common.py",
>>>>>>> line 71, in _uninstall
>>>>>>>      for nothing in self._uninstaller(self.parent):
>>>>>>>    File
>>>>>>> "/usr/lib/python2.7/site-packages/ipaserver/install/server/install.py", 
>>>>>>>
>>>>>>>
>>>>>>> line 1409, in main
>>>>>>>      uninstall_check(self)
>>>>>>>    File
>>>>>>> "/usr/lib/python2.7/site-packages/ipaserver/install/server/install.py", 
>>>>>>>
>>>>>>>
>>>>>>> line 265, in decorated
>>>>>>>      func(installer)
>>>>>>>    File
>>>>>>> "/usr/lib/python2.7/site-packages/ipaserver/install/server/install.py", 
>>>>>>>
>>>>>>>
>>>>>>> line 1140, in uninstall_check
>>>>>>>      api, masters, options.ignore_disconnected_topology)
>>>>>>> AttributeError: 'uninstaller(Server)' object has no attribute
>>>>>>> 'ignore_disconnected_topology'
>>>>>>>
>>>>>>> 2015-11-30T17:14:30Z ERROR 'uninstaller(Server)' object has no
>>>>>>> attribute
>>>>>>> 'ignore_disconnected_topology'
>>>>>>> 2015-11-30T17:14:30Z INFO The ipa-server-install command was
>>>>>>> successful
>>>>>>>
>>>>>>
>>>>>> Sorry I have failed horribly during option rename. Attaching patch
>>>>>> that should actually work.
>>>>>>
>>>>> functional ACK
>>>> Attaching rebased patches reflecting the recent changes in the 
>>>> handling
>>>> of managed topology suffixes handling.
>>>>
>>>>
>>>>
>>>>
>>>
>>> Jan had some more suggestions to the patches. Attaching updated 
>>> version.
>>>
>>>
>>>
>> Attaching updated patch 99 with fixed error message.
>>
> Pushed to master: b8c619a7139bd7b65caa03b68431e22791ff19bf
>
ACK :-)




More information about the Freeipa-devel mailing list