Ajout de rapport d'état personnalisé aux scripts d’installation
Les macros prédéfinies recommandées dans le fichier sans opérateur indiquent l'état de déploiement de système d'exploitation final et l'état lors du téléchargement et de l'exécution de scripts de post-installation. Vous pouvez inclure un rapport d'état personnalisé dans les scripts de post-installation.
Linux
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
Où <status_ID> peut être l'une des valeurs suivantes.
44. Le déploiement de la charge de travail a réussi
45. Le déploiement de la charge de travail s’exécute avec un avertissement
46. Le déploiement de la charge de travail a échoué
47. Message de déploiement de charge de travail
48. Erreur de script de post-installation personnalisé
Notez que la commande curl utilise des macros prédéfinies pour l'URL HTTPS utilisée par Lenovo XClarity Administrator pour la production de rapports d'état (predefined.otherSettings.statusSettings.urlStatus) et pour le dossier contenant les certificats qui sont nécessaires pour accéder au service Web urlStatus depuis le SE hôte au premier amorçage (predefined.otherSettings.statusSettings.certLocation). L'exemple suivant indique qu'une erreur s'est produite dans le script de post-installation.
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
Pour Windows, vous pouvez importer le script LXCA.psm1, puis appeler les commandes suivantes pour indiquer l'état.
initializeRestClient
Initialise le client REST. Utilisez la syntaxe suivante pour exécuter cette commande. Cette commande est requise avant l'exécution des commandes de génération de rapports.
initializeRestClient
testLXCAConnection
Vérifie que XClarity Administrator peut se connecter au serveur hôte. Utilisez la syntaxe suivante pour exécuter cette commande. Cette commande est facultative mais elle est recommandée dans le script d'installation avant l’exécution des commandes de génération de rapports.
testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"
reportWorkloadDeploymentSucceeded
Indique un message d'achèvement à consigner dans le journal des travaux de XClarity Administrator. Utilisez la syntaxe suivante pour exécuter cette commande.
ConseilSi la macro#predefined.unattendSettings.reportWorkloadNotComplete# est incluse dans un fichier sans opérateur personnalisé ou un script de post-installation, incluez la commande reportWorkloadDeploymentSucceeded dans le script de post-installation afin d'indiquer une opération réussie. Dans le cas contraire, XClarity Administrator indique automatiquement un état d'achèvement une fois tous les scripts de post-installation exécutés. reportWorkloadDeploymentSucceeded -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#"reportWorkloadDeploymentRunningWithWarning
Indique un message d'avertissement à consigner dans le journal des travaux de XClarity Administrator. Utilisez la syntaxe suivante pour exécuter cette commande.
reportWorkloadDeploymentRunningWithWarning -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" –WarningMessage "<message_text>"reportWorkloadDeploymentFailed
Indique un message d'échec à consigner dans le journal des travaux de XClarity Administrator. Utilisez la syntaxe suivante pour exécuter cette commande.
reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "<message_text>"reportCustomPostInstallScriptError
Indique un message d'erreur de script de post-installation à consigner dans le journal des travaux de XClarity Administrator. Utilisez la syntaxe suivante pour exécuter cette commande.
reportCustomPostInstallScriptError -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"reportWorkloadDeploymentMessage
Indique un message général à consigner dans le journal des travaux de XClarity Administrator sans que cela n'ait d'incidence sur l'état du déploiement. Utilisez la syntaxe suivante pour exécuter cette commande.
reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"
Où <message_text> est le message que vous souhaitez renvoyer à XClarity Administratorpour chaque condition d'état.
Notez que ces commandes utilisent des macros prédéfinies pour l’adresse IP de l'instance de XClarity Administrator (#predefined.otherSettings.lxcaIp#) et pour l'UUID du serveur hôte sur lequel le système d'exploitation doit être déployé (#predefined.hostPlatforms.uuid#).
L’exemple suivant est un script d'installation PowerShell qui installe Java et signale une erreur en cas d’échec de l’installation
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."