-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
/
Copy pathdummy_solution.yaml
190 lines (175 loc) · 5.4 KB
/
dummy_solution.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
# This is dummy values file for chart template testing
global:
K8S_PUBLIC_IP: "10.10.10.10"
seleniumGrid:
logLevel: FINE
affinity: &affinity
podAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- selenium
topologyKey: "kubernetes.io/hostname"
topologySpreadConstraints:
- maxSkew: 4
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
nodeMaxSessions: 3
nodeEnableManagedDownloads: true
nodeCustomCapabilities: "{'myApp:version':'beta','myApp:publish':'public'}"
selenium-grid:
autoscaling:
enableWithExistingKEDA: true
scalingType: deployment
monitoring:
enabledWithExistingAgent: true
additionalScrapeConfigs:
value: |
- job_name: "selenium-grid-analytics"
metrics_path: "/query"
bearer_token: ""
params:
endpoint:
- '{{ template "seleniumGrid.monitoring.graphqlURL" $ }}'
query:
- |
{ grid { sessionCount, maxSession, totalSlots, nodeCount, sessionQueueSize }, nodesInfo { nodes { id, status, sessionCount, maxSession, slotCount, stereotypes, sessions { id, capabilities, sessionDurationMillis, slot { id, stereotype } } } }, sessionsInfo { sessionQueueRequests } }
zoneTag: []
tls_config:
insecure_skip_verify: true
static_configs:
- targets:
- '{{ template "seleniumGrid.monitoring.exporter.fullname" $ }}:{{ $.Values.monitoring.exporter.port }}'
basicAuth:
create: false
nameOverride: "my-external-basic-auth-secret"
enabled: true
username: sysadmin
password: strongPassword
tls:
enabled: true
generateTLS: false
ingress:
nginx:
proxyTimeout: 360 # Set different proxy timout
proxyBuffer:
# size: 512M # Keep using sub-config default
number: ! # Disable sub-config
annotations: # Add you own annotations
nginx.ingress.kubernetes.io/use-regex: "true" # Add new key
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/app-root: &gridAppRoot "/selenium/"
nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600" # Override default key
nginx.ingress.kubernetes.io/proxy-send-timeout: "3600" # Override default key
hostname: ""
ports:
http: 8081
https: 8443
paths:
- path: /selenium(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: '{{ ternary (include "seleniumGrid.router.fullname" $ ) (include "seleniumGrid.hub.fullname" $ ) $.Values.isolateComponents }}'
port:
number: 4444
- path: /(/?)(session/.*/se/vnc)
pathType: ImplementationSpecific
backend:
service:
name: '{{ ternary (include "seleniumGrid.router.fullname" $ ) (include "seleniumGrid.hub.fullname" $ ) $.Values.isolateComponents }}'
port:
number: 4444
tls:
- hosts:
- '*.my.domain.com'
secretName: "selenium/my-external-secret"
isolateComponents: true
components:
router:
subPath: *gridAppRoot
disableUI: true
serviceType: NodePort
extraEnvironmentVariables:
- name: SE_JAVA_OPTS
value: "-Xmx1g"
distributor:
newSessionThreadPoolSize: 24
serviceType: NodePort
extraEnvironmentVariables:
- name: SE_JAVA_OPTS
value: "-Xmx1g"
eventBus:
serviceType: NodePort
extraEnvironmentVariables:
- name: SE_JAVA_OPTS
value: "-Xmx1g"
sessionQueue:
serviceType: NodePort
extraEnvironmentVariables:
- name: SE_JAVA_OPTS
value: "-Xmx1g"
sessionMap:
serviceType: NodePort
extraEnvironmentVariables:
- name: SE_JAVA_OPTS
value: "-Xmx1g"
externalDatastore:
enabled: true
backend: redis
chromeNode:
nodeMaxSessions: 2
affinity: *affinity
terminationGracePeriodSeconds: 7200
service:
enabled: true
firefoxNode:
nodeMaxSessions: 1
affinity: *affinity
terminationGracePeriodSeconds: 720
service:
enabled: true
edgeNode:
affinity: *affinity
service:
enabled: true
videoRecorder:
uploader:
enabled: false
relayNode:
enabled: true
videoRecorder:
enabled: true
uploader:
enabled: true
destinationPrefix: "s3://bucket-name"
secrets:
RCLONE_CONFIG_S3_TYPE: "s3"
RCLONE_CONFIG_S3_PROVIDER: "AWS"
RCLONE_CONFIG_S3_ENV_AUTH: "true"
RCLONE_CONFIG_S3_REGION: "ap-southeast-1"
RCLONE_CONFIG_S3_LOCATION_CONSTRAINT: "ap-southeast-1"
RCLONE_CONFIG_S3_ACL: "private"
RCLONE_CONFIG_S3_ACCESS_KEY_ID: "xxx"
RCLONE_CONFIG_S3_SECRET_ACCESS_KEY: "xxx"
RCLONE_CONFIG_S3_NO_CHECK_BUCKET: "true"
nodeConfigMap:
leftoversCleanup:
enabled: true
extraScripts:
nodeCustomTask.sh: |
#!/bin/bash
echo "This is a custom task"
recorderConfigMap:
extraScripts:
video.sh: |
#!/bin/bash
echo "This is override script"
uploaderConfigMap:
extraScripts:
upload.sh: |
#!/bin/bash
echo "This is override script"