Jump to: navigation, search

Recommenders/Attic/TeamServer

Prerequisites

  • Decent Linux/Win/Mac box with 2GHz, 2G RAM and Java 6 or better.
  • Apache CouchDB 2.0 or higher (not officially released)
  • Code Recommenders Team Server 0.4 or higher

Installation

Apache CouchDB

Code Recommenders Team Server

  • Download Code Recommenders latest team server from here.
  • Unzip the server to any directory on your local disc.
  • Call $SERVER_HOME/start.sh (you may set the x-flag to execute the script).
  • TODO: missing! how to create databases and views for non-ui based team server? Should we run a startup script if dbs do not exist?

Server Configuration

In $SERVER_HOME/configuration/config.ini, the code search server url has to be modified to point to your actual service that offers the source code files.

org.eclipse.recommenders.server.codesearch.baseUrl=http\://recommenders1.st.informatik.tu-darmstadt.de/codesearch

TODO: this should be simplified. Every installation needs to change this setting. Is there a simple way to figure out under which IP/name the JAX-RS webservice was queried?

Client Configuration

Update your clients to use the new server instead of Code Recommenders' default server by changing the following urls in Preferences>>Code Recommenders:

See Recommenders/TeamServer#User Friendly URLs to see how to get rid of the port numbers.

Building Models

TODO: Point to a crowd-sourcing page and explain that data needs to be uploaded by the clients into the team server.

TODO: explain how to set up the cron-job to generate new extdoc and calls models on a nightly basis.

Optional Configuration

User Friendly URLs

Code Recommenders server is per default started on port 29750. You may override this by editing $SERVER_HOME/configuration/configuration.ini or by using an existing Apache HTTPD server as proxy. How to use an existing Apache HTTPD as proxy is shown below:

# in /etc/apache2/mods-enabled/proxy.conf add:

<IfModule mod_proxy.c>
        [...]

        ProxyPass /udc http://localhost:29750/udc
        ProxyPassReverse /udc http://localhost:29750/udc

        ProxyPass /extdoc http://localhost:5984/extdoc
        ProxyPassReverse /extdoc http://localhost:5984/extdoc

        ProxyPass /codesearch http://localhost:29750/codesearch
        ProxyPassReverse /codesearch http://localhost:29750/codesearch

</IfModule>

Then enable required modules and restart the server:

root@host:# a2enmod proxy
root@host:# a2enmod proxy_http
root@host:# service apache2 restart