More documentation work requirements and dependencies.
[opensuse:build-service.git] / INSTALL
1 ============================
2 Installation and development
3 ============================
4
5 This document explains how to setup the Build Service for development or
6 deployment.
7
8
9 Prerequisites
10 =============
11
12 Before you can start developing for the openSUSE Build Service or deploying
13 it, you have to fetch some additional dependencies in the repository. Please
14 issue the following commands in your shell:
15
16  $ git submodule init
17  $ git submodule update
18  $ git pull origin master
19
20 For simplicity, you can also use the script 'git-update', that is supplied
21 in the 'dist' folder.
22
23
24 Software dependencies
25 =====================
26
27 The various parts of the openSUSE Build Service are implemented in different
28 languages. Also, it allows to configure the database backend (e.g. you can even
29 use SQLite3 for development/testint and MySQL for production).
30
31 - Perl version 5.12.1
32 - MySQL version 5.1.46 and / or SQLite3 version 3.6.23
33 - Ruby version 1.8.7 and Ruby on Rails version 2.3.8
34
35 To get all the dependencies and useful additional tools for openSUSE-11.3,
36 please issue the following commands as root user in your shell:
37
38  $ zypper addrepo --name "openSUSE-11.3 Tool" \
39     http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.3/ \
40     opensuse-tools
41  $ zypper refresh
42  $ zypper install devel_rpm_build osc mysql-community-server sqlite3 \
43                   perl perl-Net-Domain perl-Net-SSLeay perl-BSSolv \
44                   ruby ruby-mysql rubygems rubygem-sqlite3 rubygem-rails-2_3 \
45                   rubygem-delayed_job rubygem-gruff rubygem-libxml-ruby \
46                   rubygem-sqlite3 rubygem-daemons \
47                   rubygem-exception_notification
48
49
50 Deployment
51 ==========
52
53 The Build Service is flexible enough to support several deployment scenarios.
54 These scenarios are described in the following (with increasing complexity).
55
56
57 Option 1: Only use the webui
58 ----------------------------
59
60 If you want to work only on the Rails web frontend (webui) or running your own
61 webui instance, there is no need to have an own backend server running.
62
63
64 Option 2: Use the webui and api
65 -------------------------------
66
67 TODO
68
69
70 Option 2: Setup a complete Build Service
71 ----------------------------------------
72
73 TODO
74
75
76 Development
77 ===========
78
79