[opensuse-buildservice] Set up custom apt DoD repository on OBS
Hello, i am Lorenzo Faletra and i am new here I work as a developer for www.parrotsec.org and we are planning to use OBS as our build system, but we are facing some not well documented situations. our APT repository is archive.parrotsec.org and we have many custom packages plus packages imported from debian testing and unstable, so the debian 8 template available from build.opensuse.org is completely useless for us. According to all the fragments of documentation that are disseminated between the opensuse docs, the openbuildservice docs and some stuff on the web, i have seen that in order to set up a new distribution template i need to import in a quite non-standard way all the core packages inside a folder, it is of course difficult for us to unmount our repository, take all our deb packages (200GB of files), put all together in a folder, track all of them, remove the old ones and replace them with the updated ones every time we make an update etc.... On the other side the DoD system seemed to be the perfect solution for us, but when i try to create a DoD repo i can't specify the distro name (folder inside /dists), i can't specify archive areas (main, contrib or non-free) etc, i can only specify a mirror url, a master url, a certificate, an arch filter (what is it meant to do?) and some useful certificates, but no way to specify the useful data to set up a standardized debian repository. I have seen on some screenshots that i should use archive.parrotsec.org/parrot/dists/testing/main in order to use the main archive, but if i do it, the resulting distribution will be completely useless and unable to be used for the build system. now, here it is my question: How can i set up a DoD repository that uses "archive.parrotsec.org/parrot" as a mirror, "testing" as distribution release, and "main contrib non-free" as archive areas? If i can't do that, how can i contribute to the OBS development to make it more aligned to the debian standards? And where can i find the source code which handles the workers used to build debian based packages? Thanks for your help in advance ---- Lorenzo "Palinuro" Faletra (EclipseSpark) Frozenbox Network Parrot Security GPG ID: F4C6B9A4 GPG Info: http://pgp.mit.edu/pks/lookup?op=vindex&search=0x97CAA129F4C6B9A4 GPG Key: http://pgp.mit.edu/pks/lookup?op=get&search=0x97CAA129F4C6B9A4
On Sun, Jul 10, 2016 at 08:13:01PM -0400, Lorenzo Faletra wrote:
On the other side the DoD system seemed to be the perfect solution for us, but when i try to create a DoD repo i can't specify the distro name (folder inside /dists), i can't specify archive areas (main, contrib or non-free) etc, i can only specify a mirror url, a master url, a certificate, an arch filter (what is it meant to do?) and some useful certificates, but no way to specify the useful data to set up a standardized debian repository.
The syntax is a bit obscure, it is: http(s):<basedir>/<dist>/<section>[,<section>...] It's the same syntax as used in the "build" package, see below.
now, here it is my question:
How can i set up a DoD repository that uses "archive.parrotsec.org/parrot" as a mirror, "testing" as distribution release, and "main contrib non-free" as archive areas?
http://archive.parrotsec.org/parrot/testing/main,contrib,non-free
If i can't do that, how can i contribute to the OBS development to make it more aligned to the debian standards?
You can either send mails to this list or open issues on github https://github.com/openSUSE/open-build-service/
And where can i find the source code which handles the workers used to build debian based packages?
The source/deb package download is done by the bs_worker script from open-build-service, but the actual build is done with the standalone "build" package: https://github.com/openSUSE/obs-build/ It currently supports both a somewhat hacky setup of the build environment and "debootstrap" as build engine. But Jan Blunck from Infradead is working on making it always use debootstap. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX GmbH, GF Jeff Hawn, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
participants (2)
-
Lorenzo Faletra
-
Michael Schroeder