add identifier link to conventions list
[arvados.git] / doc / install / install-workbench-app.md
1 ---
2 layout: default
3 navsection: installguide
4 title: Install the Arvados workbench application
5 navorder: 2
6 ---
7
8 {% include alert-stub.html %}
9
10 # Workbench setup
11
12 ## Prerequisites
13
14 1. A GNU/linux (virtual) machine (can be shared with the API server)
15 2. A hostname for your workbench application
16
17 ## Download the source tree
18
19 Please follow the instructions on the [Download page](https://arvados.org/projects/arvados/wiki/Download) in the wiki.
20
21 ## Configure the Workbench application
22
23 You need to update config/initializers/secret_token.rb. Generate a new secret with
24
25     rake secret
26
27 and put it in `config/initializers/secret_token.rb`
28
29     Server::Application.config.secret_token = 'your-new-secret-here'
30
31 Adjust the following fields in your `environments/production.rb` file.
32
33 * `config.site_name` can be the URL of your workbench install.
34 * `config.arvados_login_base` and `config.arvados_v1_base` should point to
35 your API server. Use the example values as a guide.
36 * If you choose not to use https, make sure to also set
37 `config.force_ssl = false` in the API server's `production.rb` file.
38
39 ## Apache/Passenger
40
41 Set up Apache and Passenger. Point them to the apps/workbench directory in the source tree.
42
43 ## "Trusted client" setting
44
45 Log in to Workbench once (this ensures that the Arvados API server has
46 a record of the Workbench client).
47
48 In the API server project root, start the rails console.
49
50     RAILS_ENV=production bundle exec rails c
51
52 Locate the ApiClient record for your Workbench installation.
53
54     ApiClient.where('url_prefix like ?', '%workbench%')
55
56 Set the `is_trusted` flag for the appropriate client record.
57
58     ApiClient.find(1234).update_attributes is_trusted: true
59