Meego Wiki
Views

Build Infrastructure

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(add QA links)
(This is packager/developer process information. Move to that sub-page.)
Line 17: Line 17:
Choose one of the different tracks and guides for:
Choose one of the different tracks and guides for:
-
=== [[Build_Infrastructure/QA|QA Processes around the OBS]] ===
 
-
The initial focus here is on community applications
 
-
* to allow freedom for developers to develop;
 
-
* to provide a build service and SDK
 
-
* to provide excellent quality assured applications for our "app store";
 
-
See the [[Quality]] page too.
 
[[File:Splash-garage.png|right|300px]]
[[File:Splash-garage.png|right|300px]]

Revision as of 04:39, 7 June 2010

Contents

MeeGo Build Infrastructure

The heart of the Build Infrastructure of MeeGo is the upstream project openSUSE Build Service (OBS). It is an automated system used for building software packages, collaboration of developers, release management, maintenance and much more. Moblin started using OBS in June 2008 and released Moblin 2.0 and Moblin 2.1 as well as other derivative releases. OBS has proven to be a very reliable infrastructure that is quickly evolving. It is rich with features for distribution building and maintenance. The Linux Foundation is dedicated to the further development of OBS and has a team, includig two full time OBS maintainers, contributing to its development and its use by MeeGo and the Ecosystem.

MeeGo currently uses version 1.7.x of OBS and will soon switch to version 1.8. To learn more about version 1.8 and the additional features in it, see the upstream project details: roadmap.

Overview - What does it do?

Lets set out some basics about the OBS.

  1. It's a build system. You put source on it and say "use this repository" and it builds a minimal SDK-like chroot using the deb/rpms it finds in that repository
  2. It has packages - a package corresponds to a tarball and a spec/dsc
  3. It has projects - a project is like a directory with packages
  4. When a package is built it is 'published' from the project where it was uploaded into a corresponding repository (which can be used to build other projects)
  5. The repositories can also be used by devices to download binary packages.

The 'trick' then, is to set up a structure of projects that can be used to support the processes around the publishing and sharing activities that we need.

Choose one of the different tracks and guides for:

Splash-garage.png

Packagers/Developers

  • How to use the webinterface to view, manage and build your packages.
  • How to use the commandline client for daily operations
  • MeeGo Packaging guidelines and howto
  • Multi-Architecture and Multi-Distribution packaging
  • Tips & Tricks
  • Troubleshooting
  • irc / mailinglists / contact
Peep skate.png

System Adminitrators/Distribution Managers/On-site

  • How to setup an Build Service locally for testing
  • Advanced setup topics
  • Seamless cross-compilation, cross-toolchain integration
  • Whats the metadata (prjconf/prj), attributes, admin-tools for.
  • Troubleshooting
  • irc / mailinglists / contact
Peep netbook.png

Developing for the openSUSE Build Service

  • Upstream URLs
  • irc / mailinglists / contact
  • Roadmap
  • MeeGo feature wishlist
Personal tools