[opensuse-packaging] Cannot submit a noarch package
The package is noarch, so the build is enabled only for one architecture. I submit to Factory but factory-auto declines it saying the package build is disabled. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 12:01 PM, Ilya Chernykh <anixxsus@gmail.com> wrote:
The package is noarch, so the build is enabled only for one architecture.
I submit to Factory but factory-auto declines it saying the package build is disabled.
It's hackish, but you could enable build to all architectures just temporarily, long enough to get build results factory-auto won't complain about. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Friday 30 March 2012 19:09:08 Claudio Freire wrote:
The package is noarch, so the build is enabled only for one architecture.
I submit to Factory but factory-auto declines it saying the package build is disabled.
It's hackish, but you could enable build to all architectures just temporarily, long enough to get build results factory-auto won't complain about.
I did so previously but I wonder if this is correct. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 12:21 PM, Ilya Chernykh <anixxsus@gmail.com> wrote:
It's hackish, but you could enable build to all architectures just temporarily, long enough to get build results factory-auto won't complain about.
I did so previously but I wonder if this is correct.
Other than wasting a few resources in the BS, I don't see why it wouldn't be. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 11:01 AM, Ilya Chernykh <anixxsus@gmail.com> wrote:
The package is noarch, so the build is enabled only for one architecture.
I submit to Factory but factory-auto declines it saying the package build is disabled.
Almost every perl module I think is noarch, so there are tons of examples to look at. perl-File-Mork is one of mine: https://build.opensuse.org/package/show?package=perl-File-Mork&project=devel%3Alanguages%3Aperl I think you will find perl modules generally have: BuildArch: noarch in the specfile, but they are set to build for both i586 and x86_64. The buildservice builds both, but then only publishes one of the packages at the end of the process. Thus, that is the standard process. It obviously wastes cpu cycles building it twice. If you want to change that make a proposal, but realize it is a change. Greg -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 1:46 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
It obviously wastes cpu cycles building it twice. If you want to change that make a proposal, but realize it is a change.
It's not easy either from what I've been told since schedulers for i586 and x86_64 don't know about each other. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 12:52 PM, Claudio Freire <klaussfreire@gmail.com> wrote:
On Fri, Mar 30, 2012 at 1:46 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
It obviously wastes cpu cycles building it twice. If you want to change that make a proposal, but realize it is a change.
It's not easy either from what I've been told since schedulers for i586 and x86_64 don't know about each other.
Claudio, I think that is the easy part. I can think of of at least 3 ways: 1) Allow noarch builds of just one arch to be accepted to factory. Then encourage people to just enable one arch. Hopefully randomly to spread the load around. 2) Create a new "noarch" architecture and scheduler. Have that feed whatever actual scheduler has the lightest load at schedule time. That way even non-Intel machines could build the noarch packages. 3) Enforce in all schedulers but one, that they ignore noarch packages. Then document that so everyone knows they can only build noarch on i586 (as an example). idea 1) seems relatively doable for a modest effort. idea 2) would require changes lots of places I assume, so it is not trivial. idea 3) seems like the least work by far, and it sheds work load from one of the schedulers. I don't know if that would benefit the overall OBS load or not. And I'm sure there are other ways. === The question is if the wasted build resources is worth the R&D to bother with fixing this. Greg -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 2:33 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
3) Enforce in all schedulers but one, that they ignore noarch packages. Then document that so everyone knows they can only build noarch on i586 (as an example).
I think this is the best option. For one, making sure noarch packages are built in the same architecture every time will help avoid spurious deltas: if a package builds differently on different architectures, but the packager decided that the difference is inconsequential. For instance, arm zlib needs not produce the same output as x86 zlib. For two, i586 and x86_64, AFAIK, use the same hosts. Right? So spreading the load among those two is useless. But there are quite a few caveats. One, people should not care about which arch is enabled, if there is any enabled arch for a noarch package, it should be built by "the noarch" scheduler (say, the x86_64 scheduler). If there are many archs enabled, only one build should be scheduled, and build results should be replicated. This might need some doing. So, more to-the-point would be option 2, but it still doesn't completely convince me, because it would be quite confusing in the UI. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 1:53 PM, Claudio Freire <klaussfreire@gmail.com> wrote:
On Fri, Mar 30, 2012 at 2:33 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
3) Enforce in all schedulers but one, that they ignore noarch packages. Then document that so everyone knows they can only build noarch on i586 (as an example).
I think this is the best option.
For one, making sure noarch packages are built in the same architecture every time will help avoid spurious deltas: if a package builds differently on different architectures, but the packager decided that the difference is inconsequential. For instance, arm zlib needs not produce the same output as x86 zlib.
For two, i586 and x86_64, AFAIK, use the same hosts. Right? So spreading the load among those two is useless.
But there are quite a few caveats. One, people should not care about which arch is enabled, if there is any enabled arch for a noarch package, it should be built by "the noarch" scheduler (say, the x86_64 scheduler). If there are many archs enabled, only one build should be scheduled, and build results should be replicated. This might need some doing.
So, more to-the-point would be option 2, but it still doesn't completely convince me, because it would be quite confusing in the UI.
Claudio, I added my comments to: https://features.opensuse.org/305015 If this is a serious discussion, I guess you should too. I also voted for it, but I don't really know how much OBS resource is lost to noarch. It may this is work for little benefit. Greg -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 30, 2012 at 3:17 PM, Greg Freemyer <greg.freemyer@gmail.com> wrote:
I added my comments to:
https://features.opensuse.org/305015
If this is a serious discussion, I guess you should too. I also voted for it, but I don't really know how much OBS resource is lost to noarch. It may this is work for little benefit.
Well, one of my projects builds a few noarch rpms (data) that amount fo about 500MB, so you can imagine they incur heavy I/O usage and they take quite a while to build because of that. So I guess much would be saved - for those kinds of projects. How many of them there are, I don't know. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Friday 30 March 2012 08:17:50 pm Greg Freemyer wrote:
Claudio,
I added my comments to:
Good one, I voted for it.
If this is a serious discussion, I guess you should too. I also voted for it, but I don't really know how much OBS resource is lost to noarch. It may this is work for little benefit.
With ~10% of our packages being noarch, I can imagine the benefit would be substantial. I understand that these packages are most likely amongst the faster to build, but there is still the load incurred by scheduling, copying files around, publishing, etc. -- Jean Delvare Suse L3 -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Friday 30 March 2012 23:32:12 Jean Delvare wrote:
If this is a serious discussion, I guess you should too. I also voted for it, but I don't really know how much OBS resource is lost to noarch. It may this is work for little benefit.
With ~10% of our packages being noarch, I can imagine the benefit would be substantial. I understand that these packages are most likely amongst the faster to build, but there is still the load incurred by scheduling, copying files around, publishing, etc.
Well the package I was talking about. kde3-i18n is the longest to build in KDE:KDE3 repository. It takes more than a hour or maybe several hours. Usually it is the main waiting point in repo rebuild. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
participants (4)
-
Claudio Freire
-
Greg Freemyer
-
Ilya Chernykh
-
Jean Delvare