Mailinglist Archive: opensuse-autoinstall (68 mails)
| < Previous | Next > |
RE: [opensuse-autoinstall] Verwendung eines bestimmten Profils + Nutzung der rules Funktion
- From: Hans-Joachim Ehlers <HansJoachim.Ehlers@xxxxxxxxxxxx>
- Date: Thu, 26 Mar 2009 10:38:06 +0100
- Message-id: <A3ADF8C56ADA0F45BC34F904A6514E28014EDEF4A555@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
...
Uwe's Autoyast Docu - http://www.suse.de/~ug/
Als erstes muss der autoyast Aufruf mit einem "/" enden, dann wird das rules
file abgearbeitet:
Bsp:
autoyast: http://10.0.0.2/export/suse/sl10.3/autoinstall/
Verzeichnisstruktur:
./autoinstall/rules
./autoinstall/classes
Rules:
Enthaelt ./rules/rules.xml
Classes:
Enthaelt alle Autoyast Dateien ( Allgemeingueltige und Maschinenspezifische )
Das folgende Beispiel merged 3 AutoYast Dateien:
Rule 1 sucht nach einer Datei mit dem Namen der Maschine ( pc2000.xml ) - hier
wird das Netzwerk konfiguriert
Rule 2 sucht nach einer Datei mit dem Namen autoinst.xml - Hier ist globale
Konfiguration
Rule 3 sucht nach einer Datei mit dem Namen script.xml - Hier werden schlicht
Schripte ausgefuehrt
Bsp:
<?xml version="1.0"?>
<!DOCTYPE autoinstall SYSTEM "/usr/share/autoinstall/dtd/rules.dtd">
<autoinstall xmlns="http://www.suse.com/1.0/yast2ns"
xmlns:config="http://www.suse.com/1.0/configns">
<!-- $Id: rules.xml.SL103,v 1.3 2008/02/25 14:36:00 hjehlers Exp $ -->
<rules config:type="list">
<rule>
<custom1>
<script>
<![CDATA[
#!/bin/sh
#Hostname must not be inclosed.
# pc2099 OK
# 'pc2099' NOT OK
eval hostname=$( cat /var/lib/dhcpcd/dhcpcd-*info | grep HOSTNAME | tail -1 |
cut -f2 -d"=" )
echo -n $hostname #
]]>
</script>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/@custom1@.xml</profile>
<continue config:type="boolean">true</continue>
</result>
</rule>
<rule>
<custom1>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/autoinst.xml</profile>
<continue config:type="boolean">true</continue>
</result>
</rule>
<rule>
<custom1>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/script.xml</profile>
<continue config:type="boolean">false</continue>
</result>
</rule>
</rules>
</autoinstall>
Wir setzen Autoyast für das Aufsetzen von Desktopsystemen und Servern
ein. Momentan übergeben wir direkt eine Autoyast Datei an den Suse
Installer, was allerdings den Nachteil hat, dass wir keine Rules
verwenden können.
Gibt es eine Möglichkeit ein gemeinsames Profilverzeichnis für alle
Profile zu haben, ein bestimmtes Profil bei der Installation zu
benutzen
und trotzdem die rules auswerten zu lassen?
Uwe's Autoyast Docu - http://www.suse.de/~ug/
Als erstes muss der autoyast Aufruf mit einem "/" enden, dann wird das rules
file abgearbeitet:
Bsp:
autoyast: http://10.0.0.2/export/suse/sl10.3/autoinstall/
Verzeichnisstruktur:
./autoinstall/rules
./autoinstall/classes
Rules:
Enthaelt ./rules/rules.xml
Classes:
Enthaelt alle Autoyast Dateien ( Allgemeingueltige und Maschinenspezifische )
Das folgende Beispiel merged 3 AutoYast Dateien:
Rule 1 sucht nach einer Datei mit dem Namen der Maschine ( pc2000.xml ) - hier
wird das Netzwerk konfiguriert
Rule 2 sucht nach einer Datei mit dem Namen autoinst.xml - Hier ist globale
Konfiguration
Rule 3 sucht nach einer Datei mit dem Namen script.xml - Hier werden schlicht
Schripte ausgefuehrt
Bsp:
<?xml version="1.0"?>
<!DOCTYPE autoinstall SYSTEM "/usr/share/autoinstall/dtd/rules.dtd">
<autoinstall xmlns="http://www.suse.com/1.0/yast2ns"
xmlns:config="http://www.suse.com/1.0/configns">
<!-- $Id: rules.xml.SL103,v 1.3 2008/02/25 14:36:00 hjehlers Exp $ -->
<rules config:type="list">
<rule>
<custom1>
<script>
<![CDATA[
#!/bin/sh
#Hostname must not be inclosed.
# pc2099 OK
# 'pc2099' NOT OK
eval hostname=$( cat /var/lib/dhcpcd/dhcpcd-*info | grep HOSTNAME | tail -1 |
cut -f2 -d"=" )
echo -n $hostname #
]]>
</script>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/@custom1@.xml</profile>
<continue config:type="boolean">true</continue>
</result>
</rule>
<rule>
<custom1>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/autoinst.xml</profile>
<continue config:type="boolean">true</continue>
</result>
</rule>
<rule>
<custom1>
<match>*</match>
<match_type>exact</match_type>
</custom1>
<result>
<profile>classes/script.xml</profile>
<continue config:type="boolean">false</continue>
</result>
</rule>
</rules>
</autoinstall>
| < Previous | Next > |