Easy OBS Web Client Development

The web interface of the openSUSE Build Service behind http://build.opensuse.org is written with Ruby on Rails. The good thing about this is that you can easily setup an own instance of the web interface on your workstation using the server behind http://api.opensuse.org. All what you need is to checkout the sources, install the ruby on rails packages and run the server.

Installing the Ruby framework in matching release can be done as root user via:

# zypper sa http://download.opensuse.org/repositories/openSUSE:Tools/YOUR_DISTRO openSUSE:Tools
# zypper install rubygem-rails-2_0

Getting the source code is easy just by anonymous checkout from svn:

# svn co https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/

Running the web interface is really easy now just by running

# cd buildservice/src/webclient
# ruby script/server

This runs a local instance where you can connect with any web browser using http://0.0.0.0:3000/ URL. So there is no need to install a full build service, no database administration, just checkout and run it 🙂 You can easily edit files esp. below the app/ directory and customize or improve the web interface for your needs.

Of course it is easy to get svn write access, if you provide a useful patch 🙂

Have fun.

Advertisements

About adrianS
works on OBS OBS (openSUSE Build Service), but spend some residual time also with sailing, music and of course lots of car driving.

3 Responses to Easy OBS Web Client Development

  1. Peer Schmidt says:

    Hey, it really worked out of the box 🙂

    Do you have any suggestion what I could implement ?
    I will not be fast, but I would like to learn Ruby on Rails.

  2. Thanks Adrian,

    It is a great tip, the webclient really worked. Now I will spent rest of the week exploring webclient’s code so I have better understanding before I actually start coding.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: