fusioninventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité glpi 0.78.x, gestion...
TRANSCRIPT
![Page 1: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/1.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
FusionInventory
Guillaume Rousse<[email protected]>
Journées francophones de Perl 2011
Guillaume Rousse FusionInventory
![Page 2: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/2.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Sommaire
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 3: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/3.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 4: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/4.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
GLPI
ObjectifsApplication web de gestion de parc
inventairehelpdesk
Détailsapplication PHPmodulaire
Guillaume Rousse FusionInventory
![Page 5: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/5.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
GLPI
ObjectifsApplication web de gestion de parc
inventairehelpdesk
Détailsapplication PHPmodulaire
Guillaume Rousse FusionInventory
![Page 6: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/6.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
OCS-NG
ObjectifsSolution autonome de gestion de parc
inventairedéploiement logiciel
Détails
Coté serveur :interface agent Perlinterface utilisateur PHP
Coté agent :
agent Windows C
agent Unix Perl
Guillaume Rousse FusionInventory
![Page 7: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/7.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
OCS-NG
ObjectifsSolution autonome de gestion de parc
inventairedéploiement logiciel
Détails
Coté serveur :interface agent Perlinterface utilisateur PHP
Coté agent :
agent Windows C
agent Unix Perl
Guillaume Rousse FusionInventory
![Page 8: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/8.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Tracker
ObjectifsInventaire automatisé pour GLPI de matériels sans agent
découverte matérielinterrogation distante
Détailsplugin GLPI PHPagent Perl
Guillaume Rousse FusionInventory
![Page 9: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/9.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Tracker
ObjectifsInventaire automatisé pour GLPI de matériels sans agent
découverte matérielinterrogation distante
Détailsplugin GLPI PHPagent Perl
Guillaume Rousse FusionInventory
![Page 10: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/10.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Avant-hier
Guillaume Rousse FusionInventory
![Page 11: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/11.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
FusionInventory
ObjectifsAgent multifonction pour GLPI
fusion de l’agent OCS Unix et de l’agent trackermodulaire
Détailsplugin GLPI PHPagent Perl multi-plateformes
Guillaume Rousse FusionInventory
![Page 12: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/12.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
FusionInventory
ObjectifsAgent multifonction pour GLPI
fusion de l’agent OCS Unix et de l’agent trackermodulaire
Détailsplugin GLPI PHPagent Perl multi-plateformes
Guillaume Rousse FusionInventory
![Page 13: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/13.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Hier
Guillaume Rousse FusionInventory
![Page 14: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/14.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Évolution du plugin GLPI
Branches2.2.xcompatibilité GLPI 0.72.x2.3.xcompatibilité GLPI 0.78.x, gestion des inventaires2.4.x (en beta)compatibilité GLPI 0.80.x
Guillaume Rousse FusionInventory
![Page 15: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/15.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Capture d’écran du plugin GLPI
Guillaume Rousse FusionInventory
![Page 16: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/16.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Aujourd’hui
Guillaume Rousse FusionInventory
![Page 17: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/17.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 18: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/18.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 19: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/19.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Modularité
Composantsmoteurtaches
Tachesinventaire localwake on landécouverte réseauinventaire distantdéploiement logiciel
Guillaume Rousse FusionInventory
![Page 20: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/20.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Modularité
Composantsmoteurtaches
Tachesinventaire localwake on landécouverte réseauinventaire distantdéploiement logiciel
Guillaume Rousse FusionInventory
![Page 21: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/21.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Versatilité
Mode d’exécutionprocessus temporaireprocessus résidant (daemon Unix, service Windows)
Mode de collecte du résultatstockage localenvoi au serveur
Guillaume Rousse FusionInventory
![Page 22: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/22.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Versatilité
Mode d’exécutionprocessus temporaireprocessus résidant (daemon Unix, service Windows)
Mode de collecte du résultatstockage localenvoi au serveur
Guillaume Rousse FusionInventory
![Page 23: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/23.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Portabilité
Cible des résultatsdistributionexécution
Exécution
WindowsLinuxMacOSBSD
Solaris
HPUX
AIX
Distribution
sourcespaquetages
installeur interactifarchive autonome
Guillaume Rousse FusionInventory
![Page 24: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/24.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Portabilité
Cible des résultatsdistributionexécution
Exécution
WindowsLinuxMacOSBSD
Solaris
HPUX
AIX
Distribution
sourcespaquetages
installeur interactifarchive autonome
Guillaume Rousse FusionInventory
![Page 25: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/25.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Portabilité
Cible des résultatsdistributionexécution
Exécution
WindowsLinuxMacOSBSD
Solaris
HPUX
AIX
Distribution
sourcespaquetages
installeur interactifarchive autonome
Guillaume Rousse FusionInventory
![Page 26: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/26.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Interopérabilité
Serveur OCScompatibilité : version serveur 1.xfonctionalités :
inventaire localdéploiement logiciel
Serveur GLPIversion serveur 0.72 :
découverte réseauinventaire distant
version serveur 0.78 : fonctionalités complètes
Guillaume Rousse FusionInventory
![Page 27: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/27.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Interopérabilité
Serveur OCScompatibilité : version serveur 1.xfonctionalités :
inventaire localdéploiement logiciel
Serveur GLPIversion serveur 0.72 :
découverte réseauinventaire distant
version serveur 0.78 : fonctionalités complètes
Guillaume Rousse FusionInventory
![Page 28: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/28.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 29: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/29.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire local
Composants matérielsCPU, mémoire, etc...bus USB, PCI, SCSIpériphériques connectés
Composants logiciels
système d’exploitationliste de paquetages
Configuration
paramètre réseauparamètre affichagevariables d’environnement
Guillaume Rousse FusionInventory
![Page 30: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/30.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire local
Composants matérielsCPU, mémoire, etc...bus USB, PCI, SCSIpériphériques connectés
Composants logiciels
système d’exploitationliste de paquetages
Configuration
paramètre réseauparamètre affichagevariables d’environnement
Guillaume Rousse FusionInventory
![Page 31: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/31.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire local
Composants matérielsCPU, mémoire, etc...bus USB, PCI, SCSIpériphériques connectés
Composants logiciels
système d’exploitationliste de paquetages
Configuration
paramètre réseauparamètre affichagevariables d’environnement
Guillaume Rousse FusionInventory
![Page 32: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/32.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Découverte réseau
Principebalayage d’une plage réseauidentification des éléments trouvés
BalayagenmapNetBIOSSNMP
IdentificationSNMPattribution d’un modèle descriptif
Guillaume Rousse FusionInventory
![Page 33: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/33.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Découverte réseau
Principebalayage d’une plage réseauidentification des éléments trouvés
BalayagenmapNetBIOSSNMP
IdentificationSNMPattribution d’un modèle descriptif
Guillaume Rousse FusionInventory
![Page 34: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/34.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Découverte réseau
Principebalayage d’une plage réseauidentification des éléments trouvés
BalayagenmapNetBIOSSNMP
IdentificationSNMPattribution d’un modèle descriptif
Guillaume Rousse FusionInventory
![Page 35: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/35.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire distant
PrincipeSNMPutilisation d’un modèle descriptif
Matériel réseauports utiliséséquipements branchés
Imprimantescompteurs d’impressionniveaux d’encre
Guillaume Rousse FusionInventory
![Page 36: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/36.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire distant
PrincipeSNMPutilisation d’un modèle descriptif
Matériel réseauports utiliséséquipements branchés
Imprimantescompteurs d’impressionniveaux d’encre
Guillaume Rousse FusionInventory
![Page 37: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/37.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Inventaire distant
PrincipeSNMPutilisation d’un modèle descriptif
Matériel réseauports utiliséséquipements branchés
Imprimantescompteurs d’impressionniveaux d’encre
Guillaume Rousse FusionInventory
![Page 38: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/38.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Déploiement logiciel
Principetéléchargement d’une charge utileexécution
Intérêttéléchargement pair à pairexécution immédiateutilisation des critères de sélection de GLPI
Guillaume Rousse FusionInventory
![Page 39: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/39.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Déploiement logiciel
Principetéléchargement d’une charge utileexécution
Intérêttéléchargement pair à pairexécution immédiateutilisation des critères de sélection de GLPI
Guillaume Rousse FusionInventory
![Page 40: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/40.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 41: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/41.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
CaractéristiquesCapacitésObjectifs
Versions
Branches2.0.x version initiale2.1.x branche stableajout du support Windows, nettoyage syntaxique2.2.x branche développementnettoyage architecture, maintien de la compatibilité OCS3.x branche expérimentalechangement architecture, abandon de la compatibilité OCS
Version stable2.1.9
Guillaume Rousse FusionInventory
![Page 42: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/42.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 43: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/43.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 44: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/44.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Support syslog
FusionInventory::LoggerBackend::Syslog
set logsock ( ’ un ix ’ ) ;openlog ( " fus ion inven to ry−agent " , ’ cons , p id ’ , $ENV{ ’USER ’ } ) ;sys log ( ’ debug ’ , ’ sys log backend enabled ’ ) ;c lose log ( ) ;
Guillaume Rousse FusionInventory
![Page 45: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/45.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Extraction des logiciels installés sous HPUX
FusionInventory::Agent::Task::Inventory::OS::HPUX::Software
@sof tL is t = ‘ s w l i s t | grep −v ’ ^ PH ’ | grep −v ’ ^# ’ | t r −s " \ t " " " | t r −s " " ‘
Guillaume Rousse FusionInventory
![Page 46: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/46.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Export de fonctions
FusionInventory::Agent::Task::Inventory
my $backendSharedFuncs = {can_run => sub {
. . .} ,
} ;
foreach my $package ( @packages ) {foreach my $func ( keys %{$backendSharedFuncs } ) {
$package−>{$func } = $backendSharedFuncs−>{$func } ;}
}
Guillaume Rousse FusionInventory
![Page 47: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/47.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Grand chantier
Nettoyage du codesyntaxestructurationarchitecture
Amélioration des performancesmémoisationindexation
Amélioration fonctionnellesinterface RESTremplacement de XML par JSONmodèle conceptuel homogène
Guillaume Rousse FusionInventory
![Page 48: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/48.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Grand chantier
Nettoyage du codesyntaxestructurationarchitecture
Amélioration des performancesmémoisationindexation
Amélioration fonctionnellesinterface RESTremplacement de XML par JSONmodèle conceptuel homogène
Guillaume Rousse FusionInventory
![Page 49: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/49.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Grand chantier
Nettoyage du codesyntaxestructurationarchitecture
Amélioration des performancesmémoisationindexation
Amélioration fonctionnellesinterface RESTremplacement de XML par JSONmodèle conceptuel homogène
Guillaume Rousse FusionInventory
![Page 50: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/50.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Avancement
1 Solutions de gestion de parc informatique
2 Présentation de l’agentCaractéristiquesCapacitésObjectifs
3 Implémentation de l’agentUn lourd héritageStratégie de test
Guillaume Rousse FusionInventory
![Page 51: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/51.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Suite de tests
État actuel1330 tests, 76 fichierscouverture très hétérogène
Problèmestester des interactions client-serveurtester l’analyse du résultat d’une commandetester la réponse à un environnement
Guillaume Rousse FusionInventory
![Page 52: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/52.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Suite de tests
État actuel1330 tests, 76 fichierscouverture très hétérogène
Problèmestester des interactions client-serveurtester l’analyse du résultat d’une commandetester la réponse à un environnement
Guillaume Rousse FusionInventory
![Page 53: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/53.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester des interactions client-serveur
Serveur de testTest::Apache2 :(Net::Server::HTTP :(HTTP::Server::Simple :)
Fonctionnalité additionellesHTTP::Server::Simple::AuthenIO::Socket::SSLHTTP::Proxy
Utilisation de véritable serveurserveur public ou privétest obligatoire ou conditionel
Guillaume Rousse FusionInventory
![Page 54: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/54.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester des interactions client-serveur
Serveur de testTest::Apache2 :(Net::Server::HTTP :(HTTP::Server::Simple :)
Fonctionnalité additionellesHTTP::Server::Simple::AuthenIO::Socket::SSLHTTP::Proxy
Utilisation de véritable serveurserveur public ou privétest obligatoire ou conditionel
Guillaume Rousse FusionInventory
![Page 55: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/55.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester des interactions client-serveur
Serveur de testTest::Apache2 :(Net::Server::HTTP :(HTTP::Server::Simple :)
Fonctionnalité additionellesHTTP::Server::Simple::AuthenIO::Socket::SSLHTTP::Proxy
Utilisation de véritable serveurserveur public ou privétest obligatoire ou conditionel
Guillaume Rousse FusionInventory
![Page 56: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/56.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester l’analyse du résultat d’une commande
Objectiftester le code qui analyse le résultat d’une commande
Code initial
my @output = ‘command ‘ ;foreach my $ l i n e ( @output ) {
i f ( $ l i n e =~ / ^ foo : ( . ∗ ) / ) {$ inventory−>addItem ( $1 ) ;
}}
Guillaume Rousse FusionInventory
![Page 57: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/57.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester l’analyse du résultat d’une commande
Objectiftester le code qui analyse le résultat d’une commande
Code initial
my @output = ‘command ‘ ;foreach my $ l i n e ( @output ) {
i f ( $ l i n e =~ / ^ foo : ( . ∗ ) / ) {$ inventory−>addItem ( $1 ) ;
}}
Guillaume Rousse FusionInventory
![Page 58: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/58.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Adapter le code au test
Code intermédiaire
$inventory−>addItems ( $_ ) foreach get I tems ( ) ;
sub get I tems {my @output = ‘command ‘ ;my @items ;foreach my $ l i n e ( @output ) {
push @items , $1 i f $ l i n e =~ / ^ foo : ( . ∗ ) / ;}return @items
}
Code final
$inventory−>addItems ( $_ ) foreach get I tems (command => ’command ’ ) ;
sub get I tems {my $handle = getF i leHandle (@_) ;while (my $ l i n e = <$handle >) {
push @items , $1 i f $ l i n e =~ / ^ foo : ( . ∗ ) / ;}close $handle ;return @items ;
}Guillaume Rousse FusionInventory
![Page 59: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/59.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Adapter le code au test
Code intermédiaire
$inventory−>addItems ( $_ ) foreach get I tems ( ) ;
sub get I tems {my @output = ‘command ‘ ;my @items ;foreach my $ l i n e ( @output ) {
push @items , $1 i f $ l i n e =~ / ^ foo : ( . ∗ ) / ;}return @items
}
Code final
$inventory−>addItems ( $_ ) foreach get I tems (command => ’command ’ ) ;
sub get I tems {my $handle = getF i leHandle (@_) ;while (my $ l i n e = <$handle >) {
push @items , $1 i f $ l i n e =~ / ^ foo : ( . ∗ ) / ;}close $handle ;return @items ;
}Guillaume Rousse FusionInventory
![Page 60: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/60.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Utiliser une couche d’abstraction
getFileHandle
sub getF i leHandle {my %params = @_;
my $handle ;
SWITCH: {i f ( $params { f i l e } ) {
i f ( ! open $handle , ’ < ’ , $params { f i l e } ) {$params { logger}−>e r r o r ( "Can ’ t open f i l e $params { f i l e } : $ERRNO" ) ;return ;
}l as t SWITCH;
}i f ( $params {command } ) {
i f ( ! open $handle , ’−| ’ , $params {command} . " 2 >/dev / n u l l " ) {$params { logger}−>e r r o r ( "Can ’ t run command $params {command } : $ERRNO" ) ;return ;
}l as t SWITCH;
}die " n e i t h e r command nor f i l e parameter given " ;
}
return $handle ;}
Guillaume Rousse FusionInventory
![Page 61: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/61.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Problème de disponibilité du résultat
Commandes et fichiers exotiqueslsvpd sur AIXmachinfo sur HPUX/proc/cpuinfo sur Linux Alpha
Campagnes de collecte d’échantillons
répertoire resourcesbesoin d’organisation (tri, tracabilité, ...)
Problème sous Windowsbase de registreWMI
Guillaume Rousse FusionInventory
![Page 62: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/62.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Problème de disponibilité du résultat
Commandes et fichiers exotiqueslsvpd sur AIXmachinfo sur HPUX/proc/cpuinfo sur Linux Alpha
Campagnes de collecte d’échantillons
répertoire resourcesbesoin d’organisation (tri, tracabilité, ...)
Problème sous Windowsbase de registreWMI
Guillaume Rousse FusionInventory
![Page 63: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/63.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Problème de disponibilité du résultat
Commandes et fichiers exotiqueslsvpd sur AIXmachinfo sur HPUX/proc/cpuinfo sur Linux Alpha
Campagnes de collecte d’échantillons
répertoire resourcesbesoin d’organisation (tri, tracabilité, ...)
Problème sous Windowsbase de registreWMI
Guillaume Rousse FusionInventory
![Page 64: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/64.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester la réponse à un environnement
Objectiftester le code qui sélectionne la commande à utiliser
Code initial
my @packages =−x ’ / b in / rpm ’ ? getRPMPackagesList (command => ’ rpm −qa ’ ) :−x ’ / b in / dpkg ’ ? getDPKGPackagesList (command => ’ dpkg − l ’ ) :−x ’ / b in / equery ’ ? getEqueryPackagesList (command => ’ equery l i s t − i ’ ) :
( ) ;}
Guillaume Rousse FusionInventory
![Page 65: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/65.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Tester la réponse à un environnement
Objectiftester le code qui sélectionne la commande à utiliser
Code initial
my @packages =−x ’ / b in / rpm ’ ? getRPMPackagesList (command => ’ rpm −qa ’ ) :−x ’ / b in / dpkg ’ ? getDPKGPackagesList (command => ’ dpkg − l ’ ) :−x ’ / b in / equery ’ ? getEqueryPackagesList (command => ’ equery l i s t − i ’ ) :
( ) ;}
Guillaume Rousse FusionInventory
![Page 66: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/66.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Adapter son code
Code final
my @packages =canRun ( ’ / b in / rpm ’ ) ? getRPMPackagesList (command => ’ rpm −qa ’ ) :canRun ( ’ / b in / dpkg ’ ) ? getDPKGPackagesList (command => ’ dpkg − l ’ ) :canRun ( ’ / b in / equery ’ ) ? getEqueryPackagesList (command => ’ equery l i s t − i ’ ) :
( ) ;}
Guillaume Rousse FusionInventory
![Page 67: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/67.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Utiliser une couche d’abstraction
canRun
sub canRun {my ( $wanted ) = @_;
return −x $wanted ;}
Guillaume Rousse FusionInventory
![Page 68: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/68.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Redéfinir des fonctions
mockGetRun
sub mockCanRun {my (%params ) = @_;
my $new = sub {my $wanted = $_ [ 0 ] ;return $params {commands}−>{$wanted } ;
} ;
no warnings ’ rede f i ne ’ ;∗Fus ionInventory : : Agent : : Tools : : canRun = $new ;
}
Guillaume Rousse FusionInventory
![Page 69: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/69.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Redéfinir des fonctions
mockGetFileHandle
sub mockGetFileHandle {my (%params ) = @_;
my $old = \& Fus ionInventory : : Agent : : Tools : : ge tF i leHandle ;
my $new = sub {my (%opt ions ) = @_;
my $ f i l e = $params {commands}−>{$wanted } ;
i f ( $ f i l e ) {pr in t STDERR " f i l e ’ $ f i l e ’ de l i ve red \ n " ;return $old−>(@_, f i l e => $ f i l e ) ;
} else {pr in t STDERR " noth ing de l i ve red \ n " ;return ;
}} ;
no warnings ’ rede f i ne ’ ;∗Fus ionInventory : : Agent : : Tools : : ge tF i leHandle = $new ;
}
Guillaume Rousse FusionInventory
![Page 70: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/70.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Simuler un environnement
Code
package Fus ionInventory : : Test : : MockSystem : : Debian ;
use Fus ionInventory : : Test : : MockSystem ;
mockSystem (commands => {
’ dpkg ’ => ’ resources / packaging / dpkg ’} ,f i l e s => {
’ / e tc / debian_vers ion ’ => ’ resources / re lease / debian ’}
) ;
Utilisation$> perl -MFusionInventory::Test::MockSystem::Debian \
fusioninventory
Guillaume Rousse FusionInventory
![Page 71: FusionInventory - zarb.orgguillomovitch/presentations/fpw2011.pdfcompatibilité GLPI 0.78.x, gestion des inventaires 2.4.x (en beta) compatibilité GLPI 0.80.x Guillaume Rousse FusionInventory](https://reader030.vdocuments.site/reader030/viewer/2022040408/5ebeffd176bbe623e76b9a20/html5/thumbnails/71.jpg)
Solutions de gestion de parc informatiquePrésentation de l’agent
Implémentation de l’agent
Un lourd héritageStratégie de test
Simuler un environnement
Code
package Fus ionInventory : : Test : : MockSystem : : Debian ;
use Fus ionInventory : : Test : : MockSystem ;
mockSystem (commands => {
’ dpkg ’ => ’ resources / packaging / dpkg ’} ,f i l e s => {
’ / e tc / debian_vers ion ’ => ’ resources / re lease / debian ’}
) ;
Utilisation$> perl -MFusionInventory::Test::MockSystem::Debian \
fusioninventory
Guillaume Rousse FusionInventory