Skip to content

Commit e69ff3a

Browse files
committed
feat: update hub-server chart
1 parent 506f7fe commit e69ff3a

File tree

5 files changed

+186
-2
lines changed

5 files changed

+186
-2
lines changed

charts/hub-server/Chart.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ maintainers:
55
66
name: Elegant Themes
77
name: hub-server
8-
version: 1.0.1
8+
version: 1.1.0

charts/hub-server/templates/hub-server.yml

+133
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,136 @@ spec:
1111
- port: 9000
1212
targetPort: 9000
1313
name: fastcgi
14+
---
15+
16+
apiVersion: apps/v1
17+
kind: Deployment
18+
metadata:
19+
name: {{ .Release.Name }}
20+
namespace: {{ .Release.Namespace }}
21+
labels:
22+
app: {{ .Release.Name }}
23+
spec:
24+
replicas: {{ .Values.REPLICAS }}
25+
strategy:
26+
rollingUpdate:
27+
maxSurge: 0
28+
maxUnavailable: 1
29+
selector:
30+
matchLabels:
31+
app: {{ .Release.Name }}
32+
template:
33+
metadata:
34+
labels:
35+
app: {{ .Release.Name }}
36+
redis-client: 'true'
37+
spec:
38+
affinity:
39+
podAffinity:
40+
requiredDuringSchedulingIgnoredDuringExecution:
41+
- labelSelector:
42+
matchExpressions:
43+
- key: app.kubernetes.io/name
44+
operator: In
45+
values:
46+
- ingress-nginx
47+
namespaces:
48+
- ingress-nginx
49+
topologyKey: kubernetes.io/hostname
50+
podAntiAffinity:
51+
requiredDuringSchedulingIgnoredDuringExecution:
52+
- labelSelector:
53+
matchExpressions:
54+
- key: app
55+
operator: In
56+
values:
57+
- {{ .Release.Name }}
58+
namespaces:
59+
- {{ .Release.Namespace }}
60+
topologyKey: kubernetes.io/hostname
61+
- labelSelector:
62+
matchExpressions:
63+
- key: app
64+
operator: In
65+
values:
66+
- cloud-screenshot
67+
namespaces:
68+
- dc-screenshot
69+
topologyKey: kubernetes.io/hostname
70+
containers:
71+
- name: {{ .Release.Name }}
72+
env:
73+
- name: NODE_NAME
74+
valueFrom:
75+
fieldRef:
76+
fieldPath: spec.nodeName
77+
- name: INSTALL_PATH
78+
value: {{ .Values.INSTALL_PATH | squote }}
79+
- name: VIRTUAL_HOST
80+
value: {{ .Values.VIRTUAL_HOST | squote }}
81+
- name: PHP_MEMORY_LIMIT
82+
value: {{ .Values.PHP_MEMORY_LIMIT | squote }}
83+
- name: PHP_OPCACHE_FILE_CACHE
84+
value: ""
85+
- name: PHP_OPCACHE_VALIDATE_TIMESTAMPS
86+
value: "1"
87+
88+
image: {{ .Values.ET_IMAGE | squote }}
89+
livenessProbe:
90+
exec:
91+
command:
92+
- 'bash'
93+
- '-c'
94+
- 'SCRIPT_NAME=/healthz'
95+
- 'SCRIPT_FILENAME={{ .Values.INSTALL_PATH }}/public/healthz.php'
96+
- 'REQUEST_METHOD=GET'
97+
- 'cgi-fcgi'
98+
- '-bind'
99+
- '-connect'
100+
- '127.0.0.1:9000'
101+
periodSeconds: 30
102+
ports:
103+
- name: fastcgi
104+
containerPort: 9000
105+
readinessProbe:
106+
exec:
107+
command:
108+
- 'bash'
109+
- '-c'
110+
- 'SCRIPT_NAME=/healthz'
111+
- 'SCRIPT_FILENAME={{ .Values.INSTALL_PATH }}/public/healthz.php'
112+
- 'REQUEST_METHOD=GET'
113+
- 'cgi-fcgi'
114+
- '-bind'
115+
- '-connect'
116+
- '127.0.0.1:9000'
117+
periodSeconds: 10
118+
resources:
119+
requests:
120+
cpu: 100m
121+
memory: 100Mi
122+
limits:
123+
cpu: 5000m
124+
memory: 3G
125+
startupProbe:
126+
exec:
127+
command:
128+
- cat
129+
- {{ .Values.INSTALL_PATH }}/public/healthz.php
130+
failureThreshold: 30
131+
periodSeconds: 10
132+
volumeMounts:
133+
- name: wordpress
134+
mountPath: /srv
135+
tolerations:
136+
- key: node.kubernetes.io/disk-pressure
137+
operator: Exists
138+
- key: node.kubernetes.io/memory-pressure
139+
operator: Exists
140+
- key: node.kubernetes.io/pid-pressure
141+
operator: Exists
142+
volumes:
143+
- name: wordpress
144+
hostPath:
145+
path: /srv
146+
type: DirectoryOrCreate

charts/hub-server/templates/ingress.yml

+22
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: ingress-fcgi-params
5+
namespace: {{ .Release.Namespace }}
6+
data:
7+
SCRIPT_FILENAME: $document_root$fastcgi_script_name
8+
---
9+
110
apiVersion: networking.k8s.io/v1
211
kind: Ingress
312
metadata:
@@ -8,10 +17,16 @@ metadata:
817
kubernetes.io/ingress.class: nginx
918
nginx.ingress.kubernetes.io/backend-protocol: FCGI
1019
nginx.ingress.kubernetes.io/enable-cors: "true"
20+
nginx.ingress.kubernetes.io/fastcgi-params-configmap: {{ .Release.Namespace }}/ingress-fcgi-params
1121
nginx.ingress.kubernetes.io/fastcgi-index: index.php
1222
nginx.ingress.kubernetes.io/use-regex: "false"
1323
nginx.ingress.kubernetes.io/enable-rewrite-log: "false"
1424
nginx.ingress.kubernetes.io/use-forwarded-headers: "true"
25+
nginx.ingress.kubernetes.io/limit-connections: "3"
26+
nginx.ingress.kubernetes.io/limit-rps: "3"
27+
nginx.ingress.kubernetes.io/limit-burst-multiplier: "3"
28+
nginx.ingress.kubernetes.io/limit-req-status-code: "429"
29+
nginx.ingress.kubernetes.io/limit-conn-status-code: "429"
1530
nginx.ingress.kubernetes.io/configuration-snippet: |
1631
more_set_headers 'Content-Type: text/plain';
1732
more_set_headers 'X-Robots-Tag: noindex, nofollow';
@@ -39,3 +54,10 @@ spec:
3954
name: hub-server
4055
port:
4156
name: fastcgi
57+
- path: /
58+
pathType: ImplementationSpecific
59+
backend:
60+
service:
61+
name: {{ .Release.Name }}
62+
port:
63+
name: fastcgi
+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
name: secrets
5+
namespace: {{ .Release.Namespace }}
6+
stringData:
7+
GITHUB_TOKEN: {{ .Values.GITHUB_TOKEN | squote }}
8+
.env: |
9+
APP_ENV={{ .Values.HUB_SERVER_ENV | squote }}
10+
APP_URL={{ .Values.VIRTUAL_HOST | squote }}
11+
DIVI_HUB_ENDPOINT={{ .Values.DIVI_HUB_ENDPOINT | squote }}
12+
DIVI_HUB_WEBSITES_QUEUE_SIZE={{ .Values.DIVI_HUB_WEBSITES_QUEUE_SIZE | squote }}
13+
DIVI_HUB_IP_ADDRESS={{ .Values.DIVI_HUB_IP_ADDRESS | squote }}
14+
DIVI_HUB_PRIVATE_KEY_64={{ .Values.DIVI_HUB_PRIVATE_KEY_64 | b64enc | squote }}
15+
HUB_SERVER_PATH={{ .Values.INSTALL_PATH | squote }}
16+
HUB_SERVER_REPO_URL={{ .Values.HUB_SERVER_REPO_URL | squote }}
17+
IMAGE_VERSION={{ .Values.HUB_SERVER_VERSION | squote }}
18+
REDIS_HOST={{ .Values.REDIS_HOSTNAME | squote }}
19+
VIRTUAL_HOST={{ .Values.VIRTUAL_HOST | squote }}
20+

charts/hub-server/values.yaml

+10-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,11 @@
1-
PUBLIC_KEY:
1+
DIVI_HUB_ENDPOINT:
2+
DIVI_HUB_IP_ADDRESS:
3+
DIVI_HUB_PRIVATE_KEY_64:
4+
DIVI_HUB_WEBSITES_QUEUE_SIZE:
5+
GITHUB_TOKEN:
6+
HUB_SERVER_ENV:
7+
HUB_SERVER_REPO_URL:
8+
HUB_SERVER_VERSION:
9+
INSTALL_PATH:
10+
REDIS_HOSTNAME:
211
VIRTUAL_HOST:

0 commit comments

Comments
 (0)