Misnyovszki Adam wrote:
Hi,
automember-rebuild uses asynchronous 389 task, and returned success
even if the task didn't run. This patch fixes this issue adding a
--nowait parameter to 'ipa automember-rebuild', defaulting to False,
thus when the script runs without it, it waits for the 'nstaskexitcode'
attribute, which means the task has finished, according to
http://directory.fedoraproject.org/wiki/Task_Invocation_Via_LDAP#Implementation.
Old usage can be enabled using --nowait.
https://fedorahosted.org/freeipa/ticket/4239
Request for comments:
- Should I add a parameter to specify the polling time? (now 1ms)
- Should I add a parameter to specify the maximum polling number? Now
if something fails about creating the task, it polls forever.
- Obviously, if these parameters should be added, there should be a
reasonable default for them (~ Required=False, Default=X).
I don't think you need a polling time, esp since this is hidden from the
user, but I think that is probably too short and you may end up
hammering the LDAP server.
I also wonder if there should be some maximum wait time. I don't like
loops that can never exit. I'm at a loss for what that time should be
though. And we'd need to spell out that we gave up waiting, not that the
task necessarily failed. So rather than having a polling time option,
rename nowait into wait_for=20, so wait for 20 seconds. Or something
like that.
I'd suggest using get_entry since you already know the full DN and there
is only ever one. It would make this much more readable.
I wonder if some top-level documentation should be added to flesh this
out some more. This does, for example, return False in one case. The
meaning for that should be spelled out.
rob
_______________________________________________
Freeipa-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/freeipa-devel