Skip to content

Commit 8c7c1a2

Browse files
committed
add back e2e resources for windows server 2019
1 parent efe2384 commit 8c7c1a2

8 files changed

Lines changed: 274 additions & 1 deletion

File tree

charts/internal/e2e-resources/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ This chart creates e2e resources for nri-kubernetes.
4040
| persistentVolumeClaim.enabled | bool | `true` | Create PVCs |
4141
| scraper.enabled | bool | `false` | Deploy the scraper pod |
4242
| statefulSet.enabled | bool | `true` | Deploy a dummy statefulSet |
43+
| windows.is2019 | bool | `false` | Deploy resources on Windows Server 2019 nodes |
4344
| windows.is2022 | bool | `false` | Deploy resources on Windows Server 2022 nodes |
4445

4546
----------------------------------------------
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
{{- define "nriKubernetes.e2e.kubelet.fullname.windows2019" -}}
2+
{{- include "newrelic.common.naming.truncateToDNSWithSuffix" (dict "name" .Release.Name "suffix" "win-2019" ) -}}
3+
{{- end -}}
4+
15
{{- define "nriKubernetes.e2e.kubelet.fullname.windows2022" -}}
26
{{- include "newrelic.common.naming.truncateToDNSWithSuffix" (dict "name" .Release.Name "suffix" "win-2022" ) -}}
37
{{- end -}}

charts/internal/e2e-resources/templates/windows-cronjob.yaml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,55 @@
1+
{{- if and .Values.cronjob.enabled .Values.windows.is2019}}
2+
apiVersion: batch/v1
3+
kind: CronJob
4+
metadata:
5+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}-cronjob
6+
spec:
7+
concurrencyPolicy: Allow
8+
schedule: "* * * * *"
9+
suspend: false
10+
startingDeadlineSeconds: 200
11+
jobTemplate:
12+
spec:
13+
parallelism: 1
14+
completions: 1
15+
activeDeadlineSeconds: 540
16+
backoffLimit: 6
17+
template:
18+
metadata:
19+
labels:
20+
app: cronjob-w-2019
21+
spec:
22+
nodeSelector:
23+
kubernetes.io/os: windows
24+
node.kubernetes.io/windows-build: 10.0.17763
25+
tolerations:
26+
- key: "node.kubernetes.io/os"
27+
operator: "Equal"
28+
value: "windows"
29+
effect: "NoSchedule"
30+
- key: "node.kubernetes.io/windows-build"
31+
operator: "Equal"
32+
value: "10.0.17763"
33+
effect: "NoSchedule"
34+
restartPolicy: OnFailure
35+
containers:
36+
- name: random-text
37+
image: mcr.microsoft.com/windows/servercore:ltsc2019
38+
imagePullPolicy: IfNotPresent
39+
resources:
40+
requests:
41+
cpu: "250m"
42+
memory: "100Mi"
43+
limits:
44+
cpu: "500m"
45+
memory: "200Mi"
46+
command:
47+
- powershell
48+
- " -Command"
49+
- |
50+
Write-Host "Random Text: $(Get-Random)";
51+
{{- end }}
52+
---
153
{{- if and .Values.cronjob.enabled .Values.windows.is2022}}
254
apiVersion: batch/v1
355
kind: CronJob

charts/internal/e2e-resources/templates/windows-daemonset.yaml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,68 @@
1+
{{- if and .Values.daemonSet.enabled .Values.windows.is2019 }}
2+
apiVersion: apps/v1
3+
kind: DaemonSet
4+
metadata:
5+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}-daemonset
6+
spec:
7+
selector:
8+
matchLabels:
9+
app: daemonset-w-2019
10+
template:
11+
metadata:
12+
labels:
13+
app: daemonset-w-2019
14+
spec:
15+
nodeSelector:
16+
kubernetes.io/os: windows
17+
node.kubernetes.io/windows-build: 10.0.17763
18+
tolerations:
19+
- key: "node.kubernetes.io/os"
20+
operator: "Equal"
21+
value: "windows"
22+
effect: "NoSchedule"
23+
- key: "node.kubernetes.io/windows-build"
24+
operator: "Equal"
25+
value: "10.0.17763"
26+
effect: "NoSchedule"
27+
containers:
28+
- name: random-text
29+
image: mcr.microsoft.com/windows/servercore:ltsc2019
30+
imagePullPolicy: IfNotPresent
31+
resources:
32+
requests:
33+
cpu: "250m"
34+
memory: "100Mi"
35+
limits:
36+
cpu: "500m"
37+
memory: "200Mi"
38+
command:
39+
- powershell
40+
- " -Command"
41+
- |
42+
while ($true) {
43+
Write-Host "Random Text: $(Get-Random)";
44+
Start-Sleep -Seconds 10;
45+
}
46+
volumeMounts:
47+
- mountPath: /output
48+
name: storage
49+
{{- if .Values.demo.enabled }}
50+
- name: failing-container
51+
image: mcr.microsoft.com/windows/servercore:ltsc2019
52+
command:
53+
- powershell
54+
- " -Command"
55+
- |
56+
Write-Host "Hello world! I'm going to exit with 42 to simulate a software bug."
57+
Start-Sleep -Seconds 300
58+
exit 42
59+
{{- end }}
60+
volumes:
61+
- name: storage
62+
emptyDir:
63+
sizeLimit: 30Mi
64+
{{- end }}
65+
---
166
{{- if and .Values.daemonSet.enabled .Values.windows.is2022 }}
267
apiVersion: apps/v1
368
kind: DaemonSet

