Re: [Server-devel] Warning: breakage updating xs-config

2008-08-14 Thread Martin Langhoff
On Thu, Aug 14, 2008 at 5:46 PM, Martin Langhoff
[EMAIL PROTECTED] wrote:
 Done a clean XS install off 165, and about to update it. But I
 reviewed /etc and /var/named (which I know breaks) and I already have
 a diagnosis.

And an initial series of patches

 - now the domain_config scripts do something more sensible and more resilient
 - we now divert config files for named, dhcpd, squid
 - we use templates - at least for files edited by domain_config scripts

the bad news is - the upgrade path is horrendous. First I have to
manage to get the files there. Look at the topmost patch in the
xs-config repo right now. It is nothing I am proud of, but should
work. Without it, all our files get diverted to .rpmnew

This is not my kind of fun :-/

cheers,



m
-- 
 [EMAIL PROTECTED]
 [EMAIL PROTECTED] -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel


Re: [Server-devel] Warning: breakage updating xs-config

2008-08-13 Thread Martin Langhoff
On Tue, Aug 12, 2008 at 1:11 PM, Martin Langhoff
[EMAIL PROTECTED] wrote:
 #7708 - If you just install an XS, do the basic config (domain_config,
 etc) and then install a new xs-config, the install mechanism makes a
 mess. One tell-tale sign is that the files edited by domain_config are
 overwritten. Diagnosing more later...

Done a clean XS install off 165, and about to update it. But I
reviewed /etc and /var/named (which I know breaks) and I already have
a diagnosis.

First xs-config gets installed, and replaces files in /etc and
/var/named with symlinks. Second, the sysadmin runs domain_config, and
some of the scripts in domain_config run sed over symlinks in /etc
instead of doing it dorectly against the _target_ in
/fsroot.olpc.bla/. It's well known that sed -i (and perl -i, and
anything that does the same job) breaks symlinks.

Hmmm Hmm.

So the damage is done not at upgrade time, but at domain_config time.
So there's no easy/sane way I can fix it for already installed
machines. Anyone who installed an XS will need to apply some manual
steps to get the machine in a sane state after the next update.

Working with a solution now - but I had hoped for a quick fix I
could apply to ease the pain. No such. So I'm prob going to use the
sysconfig trick to divert to a different config file, and update the
domain_config machinery a bit to use templates.

No easy path unfortunately :-/

cheers,



m
-- 
 [EMAIL PROTECTED]
 [EMAIL PROTECTED] -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel


Re: [Server-devel] Warning: breakage updating xs-config

2008-08-12 Thread Jerry Vonau
Martin Langhoff wrote:
 On Tue, Aug 12, 2008 at 1:49 AM, Jerry Vonau [EMAIL PROTECTED] wrote:
 Martin Langhoff wrote:
 A few weeks ago Bryan and David reported breakage with xs-config, and
 over the last week over various tests we've had xs-config updates
 making a mess of already-configured XS setups. I haven't had a chance
 to look at it but yes, it is a high priority bug, and I'll be working
 on it asap.

 Sorry, coming up to speed, Ticket number? Got some info on the method used,
 and what failed?
 
 #7708 - If you just install an XS, do the basic config (domain_config,
 etc) and then install a new xs-config, the install mechanism makes a
 mess. One tell-tale sign is that the files edited by domain_config are
 overwritten. Diagnosing more later...


I'll have a look.

 Based on my F9 testing, while you have xs-config open, can you remove
 syslogd from the requires? Syslogd will still be installed based on the
 comp.xml file anyway. Without removing this requires from xs-config,
 updating past F7 becomes impossible as syslogd was later renamed/replaced.
 
 What is the new name? The depends is there because we do override
 /etc/syslogd.conf
 
You have your choice of replacements, syslog-ng or rsyslog. rsyslog is 
what get installed by default on F9.

Use /etc/sysconfig/syslog to point to a different config file, then it 
doesn't matter if the installed .conf file gets changed with a rpm 
upgrade, the daemon gets started with your config file.


 The same goes for newt-perl in xs-pkgs. The package radvd also gave me
 problems, although I don't recall why.
 
 I'll look into removing those.
 
 I ended up re-rolling xs-config and
 xs-pkgs to exclude these above packages. F9 now installs the xs-config
 package, with one problem, the symlinks in /etc/rc.d/rc1.d/ 23456... don't
 get created, looks like those need to be copied over also with F9.
 
 Ok.
 
 Some
 other links were installed as file.olpcnew. also. I'll put together a list
 later if you want it.
 
 Interesting. Short term plan is to fix it promptly. Long term plan --
 discussed with Wad this morn -- is to break xs-config into various
 parts:
 
  - For daemons that accept a parameter pointing to the config file
 (named for example) we should disable the daemon permanently via
 chkconfig and install an alternative init script (named-olpc) which
 points to a different config file (/etc/named-olpc.conf).
 

For named, would it not be easier it use /etc/sysconfig/named to point 
to an different config file?

ie: from:
OPTIONS=-D
ROOTDIR=/var/named/chroot

to:

OPTIONS=-D -c /etc/named.conf.olpc.serv#
ROOTDIR=/var/named/chroot

That should survive an rpm upgrade...


  - For files where we want to search/replace values (as we do with
 domain_config_ we should ship a template file
 (/etc/named-olpc.conf.in) with placeholders (@@BASEDOMAIN@@). So
 domain_config gets simplified a lot and becomes more reliable too.
 
  - We prefer conf.d arrangements where possible - and in those cases,
 avoid the symlink mess.
 
  - For actually hardcoded-name files we need to override (ie:
 /etc/rssh.conf) we can use a version-control scheme (git based
 probably).
 
  - And dismantle the symlink mess we have...

Ok, I see where you want to go...

Jerry
___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel


[Server-devel] Warning: breakage updating xs-config

2008-08-11 Thread Martin Langhoff
A few weeks ago Bryan and David reported breakage with xs-config, and
over the last week over various tests we've had xs-config updates
making a mess of already-configured XS setups. I haven't had a chance
to look at it but yes, it is a high priority bug, and I'll be working
on it asap.

Earlier updates to xs-config had been mainly tested in new installs or
unconfigured XS setups. I also probably blamed something else for the
breakage when I saw it. Now it's pretty clear and unambiguous *why*
things are broken.

I wish I had spotted this earlier - /


m
-- 
 [EMAIL PROTECTED]
 [EMAIL PROTECTED] -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel


Re: [Server-devel] Warning: breakage updating xs-config

2008-08-11 Thread Jerry Vonau
Martin Langhoff wrote:
 A few weeks ago Bryan and David reported breakage with xs-config, and
 over the last week over various tests we've had xs-config updates
 making a mess of already-configured XS setups. I haven't had a chance
 to look at it but yes, it is a high priority bug, and I'll be working
 on it asap.
 
Sorry, coming up to speed, Ticket number? Got some info on the method 
used, and what failed?

 Earlier updates to xs-config had been mainly tested in new installs or
 unconfigured XS setups. I also probably blamed something else for the
 breakage when I saw it. Now it's pretty clear and unambiguous *why*
 things are broken.
 
 I wish I had spotted this earlier - /

Based on my F9 testing, while you have xs-config open, can you remove 
syslogd from the requires? Syslogd will still be installed based on the 
comp.xml file anyway. Without removing this requires from xs-config, 
updating past F7 becomes impossible as syslogd was later 
renamed/replaced. The same goes for newt-perl in xs-pkgs. The package 
radvd also gave me problems, although I don't recall why. I ended up 
re-rolling xs-config and xs-pkgs to exclude these above packages. F9 now 
installs the xs-config package, with one problem, the symlinks in 
/etc/rc.d/rc1.d/ 23456... don't get created, looks like those need to be 
copied over also with F9. Some other links were installed as 
file.olpcnew. also. I'll put together a list later if you want it.

Jerry


___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel


Re: [Server-devel] Warning: breakage updating xs-config

2008-08-11 Thread Martin Langhoff
On Tue, Aug 12, 2008 at 1:49 AM, Jerry Vonau [EMAIL PROTECTED] wrote:
 Martin Langhoff wrote:

 A few weeks ago Bryan and David reported breakage with xs-config, and
 over the last week over various tests we've had xs-config updates
 making a mess of already-configured XS setups. I haven't had a chance
 to look at it but yes, it is a high priority bug, and I'll be working
 on it asap.

 Sorry, coming up to speed, Ticket number? Got some info on the method used,
 and what failed?

#7708 - If you just install an XS, do the basic config (domain_config,
etc) and then install a new xs-config, the install mechanism makes a
mess. One tell-tale sign is that the files edited by domain_config are
overwritten. Diagnosing more later...

 Based on my F9 testing, while you have xs-config open, can you remove
 syslogd from the requires? Syslogd will still be installed based on the
 comp.xml file anyway. Without removing this requires from xs-config,
 updating past F7 becomes impossible as syslogd was later renamed/replaced.

What is the new name? The depends is there because we do override
/etc/syslogd.conf

 The same goes for newt-perl in xs-pkgs. The package radvd also gave me
 problems, although I don't recall why.

I'll look into removing those.

 I ended up re-rolling xs-config and
 xs-pkgs to exclude these above packages. F9 now installs the xs-config
 package, with one problem, the symlinks in /etc/rc.d/rc1.d/ 23456... don't
 get created, looks like those need to be copied over also with F9.

Ok.

 Some
 other links were installed as file.olpcnew. also. I'll put together a list
 later if you want it.

Interesting. Short term plan is to fix it promptly. Long term plan --
discussed with Wad this morn -- is to break xs-config into various
parts:

 - For daemons that accept a parameter pointing to the config file
(named for example) we should disable the daemon permanently via
chkconfig and install an alternative init script (named-olpc) which
points to a different config file (/etc/named-olpc.conf).

 - For files where we want to search/replace values (as we do with
domain_config_ we should ship a template file
(/etc/named-olpc.conf.in) with placeholders (@@BASEDOMAIN@@). So
domain_config gets simplified a lot and becomes more reliable too.

 - We prefer conf.d arrangements where possible - and in those cases,
avoid the symlink mess.

 - For actually hardcoded-name files we need to override (ie:
/etc/rssh.conf) we can use a version-control scheme (git based
probably).

 - And dismantle the symlink mess we have...

cheers,


m
-- 
 [EMAIL PROTECTED]
 [EMAIL PROTECTED] -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Server-devel mailing list
Server-devel@lists.laptop.org
http://lists.laptop.org/listinfo/server-devel