Meego Wiki
Views

Application developer site/Documentation

From MeeGo wiki
Jump to: navigation, search

Contents

Introduction

Design Overview

Team and developers

Current team:

  • Teemu Lukkari (production manager)
  • Graham Honeywill (account manager)
  • Quang Pham (drupal developer)
  • Mika Matikainen (concept designer, graphic designer)
  • Ronan MacLaverty (product owner from Nokia)
  • Michael R. Shaverty (Drupal developer and hosting provider from Intel)

Other persons involved before:

  • Mikael Kundert (drupal developer)
  • Andrew Burcin (drupal developer)
  • Jakub Suchy (drupal developer, API docs)

Project managing tools

Project was initially managed in Redmine hosted by Activeark. Redmine's issue tracking was replaced with MeeGo's Bugzilla at http://bugs.meego.com. In Bugzilla, site bugs are categorized under product "developer.meego.com".

Drupal source is managed by using GIT. *Source code is public and should be available at Gitorious*. See link for the repository: http://meego.gitorious.org/meego-web-infrastructure/meego-developer-website

Environment overview

Michael R. Shaver from Intel is responsible for hosting. There is plans to move hosting at Oregon State University (OSU), the status can be followed in bug #12683.

Production and staging environment

Production and staging environment are in the same server. No passwords are used, instead we are using SSH public keys which should be provided to Michael when server access is needed.

Production site is mapped to document root " /home/developer.meego.com/www/developer.meego.com " and uses " dev_meego " database/name. Folder is linked to repository and should contain latest stable snapshot of site.

Staging site is mapped to document root " /home/developer.meego.com/www/dev.developer.meego.com " and uses " dev_dev_mego " database/name. Folder is linked to repository and has latest state of the site.

Development environment

No centralized development environment provided. Development happens locally.

Design Overview

Intel is currently responsible of hosting. The contact person for hosting is *Michael R. Shaver* from Intel.

  • Server works in operating system Nginx
  • Firewall settings are unknown
  • There is no load balancing currently (might possible to need one)
  • Apache2 is used as HTTP server
  • No alternative caching configured
  • MySQL 5.1.41 database
  • PHP 5.2.13

Database architecture

Site uses Drupal's default structure, collation, storage engine.

Staging site is not using shared tables.

Production site is using following database settings:

$db_prefix = array(
  'default'   => '',
  'users'     => 'meego.',
  'authmap'   => 'meego.',
  'openid_associations' => 'meego.',
  'profile_fields'   => 'meego.',
  'profile_values'   => 'meego.',
);

Note! When synchronizing content from production site, you will be required to set node.uid to value 1 and clear cache to ensure availability of content. Nodes doesn't get loaded when user is not available (uids are different in production since we're sharing users table!).

Software architecture

Site is using Drupal's distribution *Pressflow* , because of better performance. Project uses PHPTemplate as template engine.

Modules

Contributed modules are located in @./sites/all/modules/contrib@. Custom modules are located in @./sites/all/modules/custom@. Modified contributed modules are located in @./sites/all/modules/modified-contrib@.

Most of custom modules are generated by Features module, but they might contain also alternative code in .module files made by developers.

Search

Site is using external search indexing from Acquia Network which provides apache solr search index.

Discussion of Alternative Designs

System Interface Description

System architectural design

Detail description of modules (patching / update)

Detail description of content structure

Backup solution

Additional Materials

Personal tools