Problem with AutoInstallRules.ycp and merge.xslt
Hello, I think there is a typo in AutoInstallRules.ycp (version 1.34.4.9 that comes with SLES9 SP2): the xsltproc to merge classes is called with the following param there (line 733): --param dontmerge \"'package, addon'\" and I'm quite sure that it sould be: --param dontmerge \"'package'\" --param dontmerge2 \"'addon'\" The result of this typo is that neither <package> nor <addon> are correctly aggregated, which is the desired effect I believe and I also hope. Quick demonstration: idhpb02:/ # cat /tmp/a.xml <?xml version="1.0"?> <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http:// www.suse.com/1.0/configns"> <install> <software> <addons config:type="list"> <addon>addon-A</addon> </addons> <packages config:type="list"> <package>package-A</package> </packages> </software> </install> </profile> idhpb02:/ # cat /tmp/b.xml <?xml version="1.0"?> <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http:// www.suse.com/1.0/configns"> <install> <software> <addons config:type="list"> <addon>addon-B</addon> </addons> <packages config:type="list"> <package>package-B</package> </packages> </software> </install> </profile> Calling it the wrong way: idhpb02:/ # xsltproc --novalid --param replace "'false'" --param dontmerge "'package, addon'" --param with "'/tmp/b.xml'" /usr/share/ autoinstall/xslt/merge.xslt /tmp/a.xml <?xml version="1.0"?> <ns1:profile xmlns:ns1="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns" xmlns="http:// www.suse.com/1.0/yast2ns"> <ns1:install> <ns1:software> <ns1:addons config:type="list"> <ns1:addon>addon-B</ns1:addon> </ns1:addons> <ns1:packages config:type="list"> <ns1:package>package-B</ns1:package> </ns1:packages> </ns1:software> </ns1:install> </ns1:profile> Calling it the (as I think) right way: idhpb02:/ # xsltproc --novalid --param replace "'false'" --param dontmerge "'package'" --param dontmerge2 "'addon'" --param with "'/ tmp/b.xml'" /usr/share/autoinstall/xslt/merge.xslt /tmp/a.xml <?xml version="1.0"?> <ns1:profile xmlns:ns1="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns" xmlns="http:// www.suse.com/1.0/yast2ns"> <ns1:install> <ns1:software> <ns1:addons config:type="list"> <ns1:addon>addon-A</ns1:addon><ns1:addon>addon-B</ns1:addon> </ns1:addons> <ns1:packages config:type="list"> <ns1:package>package-A</ns1:package><ns1:package>package-B</ ns1:package> </ns1:packages> </ns1:software> </ns1:install> </ns1:profile> Could this be fixed? Or is it already known and possibly a workaround in existance? Thanks in advance, -Luzian
Luzian, What effect is that causing? I just tried forever to get a SLES9 SP1 PXE AutoYAST to run and no matter what I've tried, it fails at processing the software collection with an error message indicating the base package could not be installed. Shannon Luzian Scherrer wrote:
Hello,
I think there is a typo in AutoInstallRules.ycp (version 1.34.4.9 that comes with SLES9 SP2): the xsltproc to merge classes is called with the following param there (line 733):
--param dontmerge \"'package, addon'\"
and I'm quite sure that it sould be:
--param dontmerge \"'package'\" --param dontmerge2 \"'addon'\"
The result of this typo is that neither <package> nor <addon> are correctly aggregated, which is the desired effect I believe and I also hope.
Quick demonstration:
idhpb02:/ # cat /tmp/a.xml <?xml version="1.0"?> <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <install> <software> <addons config:type="list"> <addon>addon-A</addon> </addons> <packages config:type="list"> <package>package-A</package> </packages> </software> </install> </profile> idhpb02:/ # cat /tmp/b.xml <?xml version="1.0"?> <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <install> <software> <addons config:type="list"> <addon>addon-B</addon> </addons> <packages config:type="list"> <package>package-B</package> </packages> </software> </install> </profile>
Calling it the wrong way:
idhpb02:/ # xsltproc --novalid --param replace "'false'" --param dontmerge "'package, addon'" --param with "'/tmp/b.xml'" /usr/share/autoinstall/xslt/merge.xslt /tmp/a.xml <?xml version="1.0"?> <ns1:profile xmlns:ns1="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns" xmlns="http://www.suse.com/1.0/yast2ns"> <ns1:install> <ns1:software> <ns1:addons config:type="list"> <ns1:addon>addon-B</ns1:addon> </ns1:addons> <ns1:packages config:type="list"> <ns1:package>package-B</ns1:package> </ns1:packages> </ns1:software> </ns1:install> </ns1:profile>
Calling it the (as I think) right way:
idhpb02:/ # xsltproc --novalid --param replace "'false'" --param dontmerge "'package'" --param dontmerge2 "'addon'" --param with "'/tmp/b.xml'" /usr/share/autoinstall/xslt/merge.xslt /tmp/a.xml <?xml version="1.0"?> <ns1:profile xmlns:ns1="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns" xmlns="http://www.suse.com/1.0/yast2ns"> <ns1:install> <ns1:software> <ns1:addons config:type="list"> <ns1:addon>addon-A</ns1:addon><ns1:addon>addon-B</ns1:addon> </ns1:addons> <ns1:packages config:type="list">
<ns1:package>package-A</ns1:package><ns1:package>package-B</ns1:package> </ns1:packages> </ns1:software> </ns1:install> </ns1:profile>
Could this be fixed? Or is it already known and possibly a workaround in existance?
Thanks in advance, -Luzian
--To unsubscribe, e-mail: suse-autoinstall-unsubscribe@suse.com For additional commands, e-mail: suse-autoinstall-help@suse.com
On 02.12.2005, at 22:19, Shannon L. McMackin wrote:
What effect is that causing?
I just tried forever to get a SLES9 SP1 PXE AutoYAST to run and no matter what I've tried, it fails at processing the software collection with an error message indicating the base package could not be installed.
You seem to have a problem different from the one I described. The effect that the merge-problem is causing is just relevant when you are trying to aggregate the software-section of two control-files (see the demonstration that I've posted). -Luzian
Luzian, This was my 1st attempt at doing AutoYAST. I'm not very familiar with content and function in the .xml file. Most of my time was previously spent with kickstart, but more of my customers are starting to use SLES vs Red Hat, so I need to learn some things. Shannon Luzian Scherrer wrote:
On 02.12.2005, at 22:19, Shannon L. McMackin wrote:
What effect is that causing?
I just tried forever to get a SLES9 SP1 PXE AutoYAST to run and no matter what I've tried, it fails at processing the software collection with an error message indicating the base package could not be installed.
You seem to have a problem different from the one I described. The effect that the merge-problem is causing is just relevant when you are trying to aggregate the software-section of two control-files (see the demonstration that I've posted).
-Luzian
--To unsubscribe, e-mail: suse-autoinstall-unsubscribe@suse.com For additional commands, e-mail: suse-autoinstall-help@suse.com
On Friday 02 December 2005 21:52, Luzian Scherrer wrote:
I think there is a typo in AutoInstallRules.ycp (version 1.34.4.9 that comes with SLES9 SP2): the xsltproc to merge classes is called with the following param there (line 733):
--param dontmerge \"'package, addon'\"
and I'm quite sure that it sould be:
--param dontmerge \"'package'\" --param dontmerge2 \"'addon'\"
yes I know. I already fixed that but thanks for the report. I've added some more sections to that dontmerge list by the way, where I thought it makes sense. -- ciao, Uwe Gansert Uwe Gansert, Server Technologies Team SUSE LINUX Products GmbH, Maxfeldstrasse 5, D-90409 Nuernberg, Germany e-mail: uwe.gansert@suse.de, Tel: +49-(0)911-74053-0, Fax: +49-(0)911-74053-476, Web: http://www.suse.de
Uwe Gansert wrote:
On Friday 02 December 2005 21:52, Luzian Scherrer wrote:
I think there is a typo in AutoInstallRules.ycp (version 1.34.4.9 that comes with SLES9 SP2): the xsltproc to merge classes is called with the following param there (line 733):
--param dontmerge \"'package, addon'\"
and I'm quite sure that it sould be:
--param dontmerge \"'package'\" --param dontmerge2 \"'addon'\"
yes I know. I already fixed that but thanks for the report. I've added some more sections to that dontmerge list by the way, where I thought it makes sense.
I hope "script" is one of them - they cause trouble here... Bye, Marcel -- ---- Dipl.-Inf. Marcel Ritter Linux/Novell Regionales Rechenzentrum Erlangen Tel: 09131 / 85-29958 E-Mail: Marcel.Ritter@rrze.uni-erlangen.de ---- Unix _IS_ user friendly... It's just selective about who its friends are.
On Thursday 16 March 2006 17:50, Marcel Ritter wrote:
I've added some more sections to that dontmerge list by the way, where I thought it makes sense.
I hope "script" is one of them - they cause trouble here...
yes, it is: http://www.suse.de/~ug/autoyast_changes.html -- ciao, Uwe Gansert Uwe Gansert, Server Technologies Team SUSE LINUX Products GmbH, Maxfeldstrasse 5, D-90409 Nuernberg, Germany e-mail: uwe.gansert@suse.de, Tel: +49-(0)911-74053-0, Fax: +49-(0)911-74053-476, Web: http://www.suse.de
participants (4)
-
Luzian Scherrer
-
Marcel Ritter
-
Shannon L. McMackin
-
Uwe Gansert