[opensuse-buildservice] --prefer-pkgs option for osc build
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392. I checked the code and found that issue might be the wrong build_descr_data. if opts.prefer_pkgs: print 'Scanning the following dirs for local packages: %s' % ', '.join(opts.prefer_pkgs) prefer_pkgs, cpio = get_prefer_pkgs(opts.prefer_pkgs, arch, build_type) cpio.add(os.path.basename(build_descr), build_descr_data) build_descr_data = cpio.get() #print build_descr_data 07070100000000000081A400000000000000000000000000000000000002E3000000000000000000000000000000000000000500000000depsR:atk.i586-0/0/0: /sbin/ldconfig /sbin/ldconfig /sbin/ldconfig /sbin/ldconfig glib2 >= 2.0.0 libatk-1.0.so.0 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.2) libglib-2.0.so.0 libgobject-2.0.so.0 libpthread.so.0 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 P:atk.i586-0/0/0: libatk-1.0.so.0 atk = 1.30.0-10.1 atk(x86-32) = 1.30.0-10.1 R:atk-devel.i586-0/0/0: /usr/bin/pkg-config atk = 1.30.0-10.1 glib2-devel >= 2.0.0 libatk-1.0.so.0 pkgconfig(gobject-2.0) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(VersionedDependencies) <= 3.0.3-1 P:atk-devel.i586-0/0/0: pkgconfig(atk) = 1.30.0 atk-devel = 1.30.0-10.1 atk-devel(x86-32) = 1.30.0-10.107070100000000000081A40000000000000000000000000000000000001110000000000000000000000000000000000000000C00000000at-spi.spec%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} %define atk_version 1.29.2 %define gtk2_version 2.10.0 %define gail_version 1.9.0 %define libbonobo_version 2.4.0 %define orbit2_version 2.6.0 %define pango_version 1.2.0 Summary: Assistive Technology Service Provider Interface Name: at-spi Version: 1.30.0 Release: 1 URL: http://developer.gnome.org/projects/gap/ Source0: http://download.gnome.org/sources/at-spi/1.30/%{name}-%{version}.tar.bz2 License: LGPLv2+ Group: System/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) ...... ...... %files python %defattr(-,root,root) %{python_sitearch}/pyatspi/ 07070100000000000081A40000000000000000000000000000000000000000000000000000000000000000000000000000000B00000000TRAILER!!! Then I make a workaround to comment out these two lines and it works ok. #cpio.add(os.path.basename(build_descr), build_descr_data) #build_descr_data = cpio.get() Does the output of build_descr_data above is expected and is it safe to comment out the code to not adding/checking the deps info Thanks vivian
On 2010-08-30 15:30:09 +0800, Zhang, Vivian wrote:
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392.
Which build and obs-server version are you using? Some old versions don't support this feature.
I checked the code and found that issue might be the wrong build_descr_data. if opts.prefer_pkgs: print 'Scanning the following dirs for local packages: %s' % ', '.join(opts.prefer_pkgs) prefer_pkgs, cpio = get_prefer_pkgs(opts.prefer_pkgs, arch, build_type) cpio.add(os.path.basename(build_descr), build_descr_data) build_descr_data = cpio.get() #print build_descr_data <SNIP>
Then I make a workaround to comment out these two lines and it works ok. #cpio.add(os.path.basename(build_descr), build_descr_data) #build_descr_data = cpio.get() Does the output of build_descr_data above is expected and is it safe to comment out the code to not adding/checking the deps info
Yes that's the expected output. If you use the --prefer-pkgs <dir> option osc reads the provides/requires from all packages in <dir> and sends them to the server (so that they can be used for the buildinfo calculation). Instead of commenting out the 2 lines just don't use the --prefer-pkgs option:) Marcus -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hi: build-2010-0804 obs-server-2.0.6 Thank you for your confirm. And I do want to enable --prefer-pkgs for my use case. :) And the interesting thing is that although I commented out the 2 lines, it works as I expected, the prefer-pkgs are installed to create the build-root. I guess rpmlist_prefers[] works. Anyway, I will do more debug and try to root cause this issue. Thanks vivian -----Original Message----- From: Marcus Hüwe [mailto:suse-tux@gmx.de] Sent: Monday, August 30, 2010 4:11 PM To: opensuse-buildservice@opensuse.org Subject: Re: [opensuse-buildservice] --prefer-pkgs option for osc build On 2010-08-30 15:30:09 +0800, Zhang, Vivian wrote:
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392.
Which build and obs-server version are you using? Some old versions don't support this feature.
I checked the code and found that issue might be the wrong build_descr_data. if opts.prefer_pkgs: print 'Scanning the following dirs for local packages: %s' % ', '.join(opts.prefer_pkgs) prefer_pkgs, cpio = get_prefer_pkgs(opts.prefer_pkgs, arch, build_type) cpio.add(os.path.basename(build_descr), build_descr_data) build_descr_data = cpio.get() #print build_descr_data <SNIP>
Then I make a workaround to comment out these two lines and it works ok. #cpio.add(os.path.basename(build_descr), build_descr_data) #build_descr_data = cpio.get() Does the output of build_descr_data above is expected and is it safe to comment out the code to not adding/checking the deps info
Yes that's the expected output. If you use the --prefer-pkgs <dir> option osc reads the provides/requires from all packages in <dir> and sends them to the server (so that they can be used for the buildinfo calculation). Instead of commenting out the 2 lines just don't use the --prefer-pkgs option:) Marcus -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 2010-08-30 16:35:29 +0800, Zhang, Vivian wrote:
build-2010-0804 obs-server-2.0.6 Thank you for your confirm. And I do want to enable --prefer-pkgs for my use case. :) And the interesting thing is that although I commented out the 2 lines, it works as I expected, the prefer-pkgs are installed to create the build-root. I guess rpmlist_prefers[] works. Yes this only works if the package also exists on the server.
Anyway, I will do more debug and try to root cause this issue.
Line 392 looks like the following here: my $dofileprovides = %{$config->{'fileprovides'}}; which is valid (IMHO) because $config->{'fileprovides'} is initialized in Build::read_config. Marcus -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Mon, Aug 30, 2010 at 03:30:09PM +0800, Zhang, Vivian wrote:
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392.
That's a bug in the reposerver which was fixed in July. Please update your OBS server code. (The commit was f3b14e2e1ad549bf98af3725562a0bd4db653122) Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Monday 30 August 2010 11:21:58 Michael Schroeder wrote:
On Mon, Aug 30, 2010 at 03:30:09PM +0800, Zhang, Vivian wrote:
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392.
That's a bug in the reposerver which was fixed in July. Please update your OBS server code.
(The commit was f3b14e2e1ad549bf98af3725562a0bd4db653122)
Something what we should backport to 2.0.6 release ? -- Adrian Schroeter SUSE Linux Products GmbH email: adrian@suse.de -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Monday 30 August 2010 11:51:25 Adrian Schröter wrote:
On Monday 30 August 2010 11:21:58 Michael Schroeder wrote:
On Mon, Aug 30, 2010 at 03:30:09PM +0800, Zhang, Vivian wrote:
Hi, all I tried to use -prefer-pkgs options for osc build but failed: #osc build -p /var/tmp/buildcheck-atk/RPM --no-verify --clean standard i586 at-spi.spec Scanning the following dirs for local packages: /var/tmp/buildcheck-atk/RPM Getting buildinfo from server and store to /var/tmp/buildcheck-atk/Trunk:Testing/at-spi/.osc/_buildinfo-standard-i586.xml Server returned an error: HTTP Error 400: Bad Request Remote error: Can't use an undefined value as a HASH reference at build/Build.pm line 392.
That's a bug in the reposerver which was fixed in July. Please update your OBS server code.
(The commit was f3b14e2e1ad549bf98af3725562a0bd4db653122)
Something what we should backport to 2.0.6 release ?
okay, will be in 2.0.6 release. Just waiting for Anas to approve that 2.0.6 solves all his problems on meego.com. bye adrian -- Adrian Schroeter SUSE Linux Products GmbH email: adrian@suse.de -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (4)
-
Adrian Schröter
-
Marcus Hüwe
-
Michael Schroeder
-
Zhang, Vivian