opensuse.org Build Service



Similar documents
Developing Embedded Linux Devices Using the Yocto Project

Developing Embedded Linux Devices Using the Yocto Project

Embedded Linux development training 4 days session

Linux Distributions. What they are, how they work, which one to choose Avi Alkalay

Eddy Integrated Development Environment, LemonIDE for Embedded Software System Development

Introduction to Gluster. Versions 3.0.x

4.1 Introduction 4.2 Explain the purpose of an operating system Describe characteristics of modern operating systems Control Hardware Access

The Embedded Linux Quick Start Guide In the Beginning... Embedded Linux Conference Europe 2010

Valgrind BoF Ideas, new features and directions

Virtualization and Other Tricks.

Five standard procedures for building the android system. Figure1. Procedures for building android embedded systems

DataCenter Gb/s SATA Host Adapter User Manual

System management with Spacewalk

Introduction to TIZEN SDK

Open Network Linux. A Path to an Open Source Network OS. Rob Sherwood Big Switch Networks CTO

Parallels Virtuozzo Containers 4.7 for Linux Readme

OpenNebula Cloud Platform for Data Center Virtualization

System management with Spacewalk

Eucalyptus: An Open-source Infrastructure for Cloud Computing. Rich Wolski Eucalyptus Systems Inc.

opensuse for ARM On Your Device Sonntag, 21. Oktober 12

Virtualization in Linux KVM + QEMU

How To Write A Test Drive For Kaspersky Anti Virus 6.0 For Windows Server (For Windows)

Eucalyptus: An Open-source Infrastructure for Cloud Computing. Rich Wolski Eucalyptus Systems Inc.

TUT19344 Managing RH/CentOS with SUSE Manager

Wikimedia architecture. Ryan Lane Wikimedia Foundation Inc.

Other trademarks and Registered trademarks include: LONE-TAR. AIR-BAG. RESCUE-RANGER TAPE-TELL. CRONY. BUTTSAVER. SHELL-LOCK

