Zum Hauptinhalt springen

Angepasste Statusmeldungen zu Installationsskripts hinzufügen

Die empfohlenen vordefinierten Makros in der Unattend-Datei melden den Implementierungsstatus des finalen BS sowie den Status während des Herunterladens und Ausführens von Nach-Installationsskripts. Sie können zusätzliche Statusmeldungen zu Nacht-Installationsskripts hinzufügen.

Linux

Für Linux können Sie den folgenden curl-Befehl für die Statusmeldung hinzufügen.
curl -X PUT -globoff #predefined.otherSettings.statusSettings.urlStatus#
-H "Content-Type: application/json" -d '{"deployStatus":{"id":"<status_ID>"}}'
-cert #predefined.otherSettings.statusSettings.certLocation#/cert.pem
-key #predefined.otherSettings.statusSettings.certLocation#/key.pem
-cacert #predefined.otherSettings.statusSettings.certLocation#/ca-bundle.crt

Dabei kann <status_ID> einer der folgenden Werte sein.

  • 44. Workload-Implementierung war erfolgreich

  • 45. Workload-Implementierung wird mit Warnung ausgeführt

  • 46. Workload-Implementierung ist fehlgeschlagen

  • 47. Workload-Implementierungsnachricht

  • 48. Fehler bei angepasstem Nach-Installationsskript

Beachten Sie, dass der curl-Befehl vordefinierte Makros für die HTTPS-URL verwendet, die Lenovo XClarity Administrator für Statusmeldungen (predefined.otherSettings.statusSettings.urlStatus) und für den Ordner verwendet, der die Zertifikate enthält, die erforderlich sind, um vom Host-BS beim ersten Booten auf den Webdienst urlStatus (predefined.otherSettings.statusSettings.certLocation) zugreifen zu können. Im folgenden Beispiel wird gemeldet, dass im Nach-Installationsskript ein Fehler aufgetreten ist.

Im folgenden Beispiel wird gemeldet, dass im Nach-Installationsskript ein Fehler aufgetreten ist.
curl -X PUT -globoff #predefined.otherSettings.statusSettings.urlStatus#
-H "Content-Type: application/json" -d '{"deployStatus":{"id":"48"}}'
-cert #predefined.otherSettings.statusSettings.certLocation#/cert.pem
-key #predefined.otherSettings.statusSettings.certLocation#/key.pem
-cacert #predefined.otherSettings.statusSettings.certLocation#/ca-bundle.crt

Windows

Bei Windows können Sie das LXCA.psm1-Skript importieren und anschließend die folgenden Befehle zur Statusmeldung ausführen.

  • initializeRestClient

    Initialisiert den REST-Client. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen. Dieser Befehl ist vor dem Ausführen der Meldungsbefehle erforderlich.

    initializeRestClient
  • testLXCAConnection

    Stellt sicher, dass sich XClarity Administrator mit dem Hostserver verbinden kann. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen. Dieser Befehl ist optional, wird aber beim Installationsskript vor dem Ausführen der Meldungsbefehle empfohlen.

    testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"
  • reportWorkloadDeploymentSucceeded

    Gibt eine Meldung über den erfolgreichen Abschluss aus, die im Jobprotokoll von XClarity Administrator gespeichert wird. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen.

    Tipp
    Wenn das Makro #predefined.unattendSettings.reportWorkloadNotComplete# in einer angepassten Unatted-Datei oder einem Nach-Installationsskript enthalten ist, fügen Sie den Befehl reportWorkloadDeploymentSucceeded zum Nach-Installationsskript hinzu, um einen erfolgreichen Abschluss zu melden. Andernfalls meldet XClarity Administrator automatisch einen Abgeschlossen-Status, nachdem alle Nach-Installationsskripts ausgeführt wurden.
    reportWorkloadDeploymentSucceeded -masterIP "#predefined.otherSettings.lxcaIp#" 
    -UUID "#predefined.hostPlatforms.uuid#"
  • reportWorkloadDeploymentRunningWithWarning

    Gibt eine Warnmeldung aus, die im Jobprotokoll von XClarity Administrator gespeichert wird. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen.

    reportWorkloadDeploymentRunningWithWarning -masterIP "#predefined.otherSettings.lxcaIp#" 
    -UUID "#predefined.hostPlatforms.uuid#" –WarningMessage "<message_text>"
  • reportWorkloadDeploymentFailed

    Gibt eine Fehlermeldung aus, die im Jobprotokoll von XClarity Administrator gespeichert wird. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen.

    reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#" 
    -UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "<message_text>"
  • reportCustomPostInstallScriptError

    Gibt eine Fehlermeldung für das Nach-Installationsskript aus, die im Jobprotokoll von XClarity Administrator gespeichert wird. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen.

    reportCustomPostInstallScriptError -masterIP "#predefined.otherSettings.lxcaIp#" 
    -UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"
  • reportWorkloadDeploymentMessage

    Gibt eine allgemeine Meldung aus, die im Jobprotokoll von XClarity Administrator gespeichert wird, ohne den Status der Implementierung zu beeinflussen. Verwenden Sie die folgende Syntax, um diesen Befehl auszuführen.

    reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#" 
    -UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"

Dabei ist <message_text> die Nachricht, die an XClarity Administrator für jede Statusbedingung zurückgegeben werden soll.

Beachten Sie, dass diese Befehle vordefinierte Makros für die IP-Adresse der XClarity Administrator-Instanz (#predefined.otherSettings.lxcaIp#) und für die UUID des Hostservers verwenden, auf dem das Betriebssystem implementiert werden soll (# predefined.hostPlatforms.uuid#).

Im folgenden Beispiel wird ein PowerShell-Installationsskript gezeigt, das Java installiert und bei Fehlschlagen der Installation einen Fehler meldet

import-module C:\windows\system32\WindowsPowerShell\v1.0\Modules\LXCA\LXCA.psm1

initializeRestClient

testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"

Write-Output "Reporting status to Lenovo XClarity Administator..."
reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "Installing Java"

Write-Output "Install Java...."
Invoke-Command -ScriptBlock {#predefined.otherSettings.deployDataAndSoftwareLocation#\jre-8u151-windows-x64.exe
[INSTALLCFG=#predefined.otherSettings.deployDataAndSoftwareLocation#\java_configfile.cfg] /s}

if ($LastExitCode -ne 0) {
reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "Java could not be installed"
}

Write-Output "Completed install of Java for Administrator user."