charts/internal/e2e-resources/templates/windows-deployment.yaml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,52 @@
1+
{{- if and .Values.deployment.enabled .Values.windows.is2019 }}
2+
apiVersion: apps/v1
3+
kind: Deployment
4+
metadata:
5+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}
6+
labels:
7+
app: windows-server-2019
8+
spec:
9+
replicas: 1
10+
selector:
11+
matchLabels:
12+
app: windows-server-2019
13+
template:
14+
metadata:
15+
labels:
16+
app: windows-server-2019
17+
spec:
18+
nodeSelector:
19+
kubernetes.io/os: windows
20+
node.kubernetes.io/windows-build: 10.0.17763
21+
tolerations:
22+
- key: "node.kubernetes.io/os"
23+
operator: "Equal"
24+
value: "windows"
25+
effect: "NoSchedule"
26+
- key: "node.kubernetes.io/windows-build"
27+
operator: "Equal"
28+
value: "10.0.17763"
29+
effect: "NoSchedule"
30+
containers:
31+
- name: windows-server-2019
32+
image: mcr.microsoft.com/windows/servercore:ltsc2019
33+
resources:
34+
requests:
35+
cpu: "250m"
36+
memory: "100Mi"
37+
limits:
38+
cpu: "500m"
39+
memory: "200Mi"
40+
command:
41+
- powershell
42+
- " -Command"
43+
- |
44+
while ($true) {
45+
Write-Host "Random Text: $(Get-Random)";
46+
Start-Sleep -Seconds 10;
47+
}
48+
{{- end }}
49+
---
150
{{- if and .Values.deployment.enabled .Values.windows.is2022 }}
251
apiVersion: apps/v1
352
kind: Deployment

charts/internal/e2e-resources/templates/windows-job-fails.yaml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,42 @@
1+
{{- if and .Values.failingJob.enabled .Values.windows.is2019 }}
2+
apiVersion: batch/v1
3+
kind: Job
4+
metadata:
5+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}-failjob
6+
spec:
7+
activeDeadlineSeconds: 200
8+
completions: 1
9+
parallelism: 1
10+
template:
11+
metadata:
12+
labels:
13+
app: failjob-w-2019
14+
spec:
15+
nodeSelector:
16+
kubernetes.io/os: windows
17+
node.kubernetes.io/windows-build: 10.0.17763
18+
tolerations:
19+
- key: "node.kubernetes.io/os"
20+
operator: "Equal"
21+
value: "windows"
22+
effect: "NoSchedule"
23+
- key: "node.kubernetes.io/windows-build"
24+
operator: "Equal"
25+
value: "10.0.17763"
26+
effect: "NoSchedule"
27+
restartPolicy: Never
28+
containers:
29+
- name: main
30+
image: mcr.microsoft.com/windows/servercore:ltsc2019
31+
command:
32+
- powershell
33+
- " -Command"
34+
- |
35+
Write-Host "Hello world! I'm going to exit with 42 to simulate a software bug."
36+
exit 42
37+
backoffLimit: 6
38+
{{- end }}
39+
---
140
{{- if and .Values.failingJob.enabled .Values.windows.is2022 }}
241
apiVersion: batch/v1
342
kind: Job

charts/internal/e2e-resources/templates/windows-statefulset.yaml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,64 @@
1+
{{- if and .Values.statefulSet.enabled .Values.windows.is2019 }}
2+
apiVersion: v1
3+
kind: Service
4+
metadata:
5+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}-statefulset
6+
labels:
7+
app: statefulset-w-2019
8+
spec:
9+
selector:
10+
app: statefulset-w-2019
11+
ports:
12+
- port: 8090
13+
---
14+
apiVersion: apps/v1
15+
kind: StatefulSet
16+
metadata:
17+
name: {{ include "nriKubernetes.e2e.kubelet.fullname.windows2019" .}}-statefulset
18+
spec:
19+
serviceName: statefulset-w-2019
20+
replicas: 1
21+
selector:
22+
matchLabels:
23+
app: statefulset-w-2019
24+
template:
25+
metadata:
26+
labels:
27+
app: statefulset-w-2019
28+
spec:
29+
nodeSelector:
30+
kubernetes.io/os: windows
31+
node.kubernetes.io/windows-build: 10.0.17763
32+
tolerations:
33+
- key: "node.kubernetes.io/os"
34+
operator: "Equal"
35+
value: "windows"
36+
effect: "NoSchedule"
37+
- key: "node.kubernetes.io/windows-build"
38+
operator: "Equal"
39+
value: "10.0.17763"
40+
effect: "NoSchedule"
41+
containers:
42+
- name: random-text
43+
image: mcr.microsoft.com/windows/servercore:ltsc2019
44+
imagePullPolicy: IfNotPresent
45+
resources:
46+
requests:
47+
cpu: "250m"
48+
memory: "100Mi"
49+
limits:
50+
cpu: "500m"
51+
memory: "200Mi"
52+
command:
53+
- powershell
54+
- " -Command"
55+
- |
56+
while ($true) {
57+
Write-Host "Random Text: $(Get-Random)";
58+
Start-Sleep -Seconds 10;
59+
}
60+
{{- end }}
61+
---
162
{{- if and .Values.statefulSet.enabled .Values.windows.is2022 }}
263
apiVersion: v1
364
kind: Service

charts/internal/e2e-resources/values.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,9 @@ openShift:
7070
# Enables running various resources on Windows nodes
7171
# Only runs in demo mode
7272
windows:
73-
# -- Deploy resources on Windows Server 2022 nodes
73+
# -- Deploy resources on Windows Server 2019 nodes
74+
is2019: false
75+
# -- Deploy resources on Windows Server 2022 nodes
7476
is2022: false
7577

7678
kube-state-metrics:

0 commit comments

Comments
 (0)