2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
6 {%- import_yaml "ssl_key_encrypted.sls" as ssl_key_encrypted_pillar %}
19 arvados_workbench_default.conf:
24 - server_name: workbench.__DOMAIN__
28 - return: '301 https://$host$request_uri'
30 arvados_workbench_ssl.conf:
37 - server_name: workbench.__DOMAIN__
39 - __CONTROLLER_EXT_SSL_PORT__ http2 ssl
40 - index: index.html index.htm
42 # REDIRECTS FROM WORKBENCH 1 TO WORKBENCH 2
44 # Paths that are not redirected because wb1 and wb2 have similar enough paths
45 # that a redirect is pointless and would create a redirect loop.
46 # rewrite ^/api_client_authorizations.* /api_client_authorizations redirect;
47 # rewrite ^/repositories.* /repositories redirect;
48 # rewrite ^/links.* /links redirect;
49 # rewrite ^/projects.* /projects redirect;
50 # rewrite ^/trash /trash redirect;
52 # Redirects that include a uuid
53 - rewrite: '^/work_units/(.*) /processes/$1 redirect'
54 - rewrite: '^/container_requests/(.*) /processes/$1 redirect'
55 - rewrite: '^/users/(.*) /user/$1 redirect'
56 - rewrite: '^/groups/(.*) /group/$1 redirect'
58 # Special file download redirects
59 - 'if ($arg_disposition = attachment)':
60 - rewrite: '^/collections/([^/]*)/(.*) /?redirectToDownload=/c=$1/$2? redirect'
62 - 'if ($arg_disposition = inline)':
63 - rewrite: '^/collections/([^/]*)/(.*) /?redirectToPreview=/c=$1/$2? redirect'
65 # Redirects that go to a roughly equivalent page
66 - rewrite: '^/virtual_machines.* /virtual-machines-admin redirect'
67 - rewrite: '^/users/.*/virtual_machines /virtual-machines-user redirect'
68 - rewrite: '^/authorized_keys.* /ssh-keys-admin redirect'
69 - rewrite: '^/users/.*/ssh_keys /ssh-keys-user redirect'
70 - rewrite: '^/containers.* /all_processes redirect'
71 - rewrite: '^/container_requests /all_processes redirect'
72 - rewrite: '^/job.* /all_processes redirect'
73 - rewrite: '^/users/link_account /link_account redirect'
74 - rewrite: '^/search.* /search-results redirect'
75 - rewrite: '^/keep_services.* /keep-services redirect'
76 - rewrite: '^/trash_items.* /trash redirect'
78 # Redirects that don't have a good mapping and
80 - rewrite: '^/themes.* / redirect'
81 - rewrite: '^/keep_disks.* / redirect'
82 - rewrite: '^/user_agreements.* / redirect'
83 - rewrite: '^/nodes.* / redirect'
84 - rewrite: '^/humans.* / redirect'
85 - rewrite: '^/traits.* / redirect'
86 - rewrite: '^/sessions.* / redirect'
87 - rewrite: '^/logout.* / redirect'
88 - rewrite: '^/logged_out.* / redirect'
89 - rewrite: '^/current_token / redirect'
90 - rewrite: '^/logs.* / redirect'
91 - rewrite: '^/factory_jobs.* / redirect'
92 - rewrite: '^/uploaded_datasets.* / redirect'
93 - rewrite: '^/specimens.* / redirect'
94 - rewrite: '^/pipeline_templates.* / redirect'
95 - rewrite: '^/pipeline_instances.* / redirect'
98 - root: /var/www/arvados-workbench2/workbench2
99 - try_files: '$uri $uri/ /index.html'
100 - 'if (-f $document_root/maintenance.html)':
102 - location /config.json:
103 - return: {{ "200 '" ~ '{"API_HOST":"__DOMAIN__:__CONTROLLER_EXT_SSL_PORT__"}' ~ "'" }}
104 - include: snippets/ssl_hardening_default.conf
105 - ssl_certificate: __CERT_PEM__
106 - ssl_certificate_key: __CERT_KEY__
107 {%- if ssl_key_encrypted_pillar.ssl_key_encrypted.enabled %}
108 - ssl_password_file: {{ '/run/arvados/' | path_join(ssl_key_encrypted_pillar.ssl_key_encrypted.privkey_password_filename) }}
110 - access_log: /var/log/nginx/workbench2.__DOMAIN__.access.log combined
111 - error_log: /var/log/nginx/workbench2.__DOMAIN__.error.log