[Bug 729231] New: Running service then building is behaving weirdly
https://bugzilla.novell.com/show_bug.cgi?id=729231 https://bugzilla.novell.com/show_bug.cgi?id=729231#c0 Summary: Running service then building is behaving weirdly Classification: Internal Novell Products Product: openSUSE Build Service Version: 2.0 Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: osc AssignedTo: adrian@suse.com ReportedBy: remy.garrigue@gmail.com QAContact: adrian@suse.com Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.2 (KHTML, like Gecko) Ubuntu/11.10 Chromium/15.0.874.106 Chrome/15.0.874.106 Safari/535.2 I am moving the rpm spec file from OBS to include them in the source in our SVN, as we already are fetching them with a service. I have two errors when I try to build it locally. The first one is osc build doesn't find the spec file, even properly extracted. Here is my console log, with <---- arrow highlighting the issue xos-core:~/network:cluster:xtreemos/cdacclient # osc build openSUSE_11.4 i586 cdacclient.spec Run source service: /usr/lib/obs/service/tar_scm --url 'svn://scm.gforge.inria.fr/svn/xtreemos/grid/mobile/caf/cdacclient/trunk' --scm 'svn' --filename 'cdacclient' --version '0.3.1' --outdir /tmp/tmpS_NYNz A cdacclient/libcdaclient1.c .. A cdacclient/rpm A cdacclient/rpm/cdacclient.spec <--------------- spec file checkout ok .. Checked out revision 9105. Run source service: /usr/lib/obs/service/extract_file --archive '*.tar' --files '*/rpm/*.spec' --outdir /tmp/tmpcuYfxE ++ echo _service:tar_scm:cdacclient-0.3.1.tar + existing_archive=/root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar + cd /tmp/tmpcuYfxE + '[' -e /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar ']' + '[' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar '!=' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar ']' + '[' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar '!=' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar ']' + '[' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar '!=' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar ']' + '[' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1 '!=' /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar ']' + tar xf /root/network:cluster:xtreemos/cdacclient/_service:tar_scm:cdacclient-0.3.1.tar --wildcards '*/rpm/*.spec' + for i in '$MYFILES' + mv cdacclient-0.3.1/rpm/cdacclient.spec . <---------------------- extract_file move spec properly + exit 0 Building cdacclient.spec for openSUSE_11.4/i586 Error: build description file named '/root/network:cluster:xtreemos/cdacclient/cdacclient.spec' does not exist. <------------ but build doesn't find it xos-core:~/network:cluster:xtreemos/cdacclient # ls osc _service:extract_file:cdacclient-0.3.1 _service:tar_scm:cdacclient-0.3.1.tar _service _service:extract_file:cdacclient.spec <------- it's here, with the usual (annoying, sorry but no other way to describe it) _service prefix So I try "osc build openSUSE_11.4 i586 _service:extract_file:cdacclient.spec". but here come the second error: xos-core:~/network:cluster:xtreemos/cdacclient # osc build openSUSE_11.4 i586 cdacclient.spec Traceback (most recent call last): File "/usr/bin/osc", line 21, in <module> r = babysitter.run(osccli) File "/usr/lib/python2.7/site-packages/osc/babysitter.py", line 52, in run return prg.main() File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 310, in main return self.cmd(args) File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 333, in cmd retval = self.onecmd(argv) File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 449, in onecmd return self._dispatch_cmd(handler, argv) File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 1179, in _dispatch_cmd return handler(argv[0], opts, *args) File "/usr/lib/python2.7/site-packages/osc/commandline.py", line 4925, in do_build r = p.run_source_services(verbose=True) File "/usr/lib/python2.7/site-packages/osc/core.py", line 2071, in run_source_services r = si.execute(self.absdir, mode, singleservice, verbose) File "/usr/lib/python2.7/site-packages/osc/core.py", line 311, in execute os.unlink(os.path.join(dir, filename)) OSError: [Errno 21] Is a directory: '/root/network:cluster:xtreemos/cdacclient/_service:extract_file:cdacclient-0.3.1' <----------- Okay, python can't overwrite the directory if it already exist. "rm -rf _service:extract_file:cdacclient-0.3.1", build again, it works. Actually, building out of the checkout with the "osc build openSUSE_11.4 i586 _service:extract_file:cdacclient.spec" works. Bonus error / diagnostic: Next experimental step, let's make my life easier. *cdacclient.spec should be able to replace _service:extract_file:cdacclient.spec. So, "rm -rf _service:extract_file:cdacclient-0.3.1", "osc build openSUSE_11.4 i586 *cdacclient.spec", works. Great. But, if I also remove the .spec with "rm -rf _service\:*", i.e. I'm building as if I just checked out, here is what I got: .. + mv cdacclient-0.3.1/rpm/cdacclient.spec . + exit 0 Building *cdacclient.spec for openSUSE_11.4/i586 Error: build description file named '/root/network:cluster:xtreemos/cdacclient/*cdacclient.spec' does not exist. I feel like it needs the spec file around before starting. Then I try to remove the uncompressed dir and to build with cdacclient.spec instead of *cdacclient.spec. Doesn't work. That's it for my investigation, maybe I could fix the directory to overwrite stuff for you, but I'm not familiar with python & I've not idea what's wrong with the spec file, so it's up to you. Good luck! Reproducible: Always Steps to Reproduce: 1. 2. 3. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com