Mailinglist Archive: opensuse-buildservice (261 mails)

< Previous Next >
Re: [opensuse-buildservice] ppc
  • From: Martin Mohring <martin.mohring@xxxxxxxxx>
  • Date: Tue, 17 Jun 2008 17:04:02 +0200
  • Message-id: <4857D262.6010602@xxxxxxxxx>
Martin Mohring wrote:
OK, you have pkgs all at hand, fine.

Then start the OBS, including the scheduler (e.g. ppc scheduler)

Then goto "create project", e.g. http://<your webclient ip>/project/new
Give the project the name "openSUSE:11.0". You can leave everthing else
blank.

Then put this to a file:

<project name="openSUSE:11.0">
<title>openSUSE 11.0 distribution</title>
<description>The openSUSE 11.0 distribution.</description>
<person userid="MartinMohring" role="maintainer"/>
<person userid="MartinMohring" role="bugowner"/>

Sorry, leave out the two lines with "<person userid=...>", copy and
paste from my OBS
<build>
<disable/>
</build>
<publish>
<disable/>
</publish>
<repository name="standard">
<arch>ppc</arch>
</repository>
</project>

then call:

$ osc -A <your local api ip> meta prj -F <filename you put this in>
openSUSE:11.0

Control success by opening http://<your webclient
ip>/project/show?project=openSUSE%3A11.0.

Then stop the OBS, install the .noarch.rpm and ppc.rpm inside
"/srv/obs/build/openSUSE:11.0/standard/ppc/:full", then restart the OBS
and wait some minutes. Anyway,
the OBS monitor http://<your local webclient ip>/monitor schould tell
you that

ppc: running for 38 minutes (last restart: ....)
dispatcher: running for about 1 hour (last restart: ...)
publisher: running for about 1 hour (last restart: ...)

these 3 processes are running. You can follow progress by watching the
logfiles inside: "/srv/obs/log" directory.

Martin

Peter Czanik wrote:

Hello,

Martin Mohring írta:

Martin Mohring wrote:


Hi,

first you select some ppc distro. Lets assume it is openSUSE 11.0 ppc.
You download the packages, e.g. from some mirror server.
The description is only for a x86 server and ppc workers.


The reason is: I did not in detail look if all the packages (e.g. ruby
rails etc.) all can run on ppc without rebuild for ppc. .noarch.rpm is
unproblematic, and scripting like osc is also, athough these packages
are packaged for i586/x86_64.


I recompiled all the missing packages on PPC using lbuild without any
problems. BTW: there are two rails versions, which is right?


And: the OBS needs ca. 1.5 GB RAM, esp. the scheduler. 512 MB is
definitely too small to run OBS Server + Workers.


Well, until now it swapped only 72k when even firefox was running on
the machine and I'm already looking for a RAM upgrade. I'd like to
keep everything on the same machine - if possible. Bye,
CzP


You are running openSUSE 11.0 ppc also on your machine, so you have the
.rpm pkgs at hand, dont you?

Then you need to install the following pkgs for openSUSE 11.0 on the
x86
machine
createrepo
deb
lzma
python-gpgme
python-kid
python-setuptools
repoview
yum
yum-metadata-parser

Then you install the following pkgs from OBS:
build
obs-server
obs-api
obs-worker
osc

The ppc workers needs:
obs-worker
osc - take here the i586 version for a 32 bit ppc system
build

Then change the following lines of code (OBS server):

Index: buildservice/src/webclient/app/views/project/add_target.rhtml
===================================================================
---
buildservice/src/webclient/app/views/project/add_target.rhtml
(revision 4179)
+++
buildservice/src/webclient/app/views/project/add_target.rhtml
(working copy)
@@ -20,7 +20,7 @@
</td>
<td valign="top">
<b>Architectures:</b><br/>
- <% [:i586, :x86_64].each do |arch| %>
+ <% [:i586, :x86_64, :ppc].each do |arch| %>
<%= check_box_tag "arch[#{arch}]", "", true %><%=arch%><br>
<% end %>
</td>

Then add a project (you can also omit i586/x86_64, if not required)
with
osc:

<project name="openSUSE:11.0">
<title>openSUSE 11.0 distribution</title>
<description>The openSUSE 11.0 distribution.</description>
<build>
<disable/>
</build>
<publish>
<disable/>
</publish>
<repository name="standard">
<arch>i586</arch>
<arch>x86_64</arch>
<arch>ppc</arch>
</repository>
</project>

Then look for /srv/obs/build/openSUSE:11.0/standard, there should
now be
the 3 (or only ppc) directories:
i586 ppc x86_64
Then you create inside ppc a new directory "ppc/:full", inside there
you
put the .noarch.rpm and .ppc.rpm.

Then configure the scheduler also for ppc (on the OBS server):

$ cat /etc/sysconfig/obs-server
## Path: Applications/OBS
## Description: define for which architectures the packages should
get build
## Type: stringlist
## Default: "i586"
## Config: OBS
#
# This needs to be a space seperated list of all supported
architectures

OBS_SCHEDULER_ARCHITECTURES="i586 x86_64 ppc"

Start the OBS machine, it should indicate a ppc scheduler in the
monitor
page.

Peter Czanik wrote:


Hello,

Peter Czanik írta:


*Errorcode: *unknown
*Message: *<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";> <html
xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en" lang="en"> <head>
<title>404 - Not Found</title> </head> <body> <h1>404 - Not
Found</h1> </body> </html>


OK, I worked around this. It started to work as soon, as I changed
back to 127.0.42.1.

My next problem is: how do I add a repo? When I try based on the
README.SETUP I get:

suse8610-110:~ # obs_mirror_project openSUSE:11.0 standard ppc
Server returned an error: HTTP Error 404: Not Found
project has no architecture 'ppc'
/usr/lib/ruby/1.8/rexml/source.rb:149:in `initialize': undefined
method `[]' for nil:NilClass (NoMethodError)
from /usr/lib/ruby/1.8/rexml/source.rb:16:in `new'
from /usr/lib/ruby/1.8/rexml/source.rb:16:in `create_from'
from /usr/lib/ruby/1.8/rexml/parsers/baseparser.rb:133:in
`stream='
from /usr/lib/ruby/1.8/rexml/parsers/baseparser.rb:110:in
`initialize'
from /usr/lib/ruby/1.8/rexml/parsers/treeparser.rb:9:in `new'
from /usr/lib/ruby/1.8/rexml/parsers/treeparser.rb:9:in
`initialize'
from /usr/lib/ruby/1.8/rexml/document.rb:205:in `new'
from /usr/lib/ruby/1.8/rexml/document.rb:205:in `build'
from /usr/lib/ruby/1.8/rexml/document.rb:42:in `initialize'
from /usr/sbin/obs_mirror_project:48:in `new'
from /usr/sbin/obs_mirror_project:48
suse8610-110:~ #

The other I tried is based on the wiki: crate a project and add a
repo. But that does not seem to work either. When I add openSUSE 11.0
I t uses the following URL, which does not mention PPC at all:
http://127.0.42.1/project/save_target?arch[i586]=&arch[x86_64]=&platform=openSUSE.org%3AopenSUSE%3A11.0%2Fstandard&project=proba&targetname=openSUSE_11.0


and results in an error anyway:
"
OpenSUSE Webclient Error:

Error Details:
Errorcode: package_save_error
Message: error saving project: unable to walk on path
'openSUSE.org:openSUSE:11.0/standard'
"

Martin: you mentioned, that you had to modify a few lines in OBS.
Where/what?
Bye,
CzP



---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail:
opensuse-buildservice+help@xxxxxxxxxxxx




---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx


---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx







---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx

< Previous Next >