## conf classes, servers
#
#--------------------------------------------------------------------------
## ---++ server classes
#--------------------------------------------------------------------------
##
## | server | macchina generica server, serve come base per sottoclassi specifiche; install alcune utilities comuni a tutti i server |
#
[class.server]
  modules	base-server base-extend net-utils mon-sys

#--------------------------------------------------------------------------
## ---++ subclasses (specialized classes)
#--------------------------------------------------------------------------
##
## Le subclasses sono specializzazazioni di una classe base, quindi ne
## ereditano automaticamente le impostazioni, aggiungendone di specifiche.
## Possono essere combinate anche con le classi funzionali.
##
## In genere le subclasses sono compatibili fra loro e possono essere
## combinate tra loro.
##
## Esempio di utilizzo di subclasses:
## {{{
##   class	server.nas server.db
## }}}


## | server.auth | authorization server, si occupa dell'autenticazione di utenti e macchine, quindi fornisce i servizi ldap, dhcp, dns |
#
[class.server.auth]
  +modules	srv-ldap srv-dhcp srv-dns \
  		mnt-ldap mnt-ldap-web

## | server.db_mysql | database server, mysql |
#
[class.server.db_mysql]
  +modules	srv-mysql mnt-mysql

## | server.db_pgsql | database server, postgres (pgsql) |
#
[class.server.db_pgsql]
  +modules	srv-pgsql mnt-pgsql

## | server.openerp | openerp server |
#
[class.server.openerp]
   +modules	srv-openerp srv-print

## | server.nas | files server, fornisce i servizi di accesso ai files nel senso piu` ampio del termine, quindi nfs, ftp; non contempla il modulo samba, oggetto di una classe a se` (per il momento) |
#
[class.server.nas]
  +modules	srv-nfs srv-ftp


#2023-07-27# deprecated
#
## | server.fs | alias di server.nas
#
[class.server.fs]
  modules	!!_DEPRECATED_USE_server.nas_INSTEAD_!!


## | server.samba | samba server, servizio di condivisione files ed autenticazione per client Windows (tm) |
#
[class.server.samba]
  +modules	srv-samba

## | server.web | web and webapps server; installa apache2 e tools relativi come perl, php, python, ecc.; il server apache2 viene installato con la gestione automatica dei virtual hosts; le applicazioni web-based sono a loro volta sottclassi di questa |
#
[class.server.web]
  +modules	srv-web srv-web-vhosts srv-web-linfo net-geoutils

## | server.web.wiki | web application: wiki (foswiki) |
#
[class.server.web.wiki]
  +modules	srv-foswiki

## | server.web.mail | web application: webmail (roundcubemail), add domain, you need server.mail too for local mailer |
#
[class.server.web.mail]
  +modules	srv-webmail

## | server.proxy | servizi di proxy (squid) e strumenti collegati |
#
[class.server.proxy]
  +modules	srv-proxy

## | server.mail | gestione account email (POP, IMAP); per webmail usare server.web.mail |
#
[class.server.mail]
  +modules	srv-mail

## | server.smtp | mail relay (SMTP), antivirus, antispam |
#
[class.server.smtp]
  <super>	class.server.mail

## | server.backup | backup server |
#
[class.server.backup]
  +modules	srv-backup \
  		::class.hwmonitor.modules::

## | server.amp | as LAMP, but w/out ldap |
#
[class.server.amp]
  <super>	class.server.web
  +modules	srv-ftp \
		::class.server.db_mysql.modules::

## | server.lamp | riproduzione del classico server LAMP (LDAP, Apache, MySql, Postfix); unisce l'intero server.web e server.mail, piu` ftp, piu` servizi ldap e mysql (con relativi tools di manutenzione), postfix viene installato come simple mailer, non come smtp completo, per quello usare server.mail |
#
[class.server.lamp]
  modules	::class.server.amp.modules:: \
  		srv-ldap mnt-ldap mnt-ldap-web


## | server.soho | SOHO (Small Office Home Office) server, riunisce in un solo server le classi AMP, fs, samba, web.wiki; attenzione: mail e ldap NON sono installati, usare in aggiunta server.auth (o server.lamp e server.mail) |
#
[class.server.soho]
  modules	::class.server.nas.modules:: \
  		::class.server.db_mysql.modules:: \
  		::class.server.samba.modules:: \
		::class.server.web.wiki.modules:: \
  		mnt-vncserver

## | server.nagios | Nagios server |
#
[class.server.nagios]
  <super>	class.server.web
  +modules	srv-nagios cli-nagios

## | server.zabbix | Zabbix server |
#
[class.server.zabbix]
  <super>	class.server.web
  +modules	srv-zabbix cli-zabbix

## | server.git | git server (git, gitolite) |
#
[class.server.git]
  +modules	srv-git

## | server.glpi | GLPI server |
#
[class.server.glpi]
  <super>	class.server.web
  +modules	srv-glpi cli-glpi \
		::class.server.db_mysql.modules::

## | server.nextcloud | NextCloud server |
#
[class.server.nextcloud]
  <super>	class.server.web
  +modules	srv-nextcloud \
		::class.server.db_mysql.modules::

