Increase zuul-web backend timeout

In a GCP load balancer proxying a websocket connection, the backend
timeout is the longest the connection can stay open.  The default is
30 seconds, but we use websockets to stream build logs which are much
longer than that.  Set the timeout to 1 hour.

Change-Id: Ic7bfabc3cb86f7a00efee87dd51d7c9468de5654
diff --git a/k8s/zuul.yaml b/k8s/zuul.yaml
index b16739b..6153cbc 100644
--- a/k8s/zuul.yaml
+++ b/k8s/zuul.yaml
@@ -1,4 +1,12 @@
 ---
+apiVersion: cloud.google.com/v1beta1
+kind: BackendConfig
+metadata:
+  namespace: zuul
+  name: zuul-web-backendconfig
+spec:
+  timeoutSec: 3600
+---
 apiVersion: v1
 kind: Service
 metadata:
@@ -56,6 +64,8 @@
     app.kubernetes.io/instance: zuul
     app.kubernetes.io/part-of: zuul
     app.kubernetes.io/component: zuul-web
+  annotations:
+    beta.cloud.google.com/backend-config: '{"ports": {"9000":"zuul-web-backendconfig"}}'
 spec:
   type: NodePort
   ports:
diff --git a/playbooks/deploy.yaml b/playbooks/deploy.yaml
index 3253f7b..cfc2342 100644
--- a/playbooks/deploy.yaml
+++ b/playbooks/deploy.yaml
@@ -74,7 +74,7 @@
               app.kubernetes.io/instance: zuul
               app.kubernetes.io/part-of: zuul
           stringData:
-            main.yaml: "{{ lookup('template', root + '/zuul/zuul.conf') }}"
+            zuul.conf: "{{ lookup('template', root + '/zuul/zuul.conf') }}"
       register: zuul_config
       # Set no_log because we are templating passwords into the config
       no_log: true