supertarto.glpi

Ansible GLPI

CI

Un rôle Ansible pour installer et configurer GLPI. Vous devez avoir un serveur web, PHP et MariaDB sur votre serveur. Ce rôle est testé uniquement avec Apache.

Exigences

Les prérequis recommandés dans la documentation officielle de GLPI sont :

  • Un serveur web (Apache, Nginx, IIS, etc.)
  • MariaDB >= 10.0 ou MySQL >= 5.6
  • PHP 7.2 ou supérieur
  • Extensions PHP (obligatoires) :
    • ctype
    • curl
    • gd (génération d'images)
    • iconv
    • intl
    • json
    • mbstring
    • mysqli
    • session
    • simplexml
    • zlib
  • Extensions PHP (optionnelles) :
    • exif (amélioration de la sécurité pour la validation des images)
    • imap (collecte de mails et authentification des utilisateurs)
    • ldap (authentification des utilisateurs)
    • openssl (communication chiffrée)
    • sodium (amélioration des performances pour le chiffrement/déchiffrement des données sensibles)
    • zip et bz2 (installation des paquets zip et bz2 à partir du marketplace)

Vous pouvez utiliser supertarto.apache, supertarto.mariadb et supertarto.php pour les installer à l'avance avec Ansible.

Plateformes testées

  • Debian 10 (Buster)
  • Debian 11 (Bullseye)
  • Debian 12 (Bookworm)

Variables de rôle

La version de GLPI et le nom du paquet.

glpi_version: 10.0.16
glpi_version_package: glpi-10.0.16.tgz

Définissez sur "true" si vous souhaitez effectuer l'installation finale automatiquement. Cela configure la base de données pour la première fois. Sinon, vous devrez le terminer avec votre navigateur web. Ne l'utilisez pas lorsque vous mettez à jour et que votre base de données est déjà configurée. La tâche échouera, car elle n'est pas conçue pour une mise à jour.

glpi_auto_install: false

Définissez glpi_update sur "true" si vous souhaitez forcer une réinstallation. L'URL utilise la version GLPI et le nom du paquet.

glpi_update: false
glpi_download_url: "https://github.com/glpi-project/glpi/releases/download/{{ glpi_version }}/{{ glpi_version_package }}"

Propriétaire web GLPI, groupe et chemin d'installation.

glpi_web_owner: "www-data"
glpi_web_group: "www-data"
glpi_install_path: /var/www

Informations sur la base de données GLPI.

glpi_db_host: "localhost"
glpi_db_port: "3306"
glpi_db_name: "glpi"
glpi_db_user: "glpi"
glpi_db_password: "changeit!"

Exemples

- hosts: all
  roles:
    - role: supertarto.apache
    - role: supertarto.mariadb
    - role: supertarto.php
    - role: supertarto.glpi
  vars:
    php_packages:
      - php8.2
      - php8.2-gd
      - php8.2-mysql
      - php8.2-curl
      - php8.2-imap
      - php8.2-json
      - php8.2-ldap
      - php8.2-mbstring
      - php8.2-xml
      - php8.2-cli
      - php8.2-xmlrpc
      - php8.2-intl
      - php-apcu
      - php-cas
      - php8.2-zip
      - php8.2-bz2
    glpi_db_host: "localhost"
    glpi_db_port: "3306"
    glpi_db_name: "glpi"
    glpi_db_user: "glpi"
    glpi_db_password: "changeit!"
    apache_create_vhosts: true
    apache_vhosts_filename: "glpi.conf"
    apache_vhost_config:
      - listen_ip: "*"
        listen_port: 80
        server_name: host1
        documentroot: "/var/www/glpi"
        serveradmin: admin@localhost
        custom_param: |
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined
          LogLevel warn
        directory:
          - path: "/var/www/glpi"
            config: |
              AllowOverride All
              Order deny,allow
              allow from all

    mariadb_use_dump_script: false
    mariadb_databases:
      - name: "{{ glpi_db_name }}"

    mariadb_users:
      - name: "{{ glpi_db_user }}"
        host: "{{ glpi_db_host }}"
        password: "{{ glpi_db_password }}"
        priv: "{{ glpi_db_name }}.*:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES"

Installation

ansible-galaxy role install supertarto.glpi

Licence

GPL V3.0

À propos du projet

Install and configure GLPI with Ansible

Installer
ansible-galaxy install supertarto.glpi
Licence
gpl-3.0
Téléchargements
324
Propriétaire