[Freeipa-devel] kra an ca instance installation

Jan Cholasta jcholast at redhat.com
Tue Aug 25 14:22:31 UTC 2015


On 25.8.2015 16:09, Simo Sorce wrote:
> On Tue, 2015-08-25 at 15:52 +0200, Jan Cholasta wrote:
>> On 25.8.2015 15:37, Simo Sorce wrote:
>>> On Tue, 2015-08-25 at 11:34 +0200, Jan Cholasta wrote:
>>>> On 25.8.2015 11:25, Jan Cholasta wrote:
>>>>> On 24.8.2015 19:51, Simo Sorce wrote:
>>>>>> Why do we have cainstance.py and ca.py and krainstance.py and kra.py in
>>>>>> ipaserver/install when you always need both files to do anything around
>>>>>> installation of the ca ?
>>>>>>
>>>>>> Is there a motivation ?
>>>>>> Or can I simply provide a patch to remove the ca.py and kra.py files an
>>>>>> unify all code in the proper *instance.py file ?
>>>>>
>>>>> ca.py and kra.py are the proper files ready to be migrated to the new
>>>>> install framework, cainstance.py and krainstance.py will be removed.
>>>>
>>>> ... once the migration is done. (Hit send button too fast.)
>>>>
>>>> The motivation is that *instance.py do not provide a uniform interface,
>>>> have a lot of redundant and duplicate stuff and are generally unfit for
>>>> any further extension.
>>>
>>> I have been changing only the instance files, so we are going in
>>> different directions.
>>
>> I don't see how, {ca,kra}instance.py code is called from {ca,kra}.py.
>> {ca,kra}.py contains all the code that is actually needed to install
>> CA/KRA that is not in {ca,kra}instance.py and was previously scattered
>> around ipa-{server,replica,ca,kra}-install.
>>
>>>
>>> I do not really care what file we are going into, but there is a lot of
>>> code in the installer now that does not tell the user a step is being
>>> done, while instances do that through the step interface.
>>
>> This code was always there, we only moved it to a single location. See
>> git history.
>>
>>>
>>> The step interface is also a very good way to let someone that read the
>>> code see what is going on and follow each step.
>>>
>>> Are you proposing to stop going through the instances steps ? I found
>>> the current way kra and ca installation is setup basically a regression,
>>> it took me a *lot* longer that it should be needed to follow through all
>>> the steps that are really taken.
>>
>> Again, we only moved the code around, and I don't think we created any
>> regressions.
>
> Ok, so the plan is just to move the CAInstance class and code *as is*
> from cainstance.py to ca.py ?I guess I am confused about what is your
> plan around this exactly.

The code in CAInstance will be gradually migrated to a new class in 
ca.py which uses the new install framework. We started with the 
top-level ipa-server-install and ipa-replica-install code, which is 
still not done, but you can see it for reference on how it will look 
like (ipaserver/install/server/*.py, especially the classes at the 
bottom of the files).

-- 
Jan Cholasta




More information about the Freeipa-devel mailing list