[opensuse-buildservice] issue with BS from scratch
Hi, while installing BS from scratch on a 11.1 server, I ran in a couple of issues. I'm using this repo: http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.1 as documented in: http://wiki.opensuse.org/openSUSE:Build_Service_Installation_SUSE zypper in obs-server obs-worker obs-api obs-utils Then I followed: /usr/share/doc/packages/obs-api/README.SETUP, putting optional steps aside, which was pretty straight forward: # rcobsrepserver start Initializing obsrepserver done # rcobssrcserver start Initializing obssrcserver done # rcobsscheduler start Initializing obsscheduler done # rcobsdispatcher start Initializing obsdispatcher done # rcobspublisher start Initializing obspublisher done up until point 2.1: # rcobsworker start Run 8 obsworker using /var/cache/obs/worker cpio: premature end of archive chmod: cannot access `bs_worker': No such file or directory What's up, here: # bash -x /etc/init.d/obsworker start [...] + echo 'Run 8 obsworker using /var/cache/obs/worker' Run 8 obsworker using /var/cache/obs/worker + '[' yes == yes ']' ++ slptool findsrvs service:obs.repo_server ++ sed -n 's/service:obs.repo_server:\([^,]*\),.*/\1/p' + '[' -d /var/run/obs/worker/boot ']' + pushd /var/run/obs/worker/boot + curl -s http://localhost:5252/getworkercode + cpio --quiet --extract cpio: premature end of archive + ln -s . XML + chmod 755 bs_worker chmod: cannot access `bs_worker': No such file or directory + popd Hmm, there's no such thing like http://localhost:5252: # netstat -anp | grep ':5252' # Digging deeper: cat /srv/obs/log/rep_server.log 2010-07-22 15:08:43: AJAX: bs_repserver started 2010-07-22 15:08:43: bs_repserver started on port 6262 Ahh, it's listening on 6262 now. Fixing /etc/sysconfig/obs-worker... Now proceeding up until 3.2, setting up lighttpd. You say, that http://127.0.42.1 resp. http://127.0.42.2 are preconfigured. Looking into /etc/lighttpd/vhosts.d/obs.conf, there is only the PORT defined, doesn't that mean, that it binds to any local address? Sorry for asking these silly questions, but I need to modify this setting in order to get my apache going again, and you're documenting these changes quite extensively, but the references to 127.0.42.* are misleading then, aren't they? Now proceeding up until 4.1, creating a reference project. Running the command: # curl -0 --user "Admin:opensuse" -X PUT -T /usr/share/doc/packages/obs-api/openSUSE.org.xml http://127.0.42.2/source/openSUSE.org/_meta results in some html page printed to the console here. In the middle one can read: <!-- Start: Main Content Area --> <div id="content" class="container_16 content-wrapper"> <div class="grid_16 box box-shadow alpha omega"> <h1>openSUSE Webclient Error:</h1> <h2>Target not found</h2> <p>A non existing page was requested.</p> <h3>Error Details:</h3> <p> <strong>Errorcode: </strong>404<br/> <strong>Message: </strong>no such route<br/> </p> </div> </div> <!-- End: Main Content Area --> Hmm, another issue, I guess. Looking at the destination path, it wants to write to http://127.0.42.2/source/openSUSE.org/_meta, but http://127.0.42.2 is going to match $SERVER["socket"] == ":80" in /etc/lighttpd/vhosts.d/obs.conf, which points to /srv/www/obs/webui, and yes, there is no such directory named source (and it's rather questionable, if that's really the intended destination, since this kind of data would much better fit the /srv/obs hierarchy, but there's no such dir either.. What am I missing here? Thanks for any enlightenment in advance, Pete -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Thursday 22 July 2010 16:52:18 Hans-Peter Jansen wrote:
Hi,
while installing BS from scratch on a 11.1 server, I ran in a couple of issues.
I'm using this repo: http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.1
as documented in: http://wiki.opensuse.org/openSUSE:Build_Service_Installation_SUSE
zypper in obs-server obs-worker obs-api obs-utils
Then I followed: /usr/share/doc/packages/obs-api/README.SETUP, putting optional steps aside, which was pretty straight forward:
# rcobsrepserver start Initializing obsrepserver done # rcobssrcserver start Initializing obssrcserver done # rcobsscheduler start Initializing obsscheduler done # rcobsdispatcher start Initializing obsdispatcher done # rcobspublisher start Initializing obspublisher done
up until point 2.1:
# rcobsworker start Run 8 obsworker using /var/cache/obs/worker cpio: premature end of archive chmod: cannot access `bs_worker': No such file or directory
What's up, here:
# bash -x /etc/init.d/obsworker start [...] + echo 'Run 8 obsworker using /var/cache/obs/worker' Run 8 obsworker using /var/cache/obs/worker + '[' yes == yes ']' ++ slptool findsrvs service:obs.repo_server ++ sed -n 's/service:obs.repo_server:\([^,]*\),.*/\1/p' + '[' -d /var/run/obs/worker/boot ']' + pushd /var/run/obs/worker/boot + curl -s http://localhost:5252/getworkercode + cpio --quiet --extract cpio: premature end of archive + ln -s . XML + chmod 755 bs_worker chmod: cannot access `bs_worker': No such file or directory + popd
Hmm, there's no such thing like http://localhost:5252:
# netstat -anp | grep ':5252' #
Digging deeper: cat /srv/obs/log/rep_server.log
2010-07-22 15:08:43: AJAX: bs_repserver started 2010-07-22 15:08:43: bs_repserver started on port 6262
Ahh, it's listening on 6262 now. Fixing /etc/sysconfig/obs-worker...
that is a non default port
Now proceeding up until 3.2, setting up lighttpd. You say, that http://127.0.42.1 resp. http://127.0.42.2 are preconfigured. Looking into /etc/lighttpd/vhosts.d/obs.conf, there is only the PORT defined, doesn't that mean, that it binds to any local address? Sorry for asking these silly questions, but I need to modify this setting in order to get my apache going again, and you're documenting these changes quite extensively, but the references to 127.0.42.* are misleading then, aren't they?
Now proceeding up until 4.1, creating a reference project.
Running the command:
# curl -0 --user "Admin:opensuse" -X PUT -T /usr/share/doc/packages/obs-api/openSUSE.org.xml http://127.0.42.2/source/openSUSE.org/_meta
results in some html page printed to the console here.
In the middle one can read:
<!-- Start: Main Content Area --> <div id="content" class="container_16 content-wrapper">
<div class="grid_16 box box-shadow alpha omega"> <h1>openSUSE Webclient Error:</h1>
<h2>Target not found</h2> <p>A non existing page was requested.</p>
<h3>Error Details:</h3> <p> <strong>Errorcode: </strong>404<br/> <strong>Message: </strong>no such route<br/> </p> </div> </div> <!-- End: Main Content Area -->
Hmm, another issue, I guess. Looking at the destination path, it wants to write to http://127.0.42.2/source/openSUSE.org/_meta, but http://127.0.42.2 is going to match $SERVER["socket"] == ":80" in /etc/lighttpd/vhosts.d/obs.conf, which points to /srv/www/obs/webui, and yes, there is no such directory named source (and it's rather questionable, if that's really the intended destination, since this kind of data would much better fit the /srv/obs hierarchy, but there's no such dir either..
What am I missing here?
you try to connect to the webui with osc, not to the api. use something like http://$server:81 as apiurl -- 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
Dear Adrian, thanks for listening. I really hate to bother you with such sillyness, but getting my own BS running outweighs my reservations ATM.. ;-) On Thursday 22 July 2010, 17:24:31 Adrian Schröter wrote:
On Thursday 22 July 2010 16:52:18 Hans-Peter Jansen wrote:
# netstat -anp | grep ':5252' #
Digging deeper: cat /srv/obs/log/rep_server.log
2010-07-22 15:08:43: AJAX: bs_repserver started 2010-07-22 15:08:43: bs_repserver started on port 6262
Ahh, it's listening on 6262 now. Fixing /etc/sysconfig/obs-worker...
that is a non default port
Hrmpf. Although I reinstalled everything, I've got a dangling obs-server-1.0.0-4.4 package hanging around (that had this default). It didn't got replaced, because of a zypper lock on createrepo (because 0.9 had some issues, that I only remember vagely) :-(. My fault. Fixed it up. These pkgs are running now: obs-api-2.0.4-3.1 obs-common-2.0.1-1.1 obs-server-2.0.4-3.1 obs-utils-2.0.4-3.1 obs-worker-2.0.4-3.1 [...]
you try to connect to the webui with osc, not to the api.
use something like
as apiurl
Please find a respective documentation fix attached. The curl command now responds with: <?xml version="1.0" encoding="UTF-8"?> <status code="ok"> <summary>Ok</summary> <details></details> </status> which looks sane. Unfortunately, I'm still stuck in 6. While the apisrv instruction seems deprecated now, it fails with and without it in the same way: osc -A http://localhost:81 meta prj openSUSE:Tools -e # it loads the openSUSE:Tools project file correctly, I just moved one repository section above the Reply
On Thursday 22 July 2010 23:06:13 Hans-Peter Jansen wrote: ...
you try to connect to the webui with osc, not to the api.
use something like
as apiurl
Please find a respective documentation fix attached.
Thanks, I have imported most parts of it.
Unfortunately, I'm still stuck in 6. While the apisrv instruction seems deprecated now, it fails with and without it in the same way:
osc -A http://localhost:81 meta prj openSUSE:Tools -e # it loads the openSUSE:Tools project file correctly, I just moved one repository section above the Reply
On Friday 23 July 2010, 08:24:23 Adrian Schröter wrote:
On Thursday 22 July 2010 23:06:13 Hans-Peter Jansen wrote:
Please find a respective documentation fix attached.
Thanks, I have imported most parts of it.
Nice, even better but you missed one ;-) See below.. Also, the hint to run OBS as an appliance is interesting, but unfortunately not written yet. [...]
You need to use
openSUSE.org:openSUSE:11.1
when specifing the repository. openSUSE.org is the local project which provides all content from the remote instance.
Understood. Now I have successfully added a project and a package in my bs. Proceeding to the distribute step: $ cd ~/VCS/GIT/build-service/dist $ OSCOPT="-A http://localhost:81" ./distribute Server returned an error: HTTP Error 404: Not Found Error getting meta for project 'openSUSE:Tools:Devel' package 'obs-all-svn' Unknown project 'openSUSE:Tools:Devel' Hmm, even adding the missing prj/pkg the same way as done above keeps this error state. Given, that development is done in git, the svn references doesn't spread confidence, either. Nevertheless, from this point, I'm able to add some source to the project in familiar ways, e.g. I've checked out openSUSE:Tools/obs-server from my OBS, copied the files from the official openSUSE:Tools/obs-server BS package, which leads to the error condition below: nothing provides obs-common, nothing provides rubygem-rails-2_3 >= 2.3.5, nothing provides rubygem-rmagick, nothing provides build >= 2009.05.04, nothing provides perl-BSSolv How do I trick my BS to really use the openSUSE.org packages without adding each of them manually? Pete
On Friday 23 July 2010 11:12:20 Hans-Peter Jansen wrote:
On Friday 23 July 2010, 08:24:23 Adrian Schröter wrote:
On Thursday 22 July 2010 23:06:13 Hans-Peter Jansen wrote:
Please find a respective documentation fix attached.
Thanks, I have imported most parts of it.
Nice, even better but you missed one ;-) See below..
two actually, fixed. thanks.
Also, the hint to run OBS as an appliance is interesting, but unfortunately not written yet.
it is written. Just the wiki got dropped :/ linked is fixed now.
You need to use
openSUSE.org:openSUSE:11.1
when specifing the repository. openSUSE.org is the local project which provides all content from the remote instance.
Understood. Now I have successfully added a project and a package in my bs.
Proceeding to the distribute step:
$ cd ~/VCS/GIT/build-service/dist $ OSCOPT="-A http://localhost:81" ./distribute Server returned an error: HTTP Error 404: Not Found Error getting meta for project 'openSUSE:Tools:Devel' package 'obs-all-svn' Unknown project 'openSUSE:Tools:Devel'
Hmm, even adding the missing prj/pkg the same way as done above keeps this error state. Given, that development is done in git, the svn references doesn't spread confidence, either.
Nevertheless, from this point, I'm able to add some source to the project in familiar ways, e.g. I've checked out openSUSE:Tools/obs-server from my OBS, copied the files from the official openSUSE:Tools/obs-server BS package, which leads to the error condition below:
nothing provides obs-common, nothing provides rubygem-rails-2_3 >= 2.3.5, nothing provides rubygem-rmagick, nothing provides build >= 2009.05.04, nothing provides perl-BSSolv
How do I trick my BS to really use the openSUSE.org packages without adding each of them manually?
These are available in the repository of openSUSE:Tools project. I would add this repo and zypper in should work without problems. 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
On Friday 23 July 2010, 14:49:31 Adrian Schröter wrote:
On Friday 23 July 2010 11:12:20 Hans-Peter Jansen wrote:
nothing provides obs-common, nothing provides rubygem-rails-2_3 >= 2.3.5, nothing provides rubygem-rmagick, nothing provides build >= 2009.05.04, nothing provides perl-BSSolv
How do I trick my BS to really use the openSUSE.org packages without adding each of them manually?
These are available in the repository of openSUSE:Tools project. I would add this repo and zypper in should work without problems.
Of course they are. The matter is, that BS should pick them up in order to build the package in question. Probably, I've deleted too much context from this conversation. Sorry. Here's, what I've done (still following README.SETUP): $ osc -A http://localhost:81 meta prj openSUSE:Tools -e # :%s/project="openSUSE:11.1"/project="openSUSE.org:openSUSE:11.1"/ Sending meta data... Done. $ osc -A http://localhost:81 meta pkg openSUSE:Tools obs-server -e # just do a small mod: add a title, otherwise it doesn't get written Sending meta data... Done. The project and package are visible in the local BS webui now. According to README.SETUP, section 6.1, I should prepare the check-in now: <quote> (in a svn co of the current openSUSE build server, in the buildservice/dist subdir) [...] Now prepare for a check-in. This will do a checkout and locally build using the packages from your local buildserver: OSCOPT="-A http://$servername:81" ./distribute </quote> # ~/VCS/GIT/build-service is the current build-service git tree here $ cd ~/VCS/GIT/build-service/dist $ OSCOPT="-A http://localhost:81" ./distribute Server returned an error: HTTP Error 404: Not Found Error getting meta for project 'openSUSE:Tools:Devel' package 'obs-all-svn' It looks like that part of README.SETUP doesn't work anymore. Now, in order to get the BS to build something, I did this: # check out empty package $ osc -A http://localhost:81 co openSUSE:Tools/obs-server $ cd openSUSE:Tools/obs-server # copy the files of obs-server from openSUSE BS into local pkg $ cp ~/src/obs/openSUSE:Tools/obs-server/* . $ > l insgesamt 4920 drwxr-xr-x 3 hp lisa 129 23. Jul 10:38 ./ drwxr-xr-x 4 hp lisa 34 23. Jul 10:38 ../ -rw-r--r-- 1 hp lisa 1256318 23. Jul 10:38 obs-server-2.0.4.tar.bz2 -rw-r--r-- 1 hp lisa 16382 23. Jul 10:38 obs-server.changes -rw-r--r-- 1 hp lisa 21961 23. Jul 10:38 obs-server.spec -rw-r--r-- 1 hp lisa 3738866 23. Jul 10:38 opensuse-themes-2.0.tar.bz2 drwxr-xr-x 2 hp lisa 85 23. Jul 10:38 .osc/ # add files and check in package $ osc -A http://localhost:81 add * A obs-server-2.0.4.tar.bz2 A obs-server.changes A obs-server.spec A opensuse-themes-2.0.tar.bz2 $ osc -A http://localhost:81 ci -m "initial commit" Sending obs-server-2.0.4.tar.bz2 Sending obs-server.changes Sending obs-server.spec Sending opensuse-themes-2.0.tar.bz2 Transmitting file data .... Committed revision 1. $ osc -A http://localhost:81 r openSUSE_11.1 x86_64 openSUSE_11.1 i586 unresolvable The webui Monitor says: nothing provides obs-common, nothing provides rubygem-rails-2_3 >= 2.3.5, nothing provides rubygem-rmagick, nothing provides build >= 2009.05.04, nothing provides perl-BSSolv How am I supposted to use zypper in this scenario? Puzzled and stuck, Pete P.S.: I'm really willing to fix the related documentation, but that implies, that I'm getting there... -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Friday 23 July 2010, 15:57:10 Hans-Peter Jansen wrote:
On Friday 23 July 2010, 14:49:31 Adrian Schröter wrote:
On Friday 23 July 2010 11:12:20 Hans-Peter Jansen wrote:
nothing provides obs-common, nothing provides rubygem-rails-2_3 >= 2.3.5, nothing provides rubygem-rmagick, nothing provides build >= 2009.05.04, nothing provides perl-BSSolv
How do I trick my BS to really use the openSUSE.org packages without adding each of them manually?
These are available in the repository of openSUSE:Tools project. I would add this repo and zypper in should work without problems.
Of course they are. The matter is, that BS should pick them up in order to build the package in question.
Hmm, no answer. Let me rephrase my question: is it possible to resolve package dependencies of a given package somewhat automatically in a local BS incarnation? Say, if you want to rebuild the openSUSE:/Tools/obs-server package in a local BS: it depends on several packages from the same repo. Am I really need to copy or link all packages one by one in order to get the rebuild started? Pete PS: Meanwhile I've followed http://en.opensuse.org/openSUSE:Build_Service_Appliance to setup the BS based on the kiwi images and kvm, only to harvest the exact same issue... -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 2010-07-27 14:44:44 +0200, Hans-Peter Jansen wrote:
Hmm, no answer.
Let me rephrase my question: is it possible to resolve package dependencies of a given package somewhat automatically in a local BS incarnation?
Say, if you want to rebuild the openSUSE:/Tools/obs-server package in a local BS: it depends on several packages from the same repo. Am I really need to copy or link all packages one by one in order to get the rebuild started?
1. set up buildservice remoting (the appliance has a button for it on the start page) 2. build against openSUSE.org:openSUSE:Tools 3. then you can even link packages directly out of our obs. that doesnt work for you? darix -- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (3)
-
Adrian Schröter
-
Hans-Peter Jansen
-
Marcus Rueckert