The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


OBS projects setup

From Mer Wiki
(Difference between revisions)
Jump to: navigation, search
(Download on Demand)
m (Download on Demand)
Line 60: Line 60:
 
   obs_admin --rescan-repository Debian:6.0 standard i586
 
   obs_admin --rescan-repository Debian:6.0 standard i586
  
* create a prjconf for this distro. For debian there is one at (opensuse obs down)
+
* create a prjconf for this distro. For debian there is one at https://build.opensuse.org/project/prjconf?project=Debian:6.0
  
 
References :  
 
References :  
 
* http://en.opensuse.org/openSUSE:Build_Service_Concept_Download_on_Demand
 
* http://en.opensuse.org/openSUSE:Build_Service_Concept_Download_on_Demand

Revision as of 08:45, 17 January 2012

Building for different targets in OBS

You might want to build packages for different targets like Debian or Opensuse. There are two ways to do that :

  • inter-OBS link provided by build.opensuse.org
  • download on demand against a static repository


Explain inter-OBS link

Download on Demand

Steps for deb based distros :

  • Choose a fast mirror of the repository you want to build against. It has to be static as cached information will not be refreshed automatically by OBS.

Debian stable I use http://debian.osuosl.org/debian/

  • Locate the Packages file for the dist and architecture you want. For squeeze (stable) i386 it is at :

http://debian.osuosl.org/debian/dists/squeeze/main/binary-i386/Packages.gz

  • Create a project using the web UI or the osc. For example to create a toplevel Debian:6.0 using osc :
 osc -A apiurl meta prj -e Debian:6.0
  • Fill the project meta similar to the following xml :
 <project name="Debian:6.0">
   <title>Debian stable (Squeeze)</title>
   <description>Debian 6.0 stable (Squeeze) using download and demand from http://debian.osuosl.org/debian/dists/squeeze</description>
   <person userid="Admin" role="maintainer"/>
   <person userid="Admin" role="bugowner"/>
   <download mtype="debmd" arch="i586" baseurl="http://debian.osuosl.org/debian/" metafile="Packages"/>
   <build>
     <disable/>
   </build>
   <publish>
     <disable/>
   </publish>
   <repository name="standard">
     <arch>i586</arch>
   </repository>
 </project>

Notes :

    • mtype is debmd for deb based repositories
    • arch matches this repository and Packages file to an OBS scheduler, so debian i386 will be handeled by the i586 scheduler
    • baseurl is used to construct the URL of the packages mentioned in the Packages file
  • in the OBS backend create a directory :
 mkdir -p /srv/obs/build/Debian:6.0/standard/i586/:full
 cd /srv/obs/build/Debian:6.0/standard/i586/:full
 wget http://debian.osuosl.org/debian/dists/squeeze/main/binary-i386/Packages.gz
 gunzip Packages.gz
 chown -R obsrun:obsrun /srv/obs/build/Debian:6.0
 obs_admin --rescan-repository Debian:6.0 standard i586

References :

Personal tools