Files
Olares/apps/search3/config/cluster/deploy/search3_server_deploy.yaml
2025-03-27 11:12:46 +08:00

224 lines
12 KiB
YAML

{{- $namespace := printf "%s" "os-system" -}}
{{- $search3_secret := (lookup "v1" "Secret" $namespace "search3-secrets") -}}
{{- $pg_password := "" -}}
{{ if $search3_secret -}}
{{ $pg_password = (index $search3_secret "data" "pg_password") }}
{{ else -}}
{{ $pg_password = randAlphaNum 16 | b64enc }}
{{- end -}}
---
apiVersion: v1
kind: Secret
metadata:
name: search3-secrets
namespace: os-system
type: Opaque
data:
pg_password: {{ $pg_password }}
---
apiVersion: apr.bytetrade.io/v1alpha1
kind: MiddlewareRequest
metadata:
name: search3-pg
namespace: os-system
spec:
app: search3
appNamespace: os-system
middleware: postgres
postgreSQL:
user: search3_os_system
password:
valueFrom:
secretKeyRef:
key: pg_password
name: search3-secrets
databases:
- name: search3
extensions:
- pg_trgm
- btree_gin
- zhparser
scripts:
- begin;
- CREATE TEXT SEARCH CONFIGURATION chinese (PARSER = zhparser);
- ALTER TEXT SEARCH CONFIGURATION chinese ADD MAPPING FOR a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z WITH simple;
- ALTER TEXT SEARCH CONFIGURATION arabic DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION arabic DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION arabic ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION arabic ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION armenian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION armenian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION armenian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION armenian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION basque DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION basque DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION basque ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION basque ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION catalan DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION catalan DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION catalan ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION catalan ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION danish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION danish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION danish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION danish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION dutch DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION dutch DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION dutch ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION dutch ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION english DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION english DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION english ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION english ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION finnish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION finnish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION finnish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION finnish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION french DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION french DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION french ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION french ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION german DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION german DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION german ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION german ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION greek DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION greek DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION greek ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION greek ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION hindi DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION hindi DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION hindi ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION hindi ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION hungarian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION hungarian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION hungarian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION hungarian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION indonesian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION indonesian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION indonesian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION indonesian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION irish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION irish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION irish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION irish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION italian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION italian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION italian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION italian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION lithuanian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION lithuanian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION lithuanian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION lithuanian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION nepali DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION nepali DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION nepali ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION nepali ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION norwegian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION norwegian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION norwegian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION norwegian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION portuguese DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION portuguese DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION portuguese ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION portuguese ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION romanian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION romanian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION romanian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION romanian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION russian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION russian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION russian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION russian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION serbian DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION serbian DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION serbian ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION serbian ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION spanish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION spanish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION spanish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION spanish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION swedish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION swedish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION swedish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION swedish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION tamil DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION tamil DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION tamil ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION tamil ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION turkish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION turkish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION turkish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION turkish ADD MAPPING FOR asciiword WITH simple;
- ALTER TEXT SEARCH CONFIGURATION yiddish DROP MAPPING FOR word;
- ALTER TEXT SEARCH CONFIGURATION yiddish DROP MAPPING FOR asciiword;
- ALTER TEXT SEARCH CONFIGURATION yiddish ADD MAPPING FOR word WITH simple;
- ALTER TEXT SEARCH CONFIGURATION yiddish ADD MAPPING FOR asciiword WITH simple;
- commit;
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: search3
namespace: {{ .Release.Namespace }}
labels:
applications.app.bytetrade.io/author: bytetrade.io
annotations:
applications.app.bytetrade.io/version: '0.0.1'
spec:
replicas: 1
selector:
matchLabels:
app: search3
template:
metadata:
labels:
app: search3
spec:
initContainers:
- name: init-container
image: 'postgres:16.0-alpine3.18'
command:
- sh
- '-c'
- >-
echo -e "Checking for the availability of PostgreSQL Server deployment"; until psql -h $PGHOST -p $PGPORT -U $PGUSER -d $PGDB1 -c "SELECT 1"; do sleep 1; printf "-"; done; sleep 5; echo -e " >> PostgreSQL DB Server has started";
env:
- name: PGHOST
value: citus-0.citus-headless.os-system
- name: PGPORT
value: "5432"
- name: PGUSER
value: search3_os_system
- name: PGPASSWORD
value: {{ $pg_password | b64dec }}
- name: PGDB1
value: os_system_search3
containers:
- name: search3
image: beclab/search3:v0.0.30
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
env:
- name: DATABASE_URL
value: postgres://search3_os_system:{{ $pg_password | b64dec }}@citus-0.citus-headless.os-system:5432/os_system_search3
---
apiVersion: v1
kind: Service
metadata:
name: search3
namespace: {{ .Release.Namespace }}
spec:
selector:
app: search3
type: ClusterIP
ports:
- protocol: TCP
name: search3
port: 80
targetPort: 8080