Skip to content

EtneteraLogicworks/ansible-munkireport

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Role munkireport

Role pro nasazení webové aplikace MunkiReport. Pro nasazení nové verze je nutné nastavit proměnnou update na true například na příkazové řádce: -e update=true.

Předpoklady:

  • Připravený webový prostor
  • Připravená MariaDB/MySQL databáze
  • composer nainstalovaný v /usr/local/bin

Všechny tyto požadavky řeší role webhosting.

Proměnné

Parametry role jsou definovány ve slovníku munkireport. Tato proměnná má následující položky:

Proměnná Povinná Výchozí Popis
repo ne https://github.com/munkireport/munkireport-php.git git repozitář s MunkiReport projektem
version ne master verze aplikace instalované skrz git
user ne www-data Uživatel vlastnící soubory webu
group ne www-data Skupina vlastníka souborů webu
webroot ano Cesta k webroot adresáři, kde je web umístěn
site ne Slovník s konfigurací webových aspektů aplikace
.name ne MunkiReport Jméno webové aplikace (viz. SITENAME)
customers ne Pole slovníků s informacemi o Munki zákaznících. Typicky se chceme odkázat na datovou strukturu sdílenou s rolí munki
.munkireport ne Slovník s informacemi pro munkireport.
..business_unit ne Jméno MunkiReport BU
..groups ne Pole slovníků s informacemi o MunkiReport skupinách daného zákazníka.
...name ne Jméno skupiny.
...uuid ne UUID skupiny. Používá se jako shared secret pro autorizaci klientů
auth ne Slovník pro konfiguraci uživatelů a autentizace
.local_users ne Pole slovníků pro konfiguraci lokálních uživatelů
..name ano Jméno lokálního uživatele
..password_hash ano Hash uživatele. Možno vygenerovat na URL /index.php?/auth/generate
.admin_users ne Pole uživatelů s rolí admin (viz. ROLES_ADMIN)
.methods ne Pole povolených autentizačních mehod (viz. AUTH_METHODS)
.ad ne Slovník pro konfiguraci ActiveDirectory/LDAP autentizace
..enabled ne Zapnutí konfigurace ActiveDirectory/LDAP autentizace
..hosts ano Čárkou oddělený seznam AD/LDAP serverů
..port ne 389 TCP port AD/LDAP serveru
..tls ne true Zapne TLS pro spojení s AD/LDAP serverem
..base_dn ano Báze vyhledávání
..schema ne Active Directory Typ schéma. (viz. AUTH_AD_SCHEMA)
..account_prefix ano Část DN před jménem uživatele
..account_suffix ano Část DN za jménem uživatele
..username ano Jméno servisního AD/LDAP uživatele
..password ano Heslo servisního AD/LDAP uživatele
..allowed_users ano Seznam uživatelů, který bude povolena ActiveDirectory/LDAP autentizace
database ano Slovník pro konfiguraci přístupu do databáze
.driver ne mysql Typ databáze
.host ne 127.0.0.1 Adresa nebo doménové jméno databázového serveru
.port ne 3306 TCP port databázového serveru
.name ano Jméno databáze
.user ano Databázový uživatel
.password ano Heslo databázového uživatele
.engine ne InnoDB MySQL table engine
.dump_path ne /var/backups/munkireport_preupgrade.sql Cesta k souboru zálohy prováděné před upgrade schéma databáze
http_proxy ne Slovník pro konfiguraci HTTP proxy
.server ne Adresa HTTP proxy serveru
.port ne TCP port HTTP proxy serveru
apps_to_track ne Seznam sledovaných aplikací (viz. APPS_TO_TRACK)
modules ano Slovník s nastavením MunkiReport modulů
.enabled ano Seznam zapnutých MunkiReport modulů
.extra ne Slovník pro konfigurace extra MunkiReport modulů pro composer
..name ano Název extra modulu
..vendor ano Vývojář extra modulu
..requirement ano Composer požadavek na verzi modulu
.hide_inactive ne false Skrytí neaktivních modulů z web UI (viz. HIDE_INACTIVE_MODULES)
.raw_config ne RAW MunkiReport konfigurace modulů
.search_paths ne Cesta pro vyhledávání MunkiReport extra modulů (viz. MODULE_SEARCH_PATHS)

Příklad konfigurace

munki_customers
  - name: 'customer_xyz'
      password: '{{ munki_customer_xyz_password }}'
      munkireport:
        business_unit: 'Customer XYZ'
        groups:
          - name: 'customer_xyz_corporate'
            uuid: '{{ munki_customer_xyz_corporate_uuid }}'
  ...

munkireport:
  user: 'w_testreport'
  group: 'w_testreport'
  webroot: '/srv/www/sites/c_lws/w_testreport/www'
  customers: '{{ munki_customers }}'
  site:
    name: 'MunkiReport Beta'
  auth:
    local_users:
      - name: 'admin'
        password_hash: '{{ munkireport_password_hash_admin }}'
    admin_users:
      - 'mradmin'
      - 'ad.user'
    methods:
      - 'LOCAL'
      - 'AD'
    ad:
      enabled: true
      hosts: 'ldap.logicworks.cz'
      base_dn: 'o=logicworks,dc=logicworks,dc=cz'
      schema: 'OpenLDAP'
      account_prefix: 'uid='
      account_suffix: ',ou=people,o=logicworks,dc=logicworks,dc=cz'
      username: 'cn=readuser,dc=logicworks,dc=cz'
      password: '{{ munkireport_ldap_password }}'
      allowed_users:
        - 'ad.user'
  database:
    engine: 'InnoDB ROW_FORMAT=DYNAMIC'
    name: 'w_testreport'
    user: 'w_testreport'
    password: '{{ munkireport_db_password }}'
  http_proxy:
    server: '192.168.0.1'
    port: '3128'
  apps_to_track:
    - 'Safari'
    - 'Skype'
    - 'VLC'
  modules:
    enabled:
      - 'applications'
      - 'ard'
      - 'bluetooth'
      ...
    extra:
      - name: 'teamviewer'
        vendor: 'tuxudo'
        requirement: '>=1.1'
    hide_inactive: true
    raw_config: |
      DISK_REPORT_THRESHOLD_DANGER=10
      DISK_REPORT_THRESHOLD_WARNING=20
    search_paths:
      - '/srv/www/sites/c_lws/w_testreport/www/vendor/tuxudo'

About

Logicworks MunkiReport Ansible role

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages