On Fri, May 4, 2012 at 8:43 PM,
How are the distribution projects for Ubuntu (like Ubuntu:10.04) set up on build.opensuse.org? Of course, I see the project and raw configs, but the rest is unclear to me.
This is the 64 thousand dollar question. :-) While we've done this internally at our company, there is not a lot of documentation on how to do this in OBS. This is one of the great drawbacks of OBS -- it has very little documentation. Secondly, OBS comes from OpenSUSE (mostly) and this means a subtle bias towards rpm and a lack of familiarity with debs. These two things make it difficult to do easy deb based distro set ups. That said, there has been some good work done in the latest OBS release (2.3.0) that addresses some of the shortcomings on the deb side. It is possible to do things like sign the Packages file for example.
I'm trying to set up an Ubuntu distribution project in a local OBS install to have locally for quicker access and avoid the intermittent but frequent proxy/latency issues we see when just pointing to distribution projects on build.opensuse.org. We can't use download on demand in this case, as we'd like to also have the ability to utilize updated packages from the -updates and -security Ubuntu repositories (e.g. precise-updates and precise-security), and the download on demand feature doesn't like it when repositories change at all.
To do this, the instructions at http://gitorious.org/opensuse/build-service/blobs/master/dist/README.SETUP recommend (in section 4.2) copying the distribution project over from build.opensuse.org using obs_mirror_project and /srv/www/obs/api/script/import. However, I have an internal Ubuntu (non-OBS) mirror, so it really makes no sense to pull all these packages from outside.
It's also unclear to me how to keep a deb-based distribution project up-to-date after the initial import.
What do you mean by "up-to-date"? Do you mean how do you add new packages that have been patched and have new versions? Are you keeping the repo up-to-date or trying to sync the underlying OS with upstream? If you're doing the latter, you'll like want to look at some tools from the Debian world where this problem has been largely solved. Take a look at reprepro for example which has an active maintainer (who is also the author) as well as other tools.
I've looked through the documentation (and done lots of web searches) for how to do this. The best I can find is to either use download on demand, just point to build.opensuse.org or just copy the distribution project from build.opensuse.org. As I said, though, none of those are good options for me. I've spent time looking through the OBS source, and it looks like bs_admin is what parses repositories for sourcing, but it doesn't necessarily seem to indicate how OBS wants me to set up the actual Ubuntu distribution project. I see that bs_srcserver seems to also do some of the work. I am not terribly familiar with the OBS source, so it's likely that I've missed something. I may also be incorrect in the assumption that OBS is parsing the Packages.gz file for a repository or expecting an ordinary apt repository.
Those are good questions -- I think one has to go code diving to determine the answers, I've never seen any documentation on how OBS parses Debian-based repos. Regards, Jeremiah
--Jared
PS: This is my first post on this list or in this community, so please kindly point out to me if I'm not following the social expectations here. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
-- ============================================= Jeremiah C. Foster エレミア フォスター Open Source Technologist Pelagicore AB Ekelundsgatan 4, 6tr, SE-411 18 Gothenburg, Sweden Mobile: +46 (0)730 93 0506 E-Mail: jeremiah.foster@pelagicore.com ============================================= === NOTE === The information contained in this E-mail message is intended only for use of the individual or entity named above. If the reader of this message is not the intended recipient, or the employee or agent responsible to deliver it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. =============