Local OBS Server Tweaks

I installed a local obs (opensuse build server) server for our development and package management and ran into a couple of small issues.

1) I recommend using the obs-server package from the devel branch of the project.

2) When you are looking at the "Show Package" screen you will see that the packages are linked to which obviously won't work if you are not on localhost. In order to correct this you need to add the following to your /srv/www/obs/webclient/config/environments/production_slave.rb file

EXTERNAL_FRONTEND_HOST = "yourobs.domain.com"

The "yourobs.domain.com" address should translate to the /srv/www/obs/frontend address you setup in /etc/lighttpd/vhosts.d/obs.conf

3) When you do a search for packages on your local server some of the items come up with the address In order to change this you need to modify the production_slave.rb file listed in step 2 and have the DOWNLOAD_URL point to the domain that you have in your /etc/lighttpd/vhosts.d/obs.conf pointing to /srv/obs/repos.

In order to translate the Project:SubProj:SubSubProj paths you should also enable mod_redirect in your /etc/lighttpd/modules.conf file.  Your obs.conf for /srv/obs/repos should also have:

dir-listing.activate = "enable"

# the following redirects the project name Proj:SubProject to Proj:/SubProject
# to match the actual file path on the system
url.redirect = (
"^/(.*):([^/].*):([^/].*):([^/].*)/$" => "http://download.obs.ok.ubc.ca/$1:/$2:/$3:/$4/",
"^/(.*):([^/].*):([^/].*)/$" => "http://download.obs.ok.ubc.ca/$1:/$2:/$3/",
"^/(.*):([^/].*)/$" => "http://download.obs.ok.ubc.ca/$1:/$2/"

I am sure there is a better way to deal with the rewrite of : to :/ (especially since you can have many subprojects) but for now this is what I use. If you have something better please let me know.

Tagged on: ,

Leave a Reply