Difference between revisions of "Modularisation"

From stoney cloud
Jump to: navigation, search
[unchecked revision][unchecked revision]
(Created page with "GitHub: * Form follows function: we choose the functionality name (so we are backwards compatible) * Modules are collected in one repository (create a skeleton module as an ex...")
 
Line 1: Line 1:
 +
Core
 +
* User, Customer, Reseller
 +
* Roles and rights
 +
* Billing
 +
* Forgot Password
 +
* ...
 +
 +
Modules: Service/Product specific:
 +
* Online Backup (stoney safe)
 +
* Mail Hosting (stoney mail)
 +
* VM-Manager (stoney conductor)
 +
* VM-Manager light (stoney vm): Start, stop, access a VM.
 +
 
GitHub:
 
GitHub:
 
* Form follows function: we choose the functionality name (so we are backwards compatible)
 
* Form follows function: we choose the functionality name (so we are backwards compatible)
* Modules are collected in one repository (create a skeleton module as an example):
+
* Web Modules are collected in one repository (create a skeleton module as an example):
** Data (LDAP)
+
** Data (LDAP): load.ldif
** API (PHP)
+
** API (PHP): api.php
** Web Interface (PHP, uses API)
+
** Web Interface (HTML/JS/CSS, uses API): gui.js
** Provisioning (Perl, ...)
+
** Tests (GUI, Unit-Tests, ...): test.xml
** Tests (GUI, Unit-Tests, ...)
+
** CLI (Python, Perl, PHP, Bash with curl ... uses API): api.sh
 +
 
 +
* Service Modules
 +
** Provisioning (Perl, ...): prov.pl
 +
** Helper Scripts, like notifications (quota, backup failed, rsnapshot, ...): helper.pl
 +
** Tests (CLI, Unit-Tests, ...): test.sh
  
 
[[Category:Development]]
 
[[Category:Development]]

Revision as of 13:45, 16 October 2013

Core

  • User, Customer, Reseller
  • Roles and rights
  • Billing
  • Forgot Password
  • ...

Modules: Service/Product specific:

  • Online Backup (stoney safe)
  • Mail Hosting (stoney mail)
  • VM-Manager (stoney conductor)
  • VM-Manager light (stoney vm): Start, stop, access a VM.

GitHub:

  • Form follows function: we choose the functionality name (so we are backwards compatible)
  • Web Modules are collected in one repository (create a skeleton module as an example):
    • Data (LDAP): load.ldif
    • API (PHP): api.php
    • Web Interface (HTML/JS/CSS, uses API): gui.js
    • Tests (GUI, Unit-Tests, ...): test.xml
    • CLI (Python, Perl, PHP, Bash with curl ... uses API): api.sh
  • Service Modules
    • Provisioning (Perl, ...): prov.pl
    • Helper Scripts, like notifications (quota, backup failed, rsnapshot, ...): helper.pl
    • Tests (CLI, Unit-Tests, ...): test.sh