16429: add GKE integration test
[arvados-k8s.git] / charts / arvados / templates / api-server-configmap.yaml
1 # Copyright (C) The Arvados Authors. All rights reserved.
2 #
3 # SPDX-License-Identifier: Apache-2.0
4
5 apiVersion: v1
6 kind: ConfigMap
7 metadata:
8   name: arvados-api-server-configmap
9   labels:
10     app: arvados-api-server
11     chart: {{ template "arvados.chart" . }}
12     release: {{ .Release.Name }}
13     heritage: {{ .Release.Service }}
14 data:
15   {{- (tpl (.Files.Glob "config/api-server/*").AsConfig . ) | nindent 2 }}
16
17 ---
18 apiVersion: v1
19 kind: ConfigMap
20 metadata:
21   name: arvados-api-server-https-configmap
22   labels:
23     app: {{ template "arvados.name" . }}
24     chart: {{ template "arvados.chart" . }}
25     release: {{ .Release.Name }}
26     heritage: {{ .Release.Service }}
27 data:
28   nginx.conf: |
29     upstream controller {
30       server                127.0.0.1:9004;
31     }
32     upstream rails {
33       server                127.0.0.1:8000;
34     }
35
36
37     proxy_http_version 1.1;
38
39     # When Keep clients request a list of Keep services from the API server, the
40     # server will automatically return the list of available proxies if
41     # the request headers include X-External-Client: 1.  Following the example
42     # here, at the end of this section, add a line for each netmask that has
43     # direct access to Keep storage daemons to set this header value to 0.
44     geo $external_client {
45       default     1;
46       10.0.0.0/8  0;
47     }
48
49     server {
50       listen                444 ssl;
51       server_name           public-api;
52
53       ssl_certificate       /etc/nginx/ssl.crt;
54       ssl_certificate_key   /etc/nginx/ssl.key;
55
56       client_max_body_size  128m;
57
58       # Redirect plain HTTP requests to HTTPS.
59       error_page 497 301 =307 https://$host:$server_port$request_uri;
60
61       location /rails/_health/ping {
62         proxy_pass            http://rails/_health/ping;
63         proxy_connect_timeout 90s;
64         proxy_read_timeout    300s;
65         proxy_redirect        off;
66         proxy_set_header      X-Forwarded-Proto https;
67         proxy_set_header      Host $http_host;
68         proxy_set_header      X-External-Client $external_client;
69         proxy_set_header      X-Real-IP $remote_addr;
70         proxy_set_header      X-Forwarded-For $proxy_add_x_forwarded_for;
71       }
72       location / {
73         proxy_pass            http://controller;
74         proxy_connect_timeout 90s;
75         proxy_read_timeout    300s;
76         proxy_redirect        off;
77         proxy_set_header      X-Forwarded-Proto https;
78         proxy_set_header      Host $http_host;
79         proxy_set_header      X-External-Client $external_client;
80         proxy_set_header      X-Real-IP $remote_addr;
81         proxy_set_header      X-Forwarded-For $proxy_add_x_forwarded_for;
82       }
83     }