feat(provision): refactor to add other setup examples
[arvados.git] / tools / salt-install / config_examples / single_host / single_hostname / arvados.sls
1 ---
2 # Copyright (C) The Arvados Authors. All rights reserved.
3 #
4 # SPDX-License-Identifier: AGPL-3.0
5
6 # The variables commented out are the default values that the formula uses.
7 # The uncommented values are REQUIRED values. If you don't set them, running
8 # this formula will fail.
9 arvados:
10   ### GENERAL CONFIG
11   version: '__VERSION__'
12   ## It makes little sense to disable this flag, but you can, if you want :)
13   # use_upstream_repo: true
14
15   ## Repo URL is built with grains values. If desired, it can be completely
16   ## overwritten with the pillar parameter 'repo_url'
17   # repo:
18   #   humanname: Arvados Official Repository
19
20   release: __RELEASE__
21
22   ## IMPORTANT!!!!!
23   ## api, workbench and shell require some gems, so you need to make sure ruby
24   ## and deps are installed in order to install and compile the gems.
25   ## We default to `false` in these two variables as it's expected you already
26   ## manage OS packages with some other tool and you don't want us messing up
27   ## with your setup.
28   ruby:
29     ## We set these to `true` here for testing purposes.
30     ## They both default to `false`.
31     manage_ruby: true
32     manage_gems_deps: true
33     # pkg: ruby
34     # gems_deps:
35     #     - curl
36     #     - g++
37     #     - gcc
38     #     - git
39     #     - libcurl4
40     #     - libcurl4-gnutls-dev
41     #     - libpq-dev
42     #     - libxml2
43     #     - libxml2-dev
44     #     - make
45     #     - python3-dev
46     #     - ruby-dev
47     #     - zlib1g-dev
48
49   # config:
50   #   file: /etc/arvados/config.yml
51   #   user: root
52   ## IMPORTANT!!!!!
53   ## If you're intalling any of the rails apps (api, workbench), the group
54   ## should be set to that of the web server, usually `www-data`
55   #   group: root
56   #   mode: 640
57
58   ### ARVADOS CLUSTER CONFIG
59   cluster:
60     name: __CLUSTER__
61     domain: __DOMAIN__
62
63     database:
64       # max concurrent connections per arvados server daemon
65       # connection_pool_max: 32
66       name: arvados
67       host: 127.0.0.1
68       password: changeme_arvados
69       user: arvados
70       encoding: en_US.utf8
71       client_encoding: UTF8
72
73     tls:
74       # certificate: ''
75       # key: ''
76       # required to test with arvados-snakeoil certs
77       insecure: true
78
79     ### TOKENS
80     tokens:
81       system_root: changemesystemroottoken
82       management: changememanagementtoken
83       rails_secret: changemerailssecrettoken
84       anonymous_user: changemeanonymoususertoken
85
86     ### KEYS
87     secrets:
88       blob_signing_key: changemeblobsigningkey
89       workbench_secret_key: changemeworkbenchsecretkey
90       dispatcher_access_key: changemedispatcheraccesskey
91       dispatcher_secret_key: changeme_dispatchersecretkey
92       keep_access_key: changemekeepaccesskey
93       keep_secret_key: changemekeepsecretkey
94
95     Login:
96       Test:
97         Enable: true
98         Users:
99           __INITIAL_USER__:
100             Email: __INITIAL_USER_EMAIL__
101             Password: __INITIAL_USER_PASSWORD__
102
103     ### VOLUMES
104     ## This should usually match all your `keepstore` instances
105     Volumes:
106       # the volume name will be composed with
107       # <cluster>-nyw5e-<volume>
108       __CLUSTER__-nyw5e-000000000000000:
109         AccessViaHosts:
110           'http://__HOSTNAME__:25107':
111             ReadOnly: false
112         Replication: 2
113         Driver: Directory
114         DriverParameters:
115           Root: /tmp
116
117     Users:
118       NewUsersAreActive: true
119       AutoAdminFirstUser: true
120       AutoSetupNewUsers: true
121       AutoSetupNewUsersWithRepository: true
122
123     Services:
124       Controller:
125         ExternalURL: 'https://__HOSTNAME__:__CONTROLLER_EXT_SSL_PORT__'
126         InternalURLs:
127           'http://controller.internal:8003': {}
128       DispatchCloud:
129         InternalURLs:
130           'http://__HOSTNAME__:9006': {}
131       Keepbalance:
132         InternalURLs:
133           'http://__HOSTNAME__:9005': {}
134       Keepproxy:
135         ExternalURL: 'https://__HOSTNAME__:__KEEP_EXT_SSL_PORT__'
136         InternalURLs:
137           'http://keep.internal:25100': {}
138       Keepstore:
139         InternalURLs:
140           'http://keep0.internal:25107': {}
141       RailsAPI:
142         InternalURLs:
143           'http://api.internal:8004': {}
144       WebDAV:
145         ExternalURL: 'https://__HOSTNAME__:__KEEPWEB_EXT_SSL_PORT__'
146         InternalURLs:
147           'http://collections.internal:9002': {}
148       WebDAVDownload:
149         ExternalURL: 'https://__HOSTNAME__:__KEEPWEB_EXT_SSL_PORT__'
150       WebShell:
151         ExternalURL: 'https://__HOSTNAME__:__WEBSHELL_EXT_SSL_PORT__'
152       Websocket:
153         ExternalURL: 'wss://__HOSTNAME__:__WEBSOCKET_EXT_SSL_PORT__/websocket'
154         InternalURLs:
155           'http://ws.internal:8005': {}
156       Workbench1:
157         ExternalURL: 'https://__HOSTNAME__:__WORKBENCH1_EXT_SSL_PORT__'
158       Workbench2:
159         ExternalURL: 'https://__HOSTNAME__:__WORKBENCH2_EXT_SSL_PORT__'