How To Install Eucalyptus (Cont'D) On A Cloud) On An Ubuntu Or Linux (Contd) Or A Windows 7 (Cont') (Cont'T) (Bsd) (Dll) (Amd)

Crosswalk: build world class hybrid mobile apps

PZVM1 Administration Guide. V1.1 February 2014 Alain Ganuchaud. Page 1/27

Operating Systems (Linux)

Embedded Linux development with Buildroot training 3-day session

Acronis Backup & Recovery 10 Server for Linux. Quick Start Guide

Tizen.org Web Infrastructure. Michael Shaver, Intel Daehyeon Jung, Samsung

PROPOSAL: OCP COMMON LINUX SWITCH DISTRIBUTION. Rob Sherwood and Mansour Karam OCP November 2013

Setting up a Linux server Ryan Cartwright I.T. Manager - Contact a Family

In order to upload a VM you need to have a VM image in one of the following formats:

NOCTUA by init.at THE FLEXIBLE MONITORING WEB FRONTEND

Open Network Linux A Network Operating System (NOS) for OCP

Adobe AIR 1.5 for Linux

Utilizing MBARI s Software Infrastructure and Application for MOOS (SIAM) for NOAA s Real-time Environmental Coastal Observing Network (RECON)

Virtuozzo 7 Technical Preview - Virtual Machines Getting Started Guide

The Yocto Project Eclipse plug-in: An Effective IDE Environment for Embedded Application and System Developers

APPLICATION NOTE. RTD Linux Support Overview. SWM Rev C

Apt-mirror. Copyright c Dr. Kent L. Miller Jan-20

Net/FSE Installation Guide v1.0.1, 1/21/2008

Creating a Linux Virtual Machine using Virtual Box

Acronis Backup & Recovery 10 Server for Linux. Installation Guide

Installing QuickBooks Enterprise Solutions Database Manager On Different Linux Servers

Efficient Load Balancing using VM Migration by QEMU-KVM

Of Penguins and Wildebeest. Anthony Rodgers VA7IRL

By Numan Khan

Efficient and Large-Scale Infrastructure Monitoring with Tracing

Axivion Bauhaus Suite Technical Factsheet

Acronis Backup & Recovery 10 Server for Linux. Installation Guide

Copyright by Parallels Holdings, Ltd. All rights reserved.

Parallels Cloud Server 6.0

Yocto Project Eclipse plug-in and Developer Tools Hands-on Lab

Full and Para Virtualization

CURRENT STATE OF ICINGA

12. Introduction to Virtual Machines

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

Intro to Patching. Thomas Cameron, Chief Architect, Western US, Red Hat twitter: thomasdcameron IRC: choirboy on Freenode

PHP in RPM distribution

Open Source Business Service/Process Management

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Table of Contents Release Notes 2013/04/08. Introduction in OS Deployment Manager. in Security Manager Known issues

OpenStack Manila Shared File Services for the Cloud

Xen Cloud Platform Update

Dell System Update Version 1.0 Preview Guide

PARALLELS SERVER BARE METAL 5.0 README

ZABBIX. An Enterprise-Class Open Source Distributed Monitoring Solution. Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009

NoMachine (free version) Installation Guide

Open Source Datacenter Conference 2011 System Management with RHN Satellite. Dirk Herrmann, Solution Architect, Red Hat

Parallels Server Bare Metal 5.0

1. Product Information

Dynamic Kernel Module Support. Matt Domsch, Software Architect Dell, Inc.

Introduction to Virtual Machines

Online Backup Client User Manual Linux

The FOSSology Project Overview and Discussion. » The Open Compliance Program. ... By Bob Gobeille, Hewlett-Packard

Jenkins: The Definitive Guide

PARALLELS SERVER 4 BARE METAL README

EXPLORING LINUX KERNEL: THE EASY WAY!

Vembu NetworkBackup v3.1.1 GA

Citrix Worx App SDK Overview

Transcription:

opensuse.org Build Service Maintain one source for all Linux platforms Putting cross development support into OBS Martin Mohring 5e Datasoft GmbH martin.mohring@opensuse.org

How to join such a FOSS project OBS is a corporate FOSS project, mostly Novell funded High entry level due to long SUSE history Reengineering of best practise and new technology How did I then join? Pragmatic approach fill a gap Testing Gain creditability Gain write access to code Provide packages for experimental users New use cases Result: Maintainer of Developer / Testing packages Reengineered complete embedded knowhow inside OBS Works 2

Types of Cross Development Develop Software for another processor than the host Type 1: Build a complete set of packages using one big Package > e.g. busybox and buildroot Type 2: Put a complete distro including cross-tools into a Project > e.g. stlinux.com and OE > No original packages for the target can be used. Type 3: The build system is modified but use original source packages > No Examples outside OBS Type 4: Use emulation and/or virtualization and/or native build > e.g. scratchbox and mojo > orginial binaries can run > testsuites can run 3

Requirements I The goal was to put support for cross development into OBS as a generic, orthogonal feature Existing distributions should be usable as it is the case with x86 and ppc For the application developer, new targets should not be more than any other additional Linux target The codepath for normal operation (not cross-build) should behave exactly like without cross-build. 4

Requirements II Must work with server and with local build Normal OBS users without arrays of disks must be able to use it Existing meta data from.deb and.rpm FTP trees should be usable Split up in two sub-features: Download on Demand Cross Development 5

About Virtualization in OBS XEN/UML/QEMU/KVM can be used in workers was in the first place a security feature was a max compatibility feature on native Hardware For compatibility, system emulation was considered, but found too slow for cross development Cross Development uses QEMU user emulation and Virtualization 6

Download on Demand I Big Distros need up to 20 GB / arch for the binary packages Remote OBS is only usable if one OBS stores all packages What about the FTP trees for all the distros? What if I want to use also the update FTP trees? 7

Download on Demand II Download on Demand caches only needed packages can read usual meta data from FTP trees: debian md, rpm md and suse tags fire and forget ( I did miss package xyz ) 8

Implementation the beginnings MicroSUSE Type 1: bring in uclibc buildroot Put generic Infrastructure in place Macro Processing works everywhere Bring in notation of processor Architectures Get powerpc working as first non x86 a Type 2: Import first Cross Build Distro stlinux.com Now effort data present on amount of work for Type 1-4 to get a real distro building and running 9

Components Overview Software search & installation Web client Command Line Client Web Client Installer (YaST,etc.) opensuse API Frontend Mirror Interface Storage Backend Build Host Build Host Build Host Build Host Build Host Build Host 10

Implementation Changes in OBS OSC Webclient Frontend Scheduler Dispatcher Repo Server Worker Build 11

Implementation in the Backend Src server Rep server Scheduler i586 Scheduler i586 Scheduler i586 Scheduler i586 Dispatcher Publisher Repos Workers i586 Workers i586 Workers i586 Workers i586 12

Status I First Release implemented Code supplied in the svn trunk since Dec/2008 Packages provided for testing even since first versions Some Instances running got feedback from there Implemented Metadata: RPM Deb Susetags 13

Status II Type 1-4 Cross Development implemented even combinations possible Compatibility paradigm proven Maemo SDK implementation in 3 days Tested with lots of ARM Distros Ready to be supplied in public OBS for ARM 14

Testing Results I Widely tested on Distros mostly for ARM Debian Ubuntu Fedora Maemo STLinux (ARM9+11 + sh4) Type 2 15

Testing Results II ARM processor levels from armv4t (ARMv4 OABI) Debian Etch to armv7el (ARMv7 EABI + VFP) - Ubuntu/mojo Resultung packages installed on boards and run Most opensuse Base system packages bootstrapped inclusive running parts of the testsuites 16

Roadmap Activate ARM builds in public OBS Make Download on Demand more user friendly Implement optimizations Set up an ARM version of opensuse Remove the bugs that pop up in public service Get also non ARM architectures running mostly a QEMU user mode issue Support non PC type of Images Lots of embedded Devices to assimilate 17

Resources http://build.opensuse.org A running instance of the Build Service. Contains links to documentation and source http://en.opensuse.org/category:build_service Wiki documentation class for Build Service opensuse-buildservice@opensuse.de The mailing list for discussing the Build Service. #opensuse-buildservice on freenode Our IRC channel #opensuse-arm on freenode Our IRC channel for OBS and opensuse @ ARM 18