| Version 1 (modified by benjamin, 6 years ago) (diff) |
|---|
Liste des modules de l'API AlternD
- Core : Noyau central
- list - liste des modules disponibles
- enable - activation d'un module
- disable - desactivation
- ClusterManager? : Gère les configs multiserveur.
- server_list - Liste les serveurs installés et leurs modules
- server_add - Ajoute un serveur (ses modules installés sont autodétectés)
- birdy, des idées ?
Required modules on the Core
- Accounts
- add
- list
- del
- edit
- Quotas
- get - retourne le nombre maxi de services donné
- set - fixe le nombre maxi de services donné
Common functions
[obligatoirement proposé par toute classe]
- export - exporte la config du service sous forme d'une chaine formattée (norme à définir)
- import - recrée les services depuis une chaine formattée (norme à définir)
- classname - nom du module (permet l'introspection)
- classtype - type fonctionnel ("dns" pour la classe bind, "http" pour la classe apache etc.)
Modules (facultatifs)
- DNS : Gestion de serveur DNS (ex: bind, mydns)
- list - liste les zones autoritaires d'un compte
- add - crée une zone autoritaire sur un compte
- del - détruit une zone autoritaire sur un compte
- list_rr - liste les enregistrements d'une zone (A, MX, CNAME, ...)
- add_rr - ajoute un enregistrement à une zone
- del_rr - efface un enregistrement d'une zone
note : on pourra utiliser nsupdate pour add/del_rr ca évite un reload de bind ;)
- HTTP : Gestion des vhost HTTP (ex: apache2, apache2-superpatch)
- add - Crée un vhost (param de base = ServerName? et Compte AlternC)
- del - Supprime un vhost
- edit - Modifie des paramètres d'un vhost
anarcat : on devrait permettre de mettre de la conf arbitraire (php_admin machin, Limit, etc) benjamin : pas vraiment, vu que cela permet par ex php_admin_flag safe_mode off ... (ou alors accessible à admin only) on filtre. je crois qu'il y a de l'espace pour laisser plus de jeu ici
- E-Mails : Gestions des comptes mails (ex: courier, cyrus)
- add - Crée un compte pop ou un alias
- edit - Modifie les paramètres d'un email
- del - Détruit un email.
- list - Obtiens la liste des emails d'un compte.
- Statistiques web (ex: awstats, webalizer)
- add - Crée un jeu de stats
- edit - Modifie les paramètres du jeu de stat (autorisations, archivage, etc.)
- del - Efface le jeu de stats et purge ses données
- adduser - Ajoute un compte utilisateur
phpmyvisite / awstat / webalizer & co sont très différentsNote : ici on risque d'avoir des problème de correspondances de fonctionnalités ...
- Ftp : comptes ftp (ex: proftpd)
- add - créé un compte ftp
- del - supprime un ou des compte ftp
- edit - met à jour le compte ftp ( mot de passe, repertoire /, RO ou RW)
- Mailing-Lists (ex: mailman, sympa)
- add - ajoute une mailing list
- del - supprime une ou des mailing list
- edit - modifie les paramètres de base de la mailing list
- subscribe - abonne un/plusieurs emails
- unsubscribe - désabonne un/plusieurs emails
- DB (ex: mysql, postgresql, firebird)
- add - Crée une base de données utilisateur
- del - Droppe une base de données utilisateur
- user_add - Ajoute un compte d'accès aux db.
- user_del - Supprime un compte d'accès aux db.
- user_right - Modifie les droits pour l'utilisateur des bases
- user_right_enum - Retourne la liste des droits affectable à un utilisateur
car la liste des droits varie d'un sgbd à un autre ...
- Jabber (ex: ejabberd)
- add_vhost - Crée un domaine virtuel dans jabber
- del_vhost - Supprime un vhost et tous ses comptes
- add - Crée un compte jabber sur un vhost
- edit - Modifie les paramètres d'un compte
- del - Supprime un compte
TODO
- pour chaque fonction de chaque module, préciser ses paramètres, leurs types,
la valeur (ou les valeurs) retournées et les codes d'erreur possibles (string + integer)
