Platform Team/Infrastructure

This page describes the infrastructure map that the Platform Team provides. See also Sweets introduction page.

Introduction

Technologies involved within the Platform Team infrastructure:

The entire workflow is whirling around following major services:

 

Services

obs.sugarlabs.org

The cornerstone component that's intended to be a place to consolidate all the efforts of Sugar doers regarding sharing the code:

  • hosting released sources (so, there is no need in requesting a shell account to upload files to http://download.sugarlabs.org),
  • being a universal build farm for binary-based projects.

It is a patched version of Open Build Service.

In many cases, Bazaar will be used implicitly:

  • uploading a new version will be called from the sweets commit command,
  • launching will happen just by calling a sweet url.

The only thing required is being registered on Bazaar. For the default http://bazaar.sugarlabs.org instance, that means being registered in the Sugar Labs Central Login system.

activity.sugarlabs.org

Is the Activity Library. Once obs.sugarlabs.org is in service, the Activity Library will be just a catalog of activities, all downloading will happen from obs.sugarlabs.org.

In the doers' environment, the Activity Library will be a catalog of sweets. In other words, activities.sugarlabs.org might be treated as a front-end for Sugar development process (where obs.sugarlabs.org is a back-end) and an analog of the current Developer Hub on Activity Library.

From usage point of view, only Zero Install interface URL is needed to obtain a new Activity Library entity; the rest will be done by Sweets under the hood.

packages.sugarlabs.org

It is an original Web interface to Open Build Service. It seems to be an overkill for regular Sugar doers' workflow (since OBS is primarily designed to support native packages workflow) when Activity Library's Developers Hub can be used as a more appropriate OBS client. But packages.sugarlabs.org will be useful when people need full OBS control for creating native packages (original ones or basing on existed sweets).

All packages on packages.sugarlabs.org split into several types:

  • regular OBS packages,
  • aliases that map native packages names of several GNU/Linux distributions into one OBS level name,
  • sweets built only for Zero Install usage,
  • native packages built basing on sweets.

sweets.sugarlabs.org

It is being used to host Zero Install feeds produced from sweet sources. After being uploaded to obs.sugarlabs.org, sweet source will be build on OBS and the final result will be shared also as Zero Install feeds on sweets.sugarlabs.org.

download.sugarlabs.org

All files, sources and binaries, that are hosted or produced on obs.sugarlabs.org, will be finally copied to download.sugarlabs.org. The reason is to reuse existed mirroring infrastructure.