[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Automatically build packages for a multi dist/multi arch repository with pool structure?



Hi Mentors,

I provide several packages in my private apt-get'able package
repository. I (want to) support several dists (sarge, etch, sid, Ubuntu breezy, ...)
and two architectures (i386, amd64).

To build the packages I use pbuilder on several machines. What I usually get 
are several binary packages with identical version numbers for each
dists/arch combination. This makes it impossible to have them in a
repository with a pool layout (like debpool would create). I would like to
move from my handcrafted repository to a debpool-managed one. 
Please comment on the following outline, and tell me whether this is a sane way
to reach this goal.

I think what I do is essentially backporting packages to a number of
dists. Therefore I'm writing a little script to facilitate the build process. I want 
to be able to build a package for all dists/arch combinations I have a
build environment for -- with a single command. 

I'm  posting this message to prevent myself from doing what others might
already have done.

As I use svn-buildpackage to manage my packages I start in my local
working copy of the package.

1. Export the package to a build area.
2. Extract version from debian/changelog (dpkg-parsechangelog)
3. If the target dist is not Debian unstable:
      Decrease Debian package version by one and add some backport
      suffix. Modify debian/changelog accordingly.
      Example: '(1.0.14-3) unstable;' could become '(1.0.14-2sarge0) stable;' 
      for a Debian stable backport. 
4. Build source package (dpkg-source -b ...) from the modified source
   tree.
5. Build the binary package(s) using pbuilder on some machine. Use
   '--debbuildopts "-B"' if the pool structure already contains binary
   packages of the current dist.
6. Finally debsign and dput/dupload to the repository

My to-be-completed script would cover step 1 to 5. 

My question is now: Is there already software in Debian that does this or something
similar and does versioning the backported packages work this way?


Thanks in advance,


Michael

-- 
GPG key:  1024D/3144BE0F Michael Hanke
http://apsy.gse.uni-magdeburg.de/hanke
ICQ: 48230050

Attachment: signature.asc
Description: Digital signature


Reply to: