Mailinglist Archive: opensuse-buildservice (244 mails)

< Previous Next >
[opensuse-buildservice] Using OBS appliance 2.3.1 out of the box ==> Tweaking requirement
Hi OBS newbies users … (hope also some useful commentaries from guru if needed)

Starting an OBS appliance in Virtual Machine for MeeGo building is quite easy
with the knowledge of few tricks
Lot of usefull information could be found on
http://en.opensuse.org/openSUSE:Build_Service_private_installation
NB: some of them are replicated here (apologize for copying ...)

I've been using virtualbox 4.12 for this using xubuntu 11.10 as host OS ...

Supposing that downloading, uncompressing and basic use of virtualbox is known
...
→ Setting a new Virtual machine  :
- Attach the VMDK appliance to virtual machine
- Attach secondary VDI drive (fixed size of at least 30Gb) ==> this will be
for OBS storage data [LVM]
- Depending on your Host capabilities (less than 6Gb of Memory) you may need
to attach a third VDI drive of 10Gb for workers.

→ Boot the virtual machine and login
Secondary drive (OBS storage) should be is seen as /dev/sdb
Third drive (if attached) should be seen as /dev/sdc
Start the ssh server (on boot and now) because I found that use of the virtual
box console is a bit uncomfortable !!
insserv sshd
sshd start

*********************************************************************************
⇒ From this point you may log from another host using ssh ...
*********************************************************************************

→ Stop the all of OBS server process :
- find /etc/init.d -name obs\* -exec {} stop \;
- rcmysql stop

→ Configure the secondary drive (OBS storage) as LVM (/dev/OBS/server) :
fdisk /dev/sdb  (create a new primary partition with type 8e).
pvcreate /dev/sdb1
 vgcreate "OBS" /dev/sdb1
lvcreate --extents 100%VG -n "server"  OBS
mkfs.ext4 /dev/OBS/server

→ Clean previously created files during appliance initialization
rm –Rf /srv/obs/*
rm -Rf /var/cache/obs/worker
This will save some space because appliance has only 300Mb space left on the
rootfs and this space is temporarily used will importing package from other OBS
server using the "osc copypac". For example, the QT package is about 200 Mb ...
and if there is less disk space then your package size on the rootfs, the
copypac command will fail.

→ Configure disk space for workers ...
Option A : if your host can allocate at least 5Gb for a ramdisk you need to add
the following line in /etc/fstab
tmpfs /var/cache/obs/worker tmpfs defaults,size=5G,mode=777  0   0
Option B: your host as not so much memory then you need to use the third drive
fdisk /dev/sdc (create a new primary partition with type 83).
mkfs.ext4 /dev/sdc1

→ You may be are behind a firewall so you need to set some proxy. There are to
settings on OBS.
One is to allow OpenSuse to access world and the setting are located in
/etc/sysconfig/proxy
Second is to allow OBS to access world and is located in
/usr/lib/obs/server/BSConfig

→ Adapt the type of architecture to you want to build : settings are located in
/etc/sysconfig/obs-server

→ There is still a small bug on the OBS 2.3.1 for published binaries web access
The file to correct is
/etc/apache2/vhosts.d/obs.conf
In the "# Build Results" section you have to replace
"/srv/obs/repos" by "/obs/repos" making

*********************************************************************************
⇒ At this point your Appliance is almost ready : just need to reboot in order
to activate properly all attached drives and let OBS reinstall the webUI and
the database
*********************************************************************************

If you have plan to build package for non Intel architecture there are some
additional tweaking.
OBS is capable for building other architectures out of the box, but it is not
fully ready for this.
You will need to inform the linux kernel that the it will have to support other
architectures.
For this you need to run a script :
/usr/sbin/qemu-binfmt-conf.sh
But it is not part of the original appliance packages... It belong to the
qemu-linux-user package so you need to install this package ...
zypper addrepo
http://download.opensuse.org/repositories/Virtualization/openSUSE_12.1/Virtualization.repo
zypper refresh
zypper install qemu-linux-user
Copy the script to the root directory
cp /usr/sbin/qemu-binfmt-conf.sh .
The package is not need anymore on OBS ... so to save place (about 90Mb)
remove it
zypper remove qemu-linux-user
Stop all Workers, run the script, then restart the Workers ...
rcobsworker stop
./ qemu-binfmt-conf.sh
rcobsworker start

These last 3 commands will be required each time you restart the appliance
(with workers in a ramdisk for my settings)... It may be not necessary if
workers are in a attached third drive ...

****
From now you will have to import your build target (not covered in this mail)
If the project config is based taken from old OBS version, it may need some
tweaking to match last OBS building settings for non Intel architecture ...
Take a look to openSUSE:Factory:ARM project config to see the required
adaptation
****


Regards

Xavier
-- Disclaimer ------------------------------------
Ce message ainsi que les eventuelles pieces jointes constituent une
correspondance privee et confidentielle a l'attention exclusive du destinataire
designe ci-dessus. Si vous n'etes pas le destinataire du present message ou une
personne susceptible de pouvoir le lui delivrer, il vous est signifie que toute
divulgation, distribution ou copie de cette transmission est strictement
interdite. Si vous avez recu ce message par erreur, nous vous remercions d'en
informer l'expediteur par telephone ou de lui retourner le present message,
puis d'effacer immediatement ce message de votre systeme.

*** This e-mail and any attachments is a confidential correspondence intended
only for use of the individual or entity named above. If you are not the
intended recipient or the agent responsible for delivering the message to the
intended recipient, you are hereby notified that any disclosure, distribution
or copying of this communication is strictly prohibited. If you have received
this communication in error, please notify the sender by phone or by replying
this message, and then delete this message from your system.
< Previous Next >
This Thread
  • No further messages