/glpi-agent

GLPI Agent

Primary LanguagePerlGNU General Public License v2.0GPL-2.0

GLPI Agent GLPI Agent

GLPI Agent CI GLPI Agent Packaging Github All Releases Twitter Follow

Summary

The GLPI Agent is a generic management agent. It can perform a certain number of tasks, according to its own execution plan, or on behalf of a GLPI server acting as a control point.

Description

This agent is based on a fork of FusionInventory agent and so works mainly like FusionInventory agent. It introduces new features and a new protocol to communicate directly with a GLPI server and its native inventory feature. Anyway it also keeps the compatibility with FusionInventory for GLPI plugin.

Download

Documentation

The GLPI Agent has its dedicated documentation project where any contribution will also be appreciated.

The documentation itself is readable online.

Documentation Status

Dependencies

Core

Minimum perl version: 5.8

Mandatory Perl modules:

  • File::Which
  • LWP::UserAgent
  • Net::IP
  • Text::Template
  • UNIVERSAL::require
  • XML::LibXML
  • Cpanel::JSON::XS

Optional Perl modules:

  • Compress::Zlib, for message compression
  • HTTP::Daemon, for web interface
  • IO::Socket::SSL, for HTTPS support
  • LWP::Protocol::https, for HTTPS support
  • Proc::Daemon, for daemon mode (Unix only)
  • Proc::PID::File, for daemon mode (Unix only)

Inventory task

Optional Perl modules:

  • Net::CUPS, for printers detection
  • Parse::EDID, for EDID data parsing
  • DateTime, for reliable timezone name extraction

Optional programs:

  • dmidecode, for DMI data retrieval
  • lspci, for PCI bus scanning
  • hdparm, for additional disk drive info retrieval
  • monitor-get-edid-using-vbe, monitor-get-edid or get-edid, for EDID data access
  • ssh-keyscan, for host SSH public key retrieval

Network discovery tasks

Mandatory Perl modules:

  • Thread::Queue

Optional Perl modules:

  • Net::NBName, for NetBios method support
  • Net::SNMP, for SNMP method support

Optional programs:

  • arp, for arp table lookup method support

Network inventory tasks

Mandatory Perl modules:

  • Net::SNMP
  • Thread::Queue

Optional Perl modules:

  • Crypt::DES, for SNMPv3 support

Wake on LAN task

Optional Perl modules:

  • Net::Write::Layer2, for ethernet method support

Deploy task

Mandatory Perl modules:

  • Archive::Extract
  • Digest::SHA
  • File::Copy::Recursive
  • Cpanel::JSON::XS
  • URI::Escape

Mandatory Perl modules for P2P Support:

  • Net::Ping
  • Parallel::ForkManager

MSI Packaging

Tools:

Mandatory Perl modules:

  • Perl::Dist::Strawberry

MacOSX Packaging

Tools:

Public databases

Related contribs

See CONTRIB to find references to GLPI Agent related scritps/files

Contacts

Project websites:

Project Telegram channel:

Please report any issues on project github issue tracker.

Active authors

Copyright 2006-2010 OCS Inventory contributors

Copyright 2010-2019 FusionInventory Team

Copyright 2011-2021 Teclib Editions

License

License: GPL v2

This software is licensed under the terms of GPLv2+, see LICENSE file for details.

Additional pieces of software

The glpi-injector script is based on fusioninventory-injector script:

  • author: Pascal Danek
  • copyright: 2005 Pascal Danek

GLPI::Agent::Task::Inventory::Vmsystem contains code from imvirt:

ToolBox HTTP daemon plugin uses flatpickr lightweight and powerful datetime picker js library.