Skip to content

Commit 559bd10

Browse files
author
Claude
committed
add test cases for provisioner chart
1 parent c3327d3 commit 559bd10

31 files changed

+767
-24
lines changed

helm/provisioner/tests/chart_test.go

+8
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,14 @@ var testCases = []testCase{
9595
name: "name_override_existing_sa",
9696
expectedError: "",
9797
},
98+
{
99+
name: "custom_resources",
100+
expectedError: "",
101+
},
102+
{
103+
name: "partial_resources",
104+
expectedError: "",
105+
},
98106
}
99107

100108
type testCase struct {

helm/provisioner/tests/testdata/command.golden

+7-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,13 @@ spec:
123123
lifecycle: {}
124124
name: coder
125125
ports: null
126-
resources: {}
126+
resources:
127+
limits:
128+
cpu: 2000m
129+
memory: 4096Mi
130+
requests:
131+
cpu: 2000m
132+
memory: 4096Mi
127133
securityContext:
128134
allowPrivilegeEscalation: false
129135
readOnlyRootFilesystem: null

helm/provisioner/tests/testdata/command_args.golden

+7-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,13 @@ spec:
123123
lifecycle: {}
124124
name: coder
125125
ports: null
126-
resources: {}
126+
resources:
127+
limits:
128+
cpu: 2000m
129+
memory: 4096Mi
130+
requests:
131+
cpu: 2000m
132+
memory: 4096Mi
127133
securityContext:
128134
allowPrivilegeEscalation: false
129135
readOnlyRootFilesystem: null

helm/provisioner/tests/testdata/command_args_coder.golden

+7-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,13 @@ spec:
123123
lifecycle: {}
124124
name: coder
125125
ports: null
126-
resources: {}
126+
resources:
127+
limits:
128+
cpu: 2000m
129+
memory: 4096Mi
130+
requests:
131+
cpu: 2000m
132+
memory: 4096Mi
127133
securityContext:
128134
allowPrivilegeEscalation: false
129135
readOnlyRootFilesystem: null

helm/provisioner/tests/testdata/command_coder.golden

+7-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,13 @@ spec:
123123
lifecycle: {}
124124
name: coder
125125
ports: null
126-
resources: {}
126+
resources:
127+
limits:
128+
cpu: 2000m
129+
memory: 4096Mi
130+
requests:
131+
cpu: 2000m
132+
memory: 4096Mi
127133
securityContext:
128134
allowPrivilegeEscalation: false
129135
readOnlyRootFilesystem: null
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
---
2+
# Source: coder-provisioner/templates/coder.yaml
3+
apiVersion: v1
4+
kind: ServiceAccount
5+
metadata:
6+
annotations: {}
7+
labels:
8+
app.kubernetes.io/instance: release-name
9+
app.kubernetes.io/managed-by: Helm
10+
app.kubernetes.io/name: coder-provisioner
11+
app.kubernetes.io/part-of: coder-provisioner
12+
app.kubernetes.io/version: 0.1.0
13+
helm.sh/chart: coder-provisioner-0.1.0
14+
name: coder-provisioner
15+
namespace: default
16+
---
17+
# Source: coder-provisioner/templates/rbac.yaml
18+
apiVersion: rbac.authorization.k8s.io/v1
19+
kind: Role
20+
metadata:
21+
name: coder-provisioner-workspace-perms
22+
namespace: default
23+
rules:
24+
- apiGroups: [""]
25+
resources: ["pods"]
26+
verbs:
27+
- create
28+
- delete
29+
- deletecollection
30+
- get
31+
- list
32+
- patch
33+
- update
34+
- watch
35+
- apiGroups: [""]
36+
resources: ["persistentvolumeclaims"]
37+
verbs:
38+
- create
39+
- delete
40+
- deletecollection
41+
- get
42+
- list
43+
- patch
44+
- update
45+
- watch
46+
- apiGroups:
47+
- apps
48+
resources:
49+
- deployments
50+
verbs:
51+
- create
52+
- delete
53+
- deletecollection
54+
- get
55+
- list
56+
- patch
57+
- update
58+
- watch
59+
---
60+
# Source: coder-provisioner/templates/rbac.yaml
61+
apiVersion: rbac.authorization.k8s.io/v1
62+
kind: RoleBinding
63+
metadata:
64+
name: "coder-provisioner"
65+
namespace: default
66+
subjects:
67+
- kind: ServiceAccount
68+
name: "coder-provisioner"
69+
roleRef:
70+
apiGroup: rbac.authorization.k8s.io
71+
kind: Role
72+
name: coder-provisioner-workspace-perms
73+
---
74+
# Source: coder-provisioner/templates/coder.yaml
75+
apiVersion: apps/v1
76+
kind: Deployment
77+
metadata:
78+
annotations: {}
79+
labels:
80+
app.kubernetes.io/instance: release-name
81+
app.kubernetes.io/managed-by: Helm
82+
app.kubernetes.io/name: coder-provisioner
83+
app.kubernetes.io/part-of: coder-provisioner
84+
app.kubernetes.io/version: 0.1.0
85+
helm.sh/chart: coder-provisioner-0.1.0
86+
name: coder-provisioner
87+
namespace: default
88+
spec:
89+
replicas: 1
90+
selector:
91+
matchLabels:
92+
app.kubernetes.io/instance: release-name
93+
app.kubernetes.io/name: coder-provisioner
94+
template:
95+
metadata:
96+
annotations: {}
97+
labels:
98+
app.kubernetes.io/instance: release-name
99+
app.kubernetes.io/managed-by: Helm
100+
app.kubernetes.io/name: coder-provisioner
101+
app.kubernetes.io/part-of: coder-provisioner
102+
app.kubernetes.io/version: 0.1.0
103+
helm.sh/chart: coder-provisioner-0.1.0
104+
spec:
105+
containers:
106+
- args:
107+
- provisionerd
108+
- start
109+
command:
110+
- /opt/coder
111+
env:
112+
- name: CODER_PROMETHEUS_ADDRESS
113+
value: 0.0.0.0:2112
114+
- name: CODER_PROVISIONER_DAEMON_PSK
115+
valueFrom:
116+
secretKeyRef:
117+
key: psk
118+
name: coder-provisioner-psk
119+
- name: CODER_URL
120+
value: http://coder.default.svc.cluster.local
121+
image: ghcr.io/coder/coder:latest
122+
imagePullPolicy: IfNotPresent
123+
lifecycle: {}
124+
name: coder
125+
ports: null
126+
resources:
127+
limits:
128+
cpu: 4000m
129+
memory: 8192Mi
130+
requests:
131+
cpu: 1000m
132+
memory: 2048Mi
133+
securityContext:
134+
allowPrivilegeEscalation: false
135+
readOnlyRootFilesystem: null
136+
runAsGroup: 1000
137+
runAsNonRoot: true
138+
runAsUser: 1000
139+
seccompProfile:
140+
type: RuntimeDefault
141+
volumeMounts: []
142+
restartPolicy: Always
143+
serviceAccountName: coder-provisioner
144+
terminationGracePeriodSeconds: 600
145+
volumes: []
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
coder:
2+
image:
3+
tag: latest
4+
resources:
5+
limits:
6+
cpu: 4000m
7+
memory: 8192Mi
8+
requests:
9+
cpu: 1000m
10+
memory: 2048Mi
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
---
2+
# Source: coder-provisioner/templates/coder.yaml
3+
apiVersion: v1
4+
kind: ServiceAccount
5+
metadata:
6+
annotations: {}
7+
labels:
8+
app.kubernetes.io/instance: release-name
9+
app.kubernetes.io/managed-by: Helm
10+
app.kubernetes.io/name: coder-provisioner
11+
app.kubernetes.io/part-of: coder-provisioner
12+
app.kubernetes.io/version: 0.1.0
13+
helm.sh/chart: coder-provisioner-0.1.0
14+
name: coder-provisioner
15+
namespace: coder
16+
---
17+
# Source: coder-provisioner/templates/rbac.yaml
18+
apiVersion: rbac.authorization.k8s.io/v1
19+
kind: Role
20+
metadata:
21+
name: coder-provisioner-workspace-perms
22+
namespace: coder
23+
rules:
24+
- apiGroups: [""]
25+
resources: ["pods"]
26+
verbs:
27+
- create
28+
- delete
29+
- deletecollection
30+
- get
31+
- list
32+
- patch
33+
- update
34+
- watch
35+
- apiGroups: [""]
36+
resources: ["persistentvolumeclaims"]
37+
verbs:
38+
- create
39+
- delete
40+
- deletecollection
41+
- get
42+
- list
43+
- patch
44+
- update
45+
- watch
46+
- apiGroups:
47+
- apps
48+
resources:
49+
- deployments
50+
verbs:
51+
- create
52+
- delete
53+
- deletecollection
54+
- get
55+
- list
56+
- patch
57+
- update
58+
- watch
59+
---
60+
# Source: coder-provisioner/templates/rbac.yaml
61+
apiVersion: rbac.authorization.k8s.io/v1
62+
kind: RoleBinding
63+
metadata:
64+
name: "coder-provisioner"
65+
namespace: coder
66+
subjects:
67+
- kind: ServiceAccount
68+
name: "coder-provisioner"
69+
roleRef:
70+
apiGroup: rbac.authorization.k8s.io
71+
kind: Role
72+
name: coder-provisioner-workspace-perms
73+
---
74+
# Source: coder-provisioner/templates/coder.yaml
75+
apiVersion: apps/v1
76+
kind: Deployment
77+
metadata:
78+
annotations: {}
79+
labels:
80+
app.kubernetes.io/instance: release-name
81+
app.kubernetes.io/managed-by: Helm
82+
app.kubernetes.io/name: coder-provisioner
83+
app.kubernetes.io/part-of: coder-provisioner
84+
app.kubernetes.io/version: 0.1.0
85+
helm.sh/chart: coder-provisioner-0.1.0
86+
name: coder-provisioner
87+
namespace: coder
88+
spec:
89+
replicas: 1
90+
selector:
91+
matchLabels:
92+
app.kubernetes.io/instance: release-name
93+
app.kubernetes.io/name: coder-provisioner
94+
template:
95+
metadata:
96+
annotations: {}
97+
labels:
98+
app.kubernetes.io/instance: release-name
99+
app.kubernetes.io/managed-by: Helm
100+
app.kubernetes.io/name: coder-provisioner
101+
app.kubernetes.io/part-of: coder-provisioner
102+
app.kubernetes.io/version: 0.1.0
103+
helm.sh/chart: coder-provisioner-0.1.0
104+
spec:
105+
containers:
106+
- args:
107+
- provisionerd
108+
- start
109+
command:
110+
- /opt/coder
111+
env:
112+
- name: CODER_PROMETHEUS_ADDRESS
113+
value: 0.0.0.0:2112
114+
- name: CODER_PROVISIONER_DAEMON_PSK
115+
valueFrom:
116+
secretKeyRef:
117+
key: psk
118+
name: coder-provisioner-psk
119+
- name: CODER_URL
120+
value: http://coder.coder.svc.cluster.local
121+
image: ghcr.io/coder/coder:latest
122+
imagePullPolicy: IfNotPresent
123+
lifecycle: {}
124+
name: coder
125+
ports: null
126+
resources:
127+
limits:
128+
cpu: 4000m
129+
memory: 8192Mi
130+
requests:
131+
cpu: 1000m
132+
memory: 2048Mi
133+
securityContext:
134+
allowPrivilegeEscalation: false
135+
readOnlyRootFilesystem: null
136+
runAsGroup: 1000
137+
runAsNonRoot: true
138+
runAsUser: 1000
139+
seccompProfile:
140+
type: RuntimeDefault
141+
volumeMounts: []
142+
restartPolicy: Always
143+
serviceAccountName: coder-provisioner
144+
terminationGracePeriodSeconds: 600
145+
volumes: []

helm/provisioner/tests/testdata/default_values.golden

+7-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,13 @@ spec:
123123
lifecycle: {}
124124
name: coder
125125
ports: null
126-
resources: {}
126+
resources:
127+
limits:
128+
cpu: 2000m
129+
memory: 4096Mi
130+
requests:
131+
cpu: 2000m
132+
memory: 4096Mi
127133
securityContext:
128134
allowPrivilegeEscalation: false
129135
readOnlyRootFilesystem: null

0 commit comments

Comments
 (0)