[opensuse-buildservice] OBS private instance: download on demand trouble
Hi all, I have set up a company-wide yum repository which contains non-free third-party rpms. Following http://web.archiveorange.com/archive/v/6r2m99UGJvpq5Wh5EajT, I created a project to download these third party rpms in order to use them to build our own packages. The DoD configuration seems to be correct, the file :fill.solv ist created. But the scheduler log always shows a 'bad config' for that repo and the build of our own packages fails with unresolved packages from the DoD project. My guess is that the the resolution errors are caused by some kind of architecture mismatch: The third-party rpms are build for CentOS and have an arch=i386, whereas the arch in the DoD project is set to arch="i586" (since OBS complains when I set arch=i386). Is there anybody to confirm that? How do I set up DoD to work with CentOS repositories? TIA, Martin -- E-Mails sollten Text sein, Text und nur Text. Wenn Gott gewollt hätte, dass E-Mails in HTML geschrieben würden, endeten Gebete traditionell mit </amen>. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On 2012-07-04 19:42:01 +0200, Martin Weber wrote:
Hi all,
I have set up a company-wide yum repository which contains non-free third-party rpms. Following http://web.archiveorange.com/archive/v/6r2m99UGJvpq5Wh5EajT, I created a project to download these third party rpms in order to use them to build our own packages.
The DoD configuration seems to be correct, the file :fill.solv ist created. But the scheduler log always shows a 'bad config' for that repo and the build of our own packages fails with unresolved packages from the DoD project.
How does your project setup look like? I would do the following: - create a project A for your distro - create a second project B with your third party rpms and add something like this to the project meta: <repository name="standard"> <path project="A" repository="standard"/> <arch>i586</arch> <arch>x86_64</arch> </repository> Normally there's no need to make any changes to B's project config (the one you edit via "osc meta prjconf B"). Just add B's repo to another project in order to build against the third party rpms.
My guess is that the the resolution errors are caused by some kind of architecture mismatch: The third-party rpms are build for CentOS and have an arch=i386, whereas the arch in the DoD project is set to arch="i586" (since OBS complains when I set arch=i386).
Is there anybody to confirm that?
No this should work.
How do I set up DoD to work with CentOS repositories?
Marcus -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
Am 04.07.2012 23:09, schrieb Marcus Hüwe:
On 2012-07-04 19:42:01 +0200, Martin Weber wrote:
Hi all,
I have set up a company-wide yum repository which contains non-free third-party rpms. Following http://web.archiveorange.com/archive/v/6r2m99UGJvpq5Wh5EajT, I created a project to download these third party rpms in order to use them to build our own packages.
The DoD configuration seems to be correct, the file :fill.solv ist created. But the scheduler log always shows a 'bad config' for that repo and the build of our own packages fails with unresolved packages from the DoD project.
How does your project setup look like? I would do the following: - create a project A for your distro
Sorry, it's not quite clear to me what 'your distro' does mean.
- create a second project B with your third party rpms and add something like this to the project meta:
<repository name="standard"> <path project="A" repository="standard"/> <arch>i586</arch> <arch>x86_64</arch> </repository>
Normally there's no need to make any changes to B's project config (the one you edit via "osc meta prjconf B").
Just add B's repo to another project in order to build against the third party rpms.
I have one project that should download and provide the third party (RHEL) rpms for OBS: <project name="FTI-mirror-RHEL5"> <title>Mirrored RPMs from FTI and Ccur</title> <download baseurl="http://blah/rpms-mirror/RHEL5/" arch="i586" metafile="primary.xml" mtype="rpmmd"/> <build> <disable/> </build> <repository name="standard"> <arch>i586</arch> </repository> My second project contains the packages I want to build. I added the first project in order to get the missing third party dependencies: <project name="Razorcat:testing"> <description>Untested and instable builds</description> <build> <disable repository="FTI-mirror-RHEL5_standard"/> </build> <publish> <disable repository="FTI-mirror-RHEL5_standard"/> </publish> <repository name="CentOS_5"> <path repository="standard" project="openSUSE.org:CentOS:CentOS-5"/> Reply
On 2012-07-05 11:42:07 +0200, Martin Weber wrote:
Am 04.07.2012 23:09, schrieb Marcus Hüwe:
On 2012-07-04 19:42:01 +0200, Martin Weber wrote:
Hi all,
I have set up a company-wide yum repository which contains non-free third-party rpms. Following http://web.archiveorange.com/archive/v/6r2m99UGJvpq5Wh5EajT, I created a project to download these third party rpms in order to use them to build our own packages.
The DoD configuration seems to be correct, the file :fill.solv ist created. But the scheduler log always shows a 'bad config' for that repo and the build of our own packages fails with unresolved packages from the DoD project.
How does your project setup look like? I would do the following: - create a project A for your distro
Sorry, it's not quite clear to me what 'your distro' does mean.
See below.
- create a second project B with your third party rpms and add something like this to the project meta:
<repository name="standard"> <path project="A" repository="standard"/> <arch>i586</arch> <arch>x86_64</arch> </repository>
Normally there's no need to make any changes to B's project config (the one you edit via "osc meta prjconf B").
Just add B's repo to another project in order to build against the third party rpms.
I have one project that should download and provide the third party (RHEL) rpms for OBS:
<project name="FTI-mirror-RHEL5"> <title>Mirrored RPMs from FTI and Ccur</title> <download baseurl="http://blah/rpms-mirror/RHEL5/" arch="i586" metafile="primary.xml" mtype="rpmmd"/> <build> <disable/> </build> <repository name="standard"> <arch>i586</arch> </repository>
That looks ok - if I understand it correctly this project contains only some third party packages and NOT the complete RHEL5 distro + the third party packages. In this case you should also add the RHEL5 project to the repo's search path: <repository name="standard"> <path repository="standard" project="openSUSE.org:RedHat:RHEL-5"/> <arch>i586</arch> </repository>
My second project contains the packages I want to build. I added the first project in order to get the missing third party dependencies:
<project name="Razorcat:testing"> <description>Untested and instable builds</description> <build> <disable repository="FTI-mirror-RHEL5_standard"/> </build> <publish> <disable repository="FTI-mirror-RHEL5_standard"/> </publish> <repository name="CentOS_5"> <path repository="standard" project="openSUSE.org:CentOS:CentOS-5"/> Reply
participants (2)
-
Marcus Hüwe
-
Martin Weber