blob: b2d2d4d40a4e10c6d94cb66080ad722c0add808e [file] [log] [blame]
# Copyright 2018 Google Inc. All Rights Reserved.
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: exec-server
annotations:
imagetag: $IMAGETAG
buildtag: "$TAG"
name: exec-server
spec:
replicas: 32
selector:
matchLabels:
app: exec-server
strategy:
rollingUpdate:
maxSurge: 16
maxUnavailable: 0
type: RollingUpdate
template:
metadata:
labels:
app: exec-server
spec:
containers:
- command:
- /opt/goma/bin/exec_server
- --trace-project-id=$PROJECT_ID
- --pubsub-project-id=$PROJECT_ID
- --file-addr=passthrough:///file-server:5050
- --redis-max-idle-conns=16
- --redis-max-active-conns=32
- --remoteexec-addr=remotebuildexecution.googleapis.com:443
- --remote-instance-prefix=$RBE_INSTANCE_PREFIX
- --toolchain-config-bucket=$TOOLCHAIN_CONFIG_BUCKET
- --configmap_file=/etc/goma/toolchain-config/toolchain.config
- --cmd-files-bucket=$CMD_FILES_BUCKET
- --fetch-config-parallel=true
name: exec-server
image: gcr.io/$CONTAINER_PROJECT_ID/exec-server:$IMAGETAG
envFrom:
- configMapRef:
name: memorystore
ports:
- containerPort: 5050
protocol: TCP
- containerPort: 8081
protocol: TCP
resources:
limits:
cpu: 500m
memory: 2048Mi
requests:
cpu: 250m
memory: 1024Mi
volumeMounts:
- mountPath: /etc/goma/toolchain-config
name: toolchain-config
# following could be configured by PodPreset?
livenessProbe:
failureThreshold: 20
httpGet:
path: /healthz
port: 8081
scheme: HTTP
initialDelaySeconds: 60
periodSeconds: 15
timeoutSeconds: 5
readinessProbe:
failureThreshold: 20
httpGet:
path: /healthz
port: 8081
scheme: HTTP
initialDelaySeconds: 60
periodSeconds: 15
timeoutSeconds: 5
terminationGracePeriodSeconds: 300
volumes:
- name: toolchain-config
configMap:
defaultMode: 420
name: toolchain-config