82 lines
No EOL
2.5 KiB
YAML
82 lines
No EOL
2.5 KiB
YAML
# Copyright 2022 Google LLC
|
|
#
|
|
# Licensed under the the Apache License v2.0 with LLVM Exceptions (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# https://llvm.org/LICENSE.txt
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: linux-agents
|
|
namespace: buildkite
|
|
spec:
|
|
replicas: ${replicas-count}
|
|
strategy:
|
|
rollingUpdate:
|
|
maxSurge: 25%
|
|
maxUnavailable: 50%
|
|
type: RollingUpdate
|
|
selector:
|
|
matchLabels:
|
|
app: agent-premerge-debian
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: agent-premerge-debian
|
|
spec:
|
|
containers:
|
|
- name: buildkite-premerge-debian
|
|
image: gcr.io/${project-id}/buildkite-premerge-debian
|
|
resources:
|
|
limits:
|
|
cpu: ${cpu-request}
|
|
memory: ${mem-request}
|
|
requests:
|
|
cpu: ${cpu-request}
|
|
memory: ${mem-request}
|
|
volumeMounts:
|
|
- name: github-ssh
|
|
mountPath: /mnt/ssh
|
|
- name: workdir
|
|
mountPath: /var/lib/buildkite-agent
|
|
env:
|
|
- name: BUILDKITE_AGENT_TOKEN
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: buildkite-agent-token
|
|
key: token
|
|
- name: POD_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.name
|
|
- name: BUILDKITE_AGENT_TAGS
|
|
value: "queue=${build-queue},name=$(POD_NAME)"
|
|
- name: BUILDKITE_BUILD_PATH
|
|
value: "/var/lib/buildkite-agent/builds"
|
|
- name: CONDUIT_TOKEN
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: conduit-api-token
|
|
key: token
|
|
- name: BUILDKITE_API_TOKEN
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: buildkite-api-token-readonly
|
|
key: token
|
|
volumes:
|
|
- name: github-ssh
|
|
secret:
|
|
secretName: github-ssh
|
|
- name: workdir
|
|
emptyDir: {}
|
|
nodeSelector:
|
|
cloud.google.com/gke-nodepool: ${gke-nodepool}
|
|
terminationGracePeriodSeconds: 3600 |