668fe1c7d2783a3d03b5a975ab74c479ea1c2399
[arvados-formula.git] / arvados / files / default / config.tmpl.jinja
1 ---
2 ########################################################################
3 # File managed by Salt at <{{ source }}>.
4 # Your changes will be overwritten.
5 #
6 # Please check https://doc.arvados.org/master/admin/config.html for
7 # documentation about the parameters configured here.
8 ########################################################################
9 {%- if arvados.release == 'development' %}
10 # (Experimental) Restart services automatically when config file
11 # changes are detected. Only supported by `arvados-server boot` in
12 # dev mode.
13 AutoReloadConfig: {{ arvados.auto_reload_config }}
14 {%- endif %}
15
16 Clusters:
17   {{ arvados.cluster.name }}:
18
19     SystemRootToken: {{ arvados.cluster.tokens.system_root | yaml_encode }}
20     ManagementToken: {{ arvados.cluster.tokens.management | yaml_encode }}
21
22     API:
23     {%- if 'API' in arvados.cluster %}
24       {{ arvados.cluster.API | default('') | yaml(False) | indent(6) }}
25     {%- endif %}
26
27     Collections:
28       BlobSigningKey: {{ arvados.cluster.secrets.blob_signing_key | yaml_encode }}
29     {%- if 'Collections' in arvados.cluster %}
30       {{ arvados.cluster.Collections | yaml(False) | indent(6) }}
31     {%- endif %}
32     {%- if 'Keepbalance' in arvados.cluster.Services %}
33       BlobTrash: true
34     {%- endif %}
35
36     TLS:
37       Certificate: {{ arvados.cluster.tls.certificate | yaml_encode }}
38       Key: {{ arvados.cluster.tls.key | yaml_encode }}
39       Insecure: {{ arvados.cluster.tls.insecure }}
40
41     Workbench:
42       SecretKeyBase: {{ arvados.cluster.secrets.workbench_secret_key | yaml_encode }}
43       SiteName: {{ arvados.cluster.name | upper }}
44     {%- if 'Workbench' in arvados.cluster %}
45       {{ arvados.cluster.Workbench | yaml(False) | indent(6) }}
46     {%- endif %}
47
48     {%- for section in [
49         'AuditLogs',
50         'Containers',
51         'Git',
52         'InstanceTypes',
53         'Login',
54         'Mail',
55         'RemoteClusters',
56         'SystemLogs',
57         'Users',
58         'Volumes'
59       ]
60     %}
61       {%- if section in arvados.cluster %}
62     {{ section }}:
63       {{ arvados.cluster[section] | yaml(False) | indent(6) }}
64       {%- endif %}
65     {%- endfor %}
66
67     ### DATABASE CONFIGURATION
68     PostgreSQL:
69       ConnectionPool: {{ arvados.cluster.database.connection_pool_max }}
70       Connection:
71         # All parameters here are passed to the PG client library in a connection string;
72         # see https://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-PARAMKEYWORDS
73         dbname: {{ arvados.cluster.database.name }}
74         host: {{ arvados.cluster.database.host }}
75         password: {{ arvados.cluster.database.password | yaml_encode }}
76         user: {{ arvados.cluster.database.user }}
77         {%- if arvados.cluster.database.extra_conn_params is defined %}
78         {{ arvados.cluster.database.extra_conn_params | yaml(False) | indent(8) }}
79         {%- endif %}
80
81     ### SERVICES URLs
82     Services:
83     {%- for service in [
84         'Composer',
85         'Controller',
86         'DispatchCloud',
87         'GitHTTP',
88         'GitSSH',
89         'Health',
90         'Keepbalance',
91         'Keepproxy',
92         'Keepstore',
93         'Nodemanager',
94         'RailsAPI',
95         'SSO',
96         'WebDAV',
97         'WebDAVDownload',
98         'WebShell',
99         'Websocket',
100         'Workbench1',
101         'Workbench2',
102       ]
103     %}
104       {%- if service in arvados.cluster.Services %}
105       {{ service }}:
106         {{ arvados.cluster.Services[service] | yaml(False) | indent(8) }}
107       {%- endif %}
108     {%- endfor %}