Michael DeHaan wrote:
> Javier Palacios wrote:
>>>> I've been revisiting the previous import code, and I'm working in a
>>>> small refactoring that will probably re-enable importing of multiple
>>>> distros at the same time, at the price of all of them sharing a single
>>>> breed specified at command line, and will also make easier to add
>>>> other distros.
>>>>
>>>>       
>>
>> Actually recover the multi-import has been much easier than I 
>> expected. The
>> patch attached works, at least for me.
>>
>> I can import three distros as
>> cobbler import --mirror=/media/distros/rhas/4.6 --name=rhas
>> cobbler import --path=/media/distros/Fedora9/i386/ --name=f9_32
>> cobbler import --mirror=/media/distros/Fedora9/x86_64 --name=f9_64
>>
>> or issue a single command
>> cobbler import --mirror=/media/distros --name=allinone --breed=redhat
>>
>> and all of them work.
>>
>> Regarding the patch itself, a couple of comments. I've moved 
>> distro_adder method
>> close to the distro add related method, but there is no change there.
>> I have also
>> modified item_distro.py, to remove breed and arch defaults. It was
>> difficult to know
>> why (and where) was the distro flavor set without os version until I
>> realize that the
>> redhat flavor was given on instantiation. It might be safer not to
>> move that change
>> into HEAD, but at least for devel branch I believe it is a good idea
>> to have no such
>> hardcoded defaults.
>> The remaining changes are mostly intended as a first step to the real
>> refactor, to
>> make easier understand the changes than submitting the patch in the 
>> final form
>>
>> Javier Palacios
>>   
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> cobbler mailing list
>> [email protected]
>> https://fedorahosted.org/mailman/listinfo/cobbler
>
> Thanks very much for the interest in this.   A few small problems:
>
> (A)  This patch breaks "make test" on my machine as it tries to call 
> "distro.set_arch()" with a value of None.
>
> (B)   Having a default for the item_distro.py values is a good thing, 
> because if no argument is passed to "distro add" it can assume a 
> reasonable default.   At least for now redhat based distros constitute 
> at least 95% of all cobbler usage.   Yes, we do want this to change, 
> but I don't believe we should require "--breed=redhat" on every distro 
> add command.   We could perhaps decide to be clever and choose the 
> default based on the platform on which cobbler was running if we were 
> concerned about that being a confusing feature on the other side of 
> the fence.   The changes to item_distro.py should not be applied, 
> having arch defaults and breed defaults is there for usability 
> reasons.  If someone forgets to set them, they can set them later with 
> an "edit" command, but this ensures there is always a valid value for 
> these fields.
>
> (C)   Can you explain why the get_pxe_arch function, which was there 
> to return the architecture of a specific point in the directory tree 
> where the kernel+initrd is found, now returns a list?   Are these 
> architecture guesses?   I can't see any ability for sharing of kernels 
> between arches.
>
> FYI: as for policy of what goes into HEAD, this is definitely 
> something that we're looking at for devel, but we only roll bugfixes 
> into HEAD.    As this is new feature development devel will roll into 
> head once 1.3.X is complete. 
> If you can take care of A, B, and C, I can look at applying this, as I 
> think being able to process and import containing a mix of 
> distribution trees on NFS is definitely useful.   We just want to make 
> extra sure everything that is currently there stays working.
>
> I think I'm much more interested in seeing that we get fully automated 
> answer file templates set up first, before we look at adding 
> additional capabilities to the import code or look at refactoring.   
> If we have the audience and the features, we can worry about code 
> cleanup, but the main feature this needs (to have fully automated 
> kickstarts straight out of the import) is still missing -- that is the 
> main thing that "cobbler import" is intended to do.
>
> --Michael
>
>

Correction:

(A) was my fault, running "make eraseconfig" removed the objects that 
were causing that problem.

Other comments still apply.

Sorry for the confusion!

--Michael


_______________________________________________
cobbler mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/cobbler

Reply via email to