Skip to content

Commit 106e022

Browse files
committed
feat(builder): move deis-builder to use Deployments
RC for deis-builder is kept around so it can be taken out of rotation without needing manual intervention (see replicas 0 and changed labels)
1 parent 4173034 commit 106e022

File tree

2 files changed

+96
-3
lines changed

2 files changed

+96
-3
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
#helm:generate helm template -o $HELM_GENERATE_DIR/manifests/deis-builder-deployment.yaml -d $HELM_GENERATE_DIR/tpl/generate_params.toml $HELM_GENERATE_DIR/tpl/deis-builder-deployment.yaml
2+
apiVersion: extensions/v1beta1
3+
kind: Deployment
4+
metadata:
5+
name: deis-builder
6+
namespace: deis
7+
labels:
8+
heritage: deis
9+
spec:
10+
replicas: 1
11+
strategy:
12+
rollingUpdate:
13+
maxSurge: 1
14+
maxUnavailable: 0
15+
type: RollingUpdate
16+
selector:
17+
matchLabels:
18+
app: deis-builder
19+
template:
20+
metadata:
21+
labels:
22+
app: deis-builder
23+
spec:
24+
serviceAccount: deis-builder
25+
containers:
26+
- name: deis-builder
27+
image: quay.io/{{.builder.org}}/builder:{{ env "BUILDER_GIT_TAG" | default .builder.dockerTag}}
28+
imagePullPolicy: {{.builder.pullPolicy}}
29+
ports:
30+
- containerPort: 2223
31+
name: ssh
32+
- containerPort: 8092
33+
name: healthsrv
34+
env:
35+
- name: "HEALTH_SERVER_PORT"
36+
value: "8092"
37+
- name: "EXTERNAL_PORT"
38+
value: "2223"
39+
- name: BUILDER_STORAGE
40+
value: "{{ or (env "STORAGE_TYPE") (.storage)}}"
41+
# Set GIT_LOCK_TIMEOUT to number of minutes you want to wait to git push again to the same repository
42+
- name: "GIT_LOCK_TIMEOUT"
43+
value: "10"
44+
- name: "SLUGBUILDER_IMAGE_NAME"
45+
value: "quay.io/{{.slugbuilder.org}}/slugbuilder:{{ env "SLUGBUILDER_GIT_TAG" | default .slugbuilder.dockerTag }}"
46+
- name: "DOCKERBUILDER_IMAGE_NAME"
47+
value: "quay.io/{{.dockerbuilder.org}}/dockerbuilder:{{ env "DOCKERBUILDER_GIT_TAG" | default .dockerbuilder.dockerTag}}"
48+
# This var needs to be passed so that the minio client (https://github.com/minio/mc) will work in Alpine linux
49+
- name: "DOCKERIMAGE"
50+
value: "1"
51+
- name: "DEIS_DEBUG"
52+
value: "{{ env "DEIS_DEBUG" | default "false" }}"
53+
- name: "POD_NAMESPACE"
54+
valueFrom:
55+
fieldRef:
56+
fieldPath: metadata.namespace
57+
- name: DEIS_BUILDER_KEY
58+
valueFrom:
59+
secretKeyRef:
60+
name: builder-key-auth
61+
key: builder-key
62+
livenessProbe:
63+
httpGet:
64+
path: /healthz
65+
port: 8092
66+
initialDelaySeconds: 30
67+
timeoutSeconds: 1
68+
readinessProbe:
69+
httpGet:
70+
path: /readiness
71+
port: 8092
72+
initialDelaySeconds: 30
73+
timeoutSeconds: 1
74+
volumeMounts:
75+
- name: builder-key-auth
76+
mountPath: /var/run/secrets/api/auth
77+
readOnly: true
78+
- name: builder-ssh-private-keys
79+
mountPath: /var/run/secrets/deis/builder/ssh
80+
readOnly: true
81+
- name: objectstore-creds
82+
mountPath: /var/run/secrets/deis/objectstore/creds
83+
readOnly: true
84+
volumes:
85+
- name: builder-key-auth
86+
secret:
87+
secretName: builder-key-auth
88+
- name: builder-ssh-private-keys
89+
secret:
90+
secretName: builder-ssh-private-keys
91+
- name: objectstore-creds
92+
secret:
93+
secretName: objectstorage-keyfile

workflow-dev/tpl/deis-builder-rc.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ metadata:
77
labels:
88
heritage: deis
99
spec:
10-
replicas: 1
10+
replicas: 0
1111
selector:
12-
app: deis-builder
12+
app: deis-builder-deprecated
1313
template:
1414
metadata:
1515
labels:
16-
app: deis-builder
16+
app: deis-builder-deprecated
1717
spec:
1818
serviceAccount: deis-builder
1919
containers:

0 commit comments

Comments
 (0)