[opensuse-autoinstall] merging of <package> doesn't work
Hi, I'm adding two profiles in rules.xml, both contain <packages> and <remove-packages> entries (and addon produtcs). I'm adding the second profile as: <rule> ... <result> <profile>profiles/sled-only.xml</profile> <continue config:type="boolean">true</continue> <dont_merge config:type="list"> <element>listentry</element> <element>package</element> </dont_merge> </result> </rule> Merging of the two add_on_product listentries works fine, but the packages are not merged. E.g. I have <packages config:type="list"> <package>sendmail</package> </packages> in the first profile and <packages config:type="list"> <package>lilo</package> </packages> in the sled-only.xml. But lilo is not added and in y2log I see only "software":$["packages":["sendmail"]] although at some point earlier I find AutoInstallRules.ycp:590 user defined dont_merge for rules found. dontmerge is ["listentry", "package"] When merge the two xml files manually according to your blog, i.e. with /usr/bin/xsltproc --novalid --param replace "'false'" --param dontmerge1 "'package'" --param with "'sled-only.xml'" --output out.xml /usr/share/autoinstall/xslt/merge.xslt lmu.xml then out.xml contains the merge: <ns1:packages config:type="list"> <package>sendmail</package><package>lilo</package> </ns1:packages> Am I doing sth. wrong? cu, Frank -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. * -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
On Wednesday 01 April 2009 11:31:43 Frank Steiner wrote:
although at some point earlier I find AutoInstallRules.ycp:590 user defined dont_merge for rules found. dontmerge is ["listentry", "package"]
can you paste the "Merge command:" and one line later the STDOUT/STDERR output from the log? Maybe you can try the merge command if it looks correct and check the output -- ciao, Uwe Gansert Uwe Gansert, Server Technologies Team SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
On Wednesday 01 April 2009 12:11:40 Uwe Gansert wrote:
can you paste the "Merge command:" and one line later the STDOUT/STDERR output from the log? Maybe you can try the merge command if it looks correct and check the output
ah, I did not see you are using rules. The "Merge command:" is not logged then. Just the STDOUT/STDERR. -- ciao, Uwe Gansert Uwe Gansert, Server Technologies Team SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Uwe Gansert wrote
On Wednesday 01 April 2009 12:11:40 Uwe Gansert wrote:
can you paste the "Merge command:" and one line later the STDOUT/STDERR output from the log? Maybe you can try the merge command if it looks correct and check the output
ah, I did not see you are using rules. The "Merge command:" is not logged then. Just the STDOUT/STDERR.
I guess you mean the following stuff. Is there any debug option I can use the see what merge command is executed? 2009-04-01 09:12:18 <1> cantor(4239) [YCP] AutoInstallRules.ycp:679 Working on file: profiles/lmu.xml 2009-04-01 09:12:18 <1> cantor(4239) [YCP] XML.ycp:113 Reading /tmp/YaST2-04239-eiwl00/rules/profiles/lmu.xml 2009-04-01 09:12:18 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):758 Setting XML generic error handler 2009-04-01 09:12:18 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):793 Freeing generic XML error handler 2009-04-01 09:12:18 <1> cantor(4239) [YCP] AutoInstallRules.ycp:679 Working on file: profiles/sled-only.xml 2009-04-01 09:12:18 <1> cantor(4239) [YCP] AutoInstallRules.ycp:712 Merge result: $["exit":0, "stderr":"", "stdout":""] 2009-04-01 09:12:18 <1> cantor(4239) [YCP] XML.ycp:113 Reading /tmp/YaST2-04239-eiwl00/result.xml 2009-04-01 09:12:18 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):758 Setting XML generic error handler 2009-04-01 09:12:18 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):793 Freeing generic XML error handler 2009-04-01 09:12:18 <1> cantor(4239) [YCP] AutoInstallRules.ycp:679 Working on file: profiles/part_cantor_keep.xml 2009-04-01 09:12:19 <1> cantor(4239) [YCP] AutoInstallRules.ycp:712 Merge result: $["exit":0, "stderr":"", "stdout":""] 2009-04-01 09:12:19 <1> cantor(4239) [YCP] XML.ycp:113 Reading /tmp/YaST2-04239-eiwl00/result.xml 2009-04-01 09:12:19 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):758 Setting XML generic error handler 2009-04-01 09:12:19 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):793 Freeing generic XML error handler 2009-04-01 09:12:19 <1> cantor(4239) [YCP] AutoInstallRules.ycp:736 Ok=true 2009-04-01 09:12:19 <1> cantor(4239) [YCP] XML.ycp:113 Reading /tmp/YaST2-04239-eiwl00/rules/prefinal_autoinst.xml 2009-04-01 09:12:19 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):758 Setting XML generic error handler 2009-04-01 09:12:19 <1> cantor(4239) [agent-xml] XmlAgent.cc(Read):793 Freeing generic XML error handler -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. * -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
This was finally solved by the Novell support: YaST cannot correctly merge two profiles if the tags are in different orders. I.e.: profile1.xml: <add-on>..</add-on> <packages>..</packages> profile2.xml <packages>..</packages> <add-on>..</add-on> Those two won't merge correctly, like I've seen it. The strange thing was, that my two profiles that I put into AY were correcttly ordered! Both had <packages> first, and <add-on> second. But AY took my first profile and created a base_profile.xml from it, in which the tags were ordered alphabetically! Thus, base_profile.xml had <add-on> before <package>, and so merging with my second profile went wrong. I solved this by putting <add-on> before <package> in all my profiles. There will be a fix for future releases that AY/YaST sorts all profiles alphabetically before it merges them, so that order of tags in your hand-written profiles won't matter. I guess that will come with SP1. cu, Frank -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. * -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Dear Frank! In which version of openSUSE does this problem occur? 11.1? Frank Steiner wrote:
This was finally solved by the Novell support:
So you are probably talking about SLES?
YaST cannot correctly merge two profiles if the tags are in different orders. I.e.:
profile1.xml: <add-on>..</add-on> <packages>..</packages>
profile2.xml <packages>..</packages> <add-on>..</add-on>
Those two won't merge correctly, like I've seen it.
The strange thing was, that my two profiles that I put into AY were correcttly ordered! Both had <packages> first, and <add-on> second.
But AY took my first profile and created a base_profile.xml from it, in which the tags were ordered alphabetically! Thus, base_profile.xml had <add-on> before <package>, and so merging with my second profile went wrong.
In base-profile.xml the tags were ordered alphabetically. But not in the second profile? Is that true? For me merging software section in openSUSE 11.1 didn't work at all, when I first tried it. I didn't try again, but maybe this was the reason.
I solved this by putting <add-on> before <package> in all my profiles. There will be a fix for future releases that AY/YaST sorts all profiles alphabetically before it merges them, so that order of tags in your hand-written profiles won't matter. I guess that will come with SP1.
Many thanks for all your informations concerning this problem and its solution. Best regards, -- Guenther Haas, Uni Ulm, Abteilung TAIT, guenther.haas@gmx.de
Guenther Haas wrote
Dear Frank!
In which version of openSUSE does this problem occur? 11.1?
Frank Steiner wrote:
This was finally solved by the Novell support:
So you are probably talking about SLES?
Right, but openSuSE 11.1 and SLES 11 have a common code base so most of the stuff is identical on both systems.
In base-profile.xml the tags were ordered alphabetically. But not in the second profile? Is that true?
Yes, because base-profile.xml was generated from my first, hand-written profile and while processing, YaST sorted the tags. The second profile was my original hand-written profile which was not pre-processed by YaST (that's actually what's going to change as far as I understood). cu, Frank -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. * -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
participants (3)
-
Frank Steiner
-
Guenther Haas
-
Uwe Gansert