Opsi – Script de test local

Opsi

Opsi (Open PC Server Integration) est un outil de gestion de clients Windows basé sur un serveur Linux et sous licence AGPLv3 (hors code des modules cofinancés), version modifiée et orientée serveurs de la licence GPLv3. Son code source est la propriété de la société uib gmgh et son représentant en France/Belgique est la société Opensides.

uibopensides

Ses fonctionnalités principales sont :

  • Installation automatisée via PXE de systèmes d’exploitation clients Windows par le biais d’une image
  • Distribution automatique des logiciels via une connexion agent/serveur
  • Intégration automatique des drivers en se basant sur l’ID de ceux-ci
  • Inventaires matériels et logiciels
  • Dépôts logiciels multiples et décentralisés

 

Objectif

 
L’objectif de cet article est le test d’un script Opsi Winst en local sur un client avant création d’un nouveau produit sur le serveur et en vue d’un déploiement ultérieur sur un parc informatique.
 

Réalisation

 
Sur un client de test, même si l’agent Opsi n’est pas installé, il est possible de vérifier qu’un script est fonctionnel grâce à l’exécutable winst32.exe. Pour les tests qui suivent, une fois l’exécutable récupéré, le serveur Opsi n’est pas utilisé ou requis.
Pour cela, récupérer sur le serveur Opsi le dossier suivant et le copier en local sur le poste client servant de test :

/var/lib/opsi/depot/opsi-winst/files/opsi-winst/

ou, en accédant au partage [opsi_depot] (RO) par son adresse UNC :

\\opsi.opensharing.priv\opsi_depot\opsi-winst\files\opsi-winst\

ou encore, si l’agent Opsi est déjà installé sur le client considéré :

C:\Program Files\opsi.org\opsi-client-agent\opsi-winst\

Ce dossier contient notamment winst32.exe mais l’ensemble des fichiers sont nécessaires.
 
Il faut ensuite créer un dossier en local où sera stocké le script à évaluer, par exemple C:\test\ hébergeant le script setup32.ins
Lancer le programme winst32.exe et renseigner la localisation du script à tester avec “Choisir Script”.


Puis “Démarrer” pour tester le script.


Il suffit ensuite d’analyser les logs affichés pour corriger d’éventuelles anomalies.
Il est également possible d’afficher le retour de l’interface avec le bouton “Afficher l’interface”.

Exemple de script minimal permettant de tester un script d’installation setup32.ins en local :

[Actions]

DefVar $LogDir$
DefVar $ProductId$
DefVar $InstallDir$
DefVar $ExitCode$

Set $LogDir$          = "%opsiLogDir%"
Set $ProductId$       = "produit-test"
Set $InstallDir$      = "%ProgramFiles32Dir%\"

	comment "Show product picture"
	ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$

	Message "Installing " + $ProductId$ + " ..."
	
	comment "Start setup program"
	ChangeDirectory "%SCRIPTPATH%"
	Winbatch_install
	Sub_check_exitcode

	comment "Windows commands with command prompt window"
	DOSBatch_1 winst /32Bit
	Sub_check_exitcode	

	comment "Windows commands without command prompt window"
	DOSInAnIcon_1 winst /32Bit
	Sub_check_exitcode

	comment "Copy files"
	Files_install /32Bit
	
	comment "Patch Registry"
	Registry_install /32Bit
	
	comment "Create shortcuts"
	LinkFolder_install

[Winbatch_install]

[DOSBatch_1]

[DOSInAnIcon_1]

[Files_install]

[Registry_install]

[LinkFolder_install]


[Sub_check_exitcode]
comment "Test for installation success via exit code"
set $ExitCode$ = getLastExitCode

if ($ExitCode$ = "0")
	comment "Looks good: setup program gives exitcode zero"
else
	comment "Setup program gives a exitcode unequal zero: " + $ExitCode$
	logError "Fatal: Error code : " + $ExitCode$
	isFatalError
endif

 

Aller plus loin

 

Opsi – Installation du serveur Part1 Opsi – Installation du serveur Part2
Opsi – Creation d’une image Windows 7 Opsi – Installation d’un client Windows 7
Opsi – Creation d’une image Windows 10 Opsi – Installation d’un client Windows 10
Opsi – Creation d’une image Windows XP Opsi – Installation d’un client Windows XP
Opsi – Pour aller plus loin Opsi – Fonctionnement des scripts
Opsi – Exemples de scripts Opsi – Script de test local
Opsi – Scripts avancés Opsi – Création d’un produit
Opsi – Commandes utiles Opsi – Package activate-win Officiel
Opsi – Package windomain Officiel

 

Fermer le menu
%d blogueurs aiment cette page :