Changes

Jump to navigation Jump to search
no edit summary
Line 60: Line 60:  
* [[The Server/Mace|mace]] tool that processes configuration from sugar-server-base packages is designed to have several configuration sources for the same service, so downstream configuration packages might change/hide/complement upstream configuration.
 
* [[The Server/Mace|mace]] tool that processes configuration from sugar-server-base packages is designed to have several configuration sources for the same service, so downstream configuration packages might change/hide/complement upstream configuration.
   −
There are three upstream packages:
+
Core packages are per-[[#Components|component]] and might be reused as-is in downstream, in a way that is most practical for them.
 
  −
* sugar-server
  −
* sugar-server-base
  −
* mace
  −
 
  −
These packages might be reused downstream as-is, in a way that is most practical for downstream.
      
=== Full cycle solution ===
 
=== Full cycle solution ===
Line 78: Line 72:  
== Components ==
 
== Components ==
   −
Sugar Server components.
+
There are several Sugar Server project components:
 
  −
=== sugar-server ===
  −
 
  −
The core component.
  −
 
  −
The singular program requires only on python, and obvious dependencies like coreutils, to allow all its services to function properly. It provides basic sugar related services, and uses one CLI tool to manage all its functionality.
  −
 
  −
This component provides:
  −
 
  −
* Required services:
  −
** Student identification
  −
* Optional services:
  −
** XO anti-thief support
  −
** Entire Journal backup/restore
  −
** [[Features/Smart_Objects|Shared objects]]
  −
 
  −
=== sugar-server-base ===
  −
 
  −
This component contains only configuration of basic external services that need to be installed and configured on bare servers at school.
     −
These services are:
+
* [[The_Server/sugar-server|sugar-server]] provides basic sugar specific services,
 +
* [[The_Server/sugar-server-base|sugar-server-base]] contains only configuration for basic external services that need to be installed and configured on bare servers at school,
 +
* [[The_Server/Mace|mace]] process configuration sources, e.g., from sugar-server-base.
   −
* System configuration like iptables and sudo
+
The only relations between them are:
* Jabber
  −
* Web cache
  −
* Content filter
  −
* SSH
  −
* NTP
  −
* DNS
  −
* DHCP
     −
=== mace ===
+
* sugar-server might be configured from sugar-server-base
 +
* sugar-server-base makes sense only after processing its content by mace
   −
Apply configuration templates to the final systems.
+
These are building block for the final solutions in downstreams. Components are optional in the meanning of:
   −
It is how external services configuration happen within Sugar Server based solutions. The core of this component is [[The Server/Mace|mace]] utility.
+
* sugar-server might be used in the singular manner, it doesn't need any special, out of sugar-server, configuration and can be started even from its sources directory;
 +
* sugar-server-base might be used in the singular manner, but obviously with the mace, to configure only non Sugar services;
 +
* mace might be used in the singular manner to configure any services.

Navigation menu