RFC: How to improve Ubuntu support

Robert Markula robert at markula.org
Thu Nov 13 11:32:02 CET 2014


Quoting Moritz Struebe <Moritz.Struebe at informatik.uni-erlangen.de>:

> Am 2014-11-13 um 09:59 schrieb Robert Markula:
>>
>> In the Wiki page [4] you mentioned I tried to stick as closely as
>> possible to the stock FAI configuration. All changes from the stock
>> FAI configuration are documented cleanly with appropriate classes
>> wherever possible. This eases transition and future upgrades.
>
> The problem with that page that I see is that the _changes_ are actually
> not documented. It's rather a replace the contents of file X with Y. A
> "replace line X with Y" or "remove XY", would IMO be more helpful.

Correct. Upon writing the Wiki page I initially had done exactly what  
you proposed - "replace line X with Y". The result was that it made  
the wiki page awefully cumbersome to read. So I did stick with the  
current schema which focuses on getting things done quickly so the  
reader can mainly use copy and paste.

But my proposal was not about the writing of a wiki page, but on how  
the FAI config space could be modified. And there you can see that no  
existing classes are modified or even touched, instead additional  
classes, namely 'UBUNTU' and 'OS_UBUNTU_1404_AMD64' are introduced to  
cleanly separate the Ubuntu-specific changes.

The modification of the fai config files like '/etc/fai/fai.conf' is a  
different pair of shoes actually. But even this should stick as  
closely to the original as possible - and upon preparing the wiki it  
took me quite some time to find a solution which minimized the impact  
of the changes on the default config as much as possible.

>> In fact, I'm using FAI since quite a few years now over multiple
>> upgrades and this system has proven to be robust and scalable.
>
> Actually this is because the config was kept quite stable.

Yes and no. On one hand, the FAI config *did* change over the years,  
and on the other hand Ubuntu as a distribution changed as well - the  
required configuration changes in order to make a specific Ubuntu  
release work did change with almost every Ubuntu release.

>> I'd recommend this path for the Ubuntu FAI packages as well in order
>> to facilitate upgrades for the maintainer on one hand and make it
>> easier for the users to work with this package on the other hand -
>> keeping closely in sync with the official documentation, examples on
>> the Wiki and the mailing lists. Introducing a whole new configuration
>> just for Ubuntu would somewhat 'break' this compatibility.
>
> I strongly disagree. As I already said, it's currently a "replace X with
> Z". This could be simplified with copy example_ubuntu to ..... And I'm
> not suggesting anything that isn't already there - at least in some way.

I strongly disagree to your disagreement :-) And I disagree to your  
proposal to create a completely separate example_ubuntu config for the  
reasons I mentioned in my earlier post. Why not use the existing  
configuration and just add the Ubuntu-specific changes in a  
non-intrusive way? Using classes is a very elegant way to do this.  
This could even be included in the default FAI config examples from  
Thomas without any harm.

>> What else would be great would be a Ubuntu-specific readme in the
>> fai-server packages that gives a quick step-by-step-guide on how to
>> get everything up and running (take 'fai-setup -vl' as an example).
>
> Ideally there shouldn't be any difference....

Absolutely! E.g. things would be much easier if dracut was supported  
on Ubuntu. But that's just a matter of time IMO.
And that brings me back to my initial statement: Keeping as close as  
possible to the stock FAI configuration would make the switch to  
dracut a breeze - just remove the Ubuntu-specific initramfs-related  
changes and you're set.

Reading your comments from other posts I get the impression that we  
intend the same things but just name them differently.

Cheers,

Robert


More information about the linux-fai-devel mailing list