Merge branch 'master' of gitorious.org:opensuse/build-service
[opensuse:build-service.git] / ReleaseNotes-2.3
1 #
2 # Open Build Service 2.3
3 #
4
5 Please read the README.SETUP file for initial installation
6 instructions or use the OBS Appliance from
7
8   http://en.opensuse.org/Build_Service/OBS-Appliance
9
10 There is also an install medium with installs OBS on hard disc now.
11
12 README.UPDATERS file has informations for updaters.
13
14 OBS Appliance users who have setup their LVM can just replace 
15 their appliance image without data loss. The migration will 
16 happen automatically.
17
18
19 Main Features
20 =============
21
22 The main topic of OBS 2.3 is to deliver a number of features to allow 
23 product maintenance handling with OBS. No external build or tracking tool 
24 is needed to do the typical maintenance workflow of a distribution team.
25
26 The usage of these features are documented in the OBS book:
27
28   http://doc.opensuse.org/products/draft/OBS/obs-reference-guide_draft/
29
30 OBS 2.3 comes also with a feature which was planned for the not released
31 OBS 2.2 version. New created projects can set to hidden. That means no source 
32 or binary read access is possible. Please read the following for details:
33
34 To be considered regarding read access checks
35 =============================================
36
37 * "access" flag is hiding and protecting entire project. This includes binaries
38   and sources. It can only be used at project creation time and can just be
39   globally enabled (aka make it public again) afterwards.
40    This flag can only be used on projects.
41
42 * "sourceaccess" flag is hiding the sources to non maintainers, this includes also debug packages
43   in case the distribution is supporting this correctly.
44     This flag can also only be used at package creation time. There is no code
45   yet which is checking for possible references to this package.
46   This flag can be used on projects or packages.
47
48 * "downloadbinary" permission still exists like before. However, unlike "access" 
49   and "sourceaccess" this is not a security feature. It is just a convinience feature, which
50   makes it impossible to get the binaries via the API directly. But it still possible
51   to get the binaries via build time in any case.
52
53 Security aspects
54 ================
55
56 Former OBS releases lack protection against XSS attacks. Esp. public instances
57 should update to OBS 2.3, which is using rails plugins to protect against XSS
58 attempts. This fixes (CVE-2011-0462).
59
60 Building in "chroot" environments is known to be unsecure. XEN and KVM is considered to
61 be a secure environment. However KVM is known to be unstable, it leads to build
62 failures.
63
64 Apache & mod_rails switch
65 =========================
66
67 Former OBS versions used lighttpd as default web server. We have switched to 
68 apache with mod_rails (known as passenger) as default web server. 
69 We have also added an mod_xforward apache module to allow unloading the rails
70 stack with long running requests to the backend.
71 Please note that current apache2 versions have a known bug which cuts the http
72 headers regardless to it's configuration. Please use apache2 from openSUSE:Tools
73 project to get this fixed for now.
74 Also the patched version of rubygem-passenger from openSUSE:Tools project is recommended.
75
76 Known Regressions to 2.1:
77 =========================
78
79 * none yet
80
81 Features:
82 =========
83
84 * web interface improvements:
85   - package filtering
86   - Generic authentification proxy support
87   - delete request dialogs
88   - request and review handling improvements
89   - social features, i.e. show other user's projects and requests
90
91 * api
92   - review of requests by project or package maintainers is possible now (FATE #310806)
93   - better Cross-Site Scripting (XSS) protection
94   - larger number of request handling improvements
95
96 * backend:
97   - dispatcher got rewritten having a more clever sort order based on defined
98     priorities and the trigger reason.
99
100
101 Changes:
102 ========
103
104 * web interface
105   - bug reporting for projects/packages is only possible if a bugowner is set
106   - XSS protection plugins are used now (CVE-2011-0462)
107
108 * api
109   - It was not possible so far to create submit requests from packages where no write access exists.
110     This is possible now, but the source package maintainer will get asked for review the request.
111   - the route /group/$GROUP is showing correct xml description and no directory anymore
112
113 * new source service handling
114   - Source services do not generate an extra commit for the result. Instead they work like
115     source links, this means the generated files become visible with expand=1 parameter.
116   - The state of the service is visible via serviceinfo element in package file list.
117
118 * The backend is only accepting write access from the localhost by default. Build results can be
119   still delivered from any host. This can be changed in BSConfig.pm
120
121 * The scheduler architectures of armvXel and armv7hl are recommended to be renamed to armvXl.
122   Package architectures can be kept to arm7hl or armv8l via the "Target: " tag in project config.
123
124 Deprecated:
125 ===========
126
127 The following calls have been marked as deprecated, they will get removed in OBS 3.0
128
129 * api
130   - /person/$LOGIN/group   ->  use /group?login=$LOGIN   instead
131
132 Requirements:
133 =============
134
135 * The OBS server should not run on a system with less than 2GB memory. 
136   4GB is recommended, esp. when the same system is also building packages.
137
138 * Use osc 0.132 or later to get access to the new features.
139
140 * Usage of Ruby on Rails version 2.3.11 is recommended.
141