supertarto.glpi

Ansible GLPI

CI

Un rol de Ansible para instalar y configurar GLPI. Debes tener un servidor web, PHP y MariaDB en tu servidor. Este rol ha sido probado solo con Apache.

Requisitos

Los requisitos recomendados en la documentación oficial de GLPI son:

  • Un servidor web (Apache, Nginx, IIS, etc.)
  • MariaDB >= 10.0 o MySQL >= 5.6
  • PHP 7.2 o superior
  • Extensiones de PHP (obligatorias):
    • ctype
    • curl
    • gd (generación de imágenes)
    • iconv
    • intl
    • json
    • mbstring
    • mysqli
    • session
    • simplexml
    • zlib
  • Extensiones de PHP (opcional):
    • exif (mejora de seguridad en la validación de imágenes)
    • imap (colector de correo y autenticación de usuarios)
    • ldap (autenticación de usuarios)
    • openssl (comunicación encriptada)
    • sodium (mejora del rendimiento en la encriptación/desencriptación de datos sensibles)
    • zip y bz2 (instalación de paquetes zip y bz2 del mercado)

Puedes usar supertarto.apache, supertarto.mariadb y supertarto.php para instalar estos requisitos previamente con Ansible.

Plataformas probadas

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

Variables del rol

La versión de GLPI y el nombre del paquete.

glpi_version: 10.0.16
glpi_version_package: glpi-10.0.16.tgz

Configura en "true" si deseas realizar la instalación final automáticamente. Esto configura la base de datos por primera vez. De lo contrario, tendrás que terminarlo con tu navegador web. No lo uses cuando actualices y tu base de datos ya esté configurada. La tarea fallará, ya que no está diseñada para actualizaciones.

glpi_auto_install: false

Configura glpi_update en "true" si deseas forzar una reinstalación. La URL usa la versión de glpi y el nombre del paquete.

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

Propietario web de GLPI, grupo y ruta de instalación.

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

Información sobre la base de datos de GLPI.

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

Ejemplos

- 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"

Instalación

ansible-galaxy role install supertarto.glpi

Licencia

GPL V3.0

Acerca del proyecto

Install and configure GLPI with Ansible

Instalar
ansible-galaxy install supertarto.glpi
Licencia
gpl-3.0
Descargas
324
Propietario