fix(searx + searxng) code refactoring (#4273)

* fix(searx + searxng) code refactoring

* cleanup

Co-authored-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
This commit is contained in:
Xstar97
2022-11-02 02:16:35 +02:00
committed by GitHub
co-authored by Stavros Kois
parent 8a9d145670
commit 9964722f9b
6 changed files with 102 additions and 69 deletions
+8 -7
View File
@@ -1,8 +1,3 @@
annotations:
truecharts.org/SCALE-support: "true"
truecharts.org/catagories: |
- Productivity
- Other
apiVersion: v2 apiVersion: v2
appVersion: "latest" appVersion: "latest"
dependencies: dependencies:
@@ -10,7 +5,7 @@ dependencies:
repository: https://library-charts.truecharts.org repository: https://library-charts.truecharts.org
version: 10.7.7 version: 10.7.7
deprecated: false deprecated: false
description: Searx is a free internet metasearch engine which aggregates results from more than 70 search services. Users are neither tracked nor profiled. Additionally, searx can be used over Tor for online anonymity. description: Meta search engine which aggregates results from more than 70 search services.
home: https://truecharts.org/docs/charts/incubator/searx home: https://truecharts.org/docs/charts/incubator/searx
icon: https://truecharts.org/img/hotlink-ok/chart-icons/searx.png icon: https://truecharts.org/img/hotlink-ok/chart-icons/searx.png
keywords: keywords:
@@ -28,4 +23,10 @@ sources:
- https://github.com/asciimoo/searx - https://github.com/asciimoo/searx
- https://hub.docker.com/r/searx/searx/ - https://hub.docker.com/r/searx/searx/
type: application type: application
version: 0.0.44 version: 0.0.45
annotations:
truecharts.org/catagories: |
- Productivity
- Other
truecharts.org/SCALE-support: "true"
truecharts.org/grade: U
+33 -20
View File
@@ -13,10 +13,23 @@ questions:
# Include{controllerExpert} # Include{controllerExpert}
# Include{controllerExpertExtraArgs} # Include{controllerExpertExtraArgs}
# Include{containerConfig} # Include{containerConfig}
- variable: env
group: Container Configuration
label: Image Environment
schema:
additional_attrs: true
type: dict
attrs:
- variable: BASE_URL
label: Base URL
description: Set hostname https://search.mydomain.com
schema:
type: string
default: ""
# Include{serviceRoot} # Include{serviceRoot}
- variable: main - variable: main
label: "Main Service" label: Main Service
description: "The Primary service on which the healthcheck runs, often the webUI" description: The Primary service on which the healthcheck runs, often the webUI
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -24,22 +37,22 @@ questions:
# Include{serviceSelectorLoadBalancer} # Include{serviceSelectorLoadBalancer}
# Include{serviceSelectorExtras} # Include{serviceSelectorExtras}
- variable: main - variable: main
label: "Main Service Port Configuration" label: Main Service Port Configuration
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
attrs: attrs:
- variable: port - variable: port
label: "Port" label: Port
description: "This port exposes the container port on the service" description: This port exposes the container port on the service
schema: schema:
type: int type: int
default: 8080 default: 8080
required: true required: true
# Include{advancedPortTCP} # Include{advancedPortTCP}
- variable: targetPort - variable: targetPort
label: "Target Port" label: Target Port
description: "The internal(!) port on the container the Application runs on" description: The internal(!) port on the container the Application runs on
schema: schema:
type: int type: int
default: 8080 default: 8080
@@ -49,8 +62,8 @@ questions:
# Include{serviceList} # Include{serviceList}
# Include{persistenceRoot} # Include{persistenceRoot}
- variable: config - variable: config
label: "config Storage" label: App Config Storage
description: "Contain config files" description: Stores the Application Configuration.
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -60,7 +73,7 @@ questions:
# Include{persistenceList} # Include{persistenceList}
# Include{ingressRoot} # Include{ingressRoot}
- variable: main - variable: main
label: "Main Ingress" label: Main Ingress
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -73,42 +86,42 @@ questions:
# Include{security} # Include{security}
# Include{securityContextAdvancedRoot} # Include{securityContextAdvancedRoot}
- variable: privileged - variable: privileged
label: "Privileged mode" label: Privileged mode
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: readOnlyRootFilesystem - variable: readOnlyRootFilesystem
label: "ReadOnly Root Filesystem" label: ReadOnly Root Filesystem
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: allowPrivilegeEscalation - variable: allowPrivilegeEscalation
label: "Allow Privilege Escalation" label: Allow Privilege Escalation
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: runAsNonRoot - variable: runAsNonRoot
label: "runAsNonRoot" label: runAsNonRoot
schema: schema:
type: boolean type: boolean
default: false default: false
# Include{securityContextAdvanced} # Include{securityContextAdvanced}
# Include{podSecurityContextRoot} # Include{podSecurityContextRoot}
- variable: runAsUser - variable: runAsUser
label: "runAsUser" label: runAsUser
description: "The UserID of the user running the application" description: The UserID of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: runAsGroup - variable: runAsGroup
label: "runAsGroup" label: runAsGroup
description: The groupID this App of the user running the application" description: The groupID this App of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: fsGroup - variable: fsGroup
label: "fsGroup" label: fsGroup
description: "The group that should own ALL storage." description: The group that should own ALL storage.
schema: schema:
type: int type: int
default: 568 default: 568
+11 -5
View File
@@ -1,18 +1,19 @@
env: {}
image: image:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
repository: tccr.io/truecharts/searx repository: tccr.io/truecharts/searx
tag: latest@sha256:df4978aa7639d6cb2b34c5c30cc0bc05a132e17a34d2b174c401d6a65dcf741d tag: latest@sha256:df4978aa7639d6cb2b34c5c30cc0bc05a132e17a34d2b174c401d6a65dcf741d
persistence:
config:
enabled: true
mountPath: /etc/searx
podSecurityContext: podSecurityContext:
runAsGroup: 0 runAsGroup: 0
runAsUser: 0 runAsUser: 0
securityContext: securityContext:
readOnlyRootFilesystem: false readOnlyRootFilesystem: false
runAsNonRoot: false runAsNonRoot: false
env:
BASE_URL: ""
service: service:
main: main:
ports: ports:
@@ -21,5 +22,10 @@ service:
protocol: TCP protocol: TCP
targetPort: 8080 targetPort: 8080
persistence:
config:
enabled: true
mountPath: /etc/searx
portal: portal:
enabled: true enabled: true
+8 -7
View File
@@ -1,8 +1,3 @@
annotations:
truecharts.org/SCALE-support: "true"
truecharts.org/catagories: |
- Productivity
- Other
apiVersion: v2 apiVersion: v2
appVersion: "latest" appVersion: "latest"
dependencies: dependencies:
@@ -10,7 +5,7 @@ dependencies:
repository: https://library-charts.truecharts.org repository: https://library-charts.truecharts.org
version: 10.7.7 version: 10.7.7
deprecated: false deprecated: false
description: "SearXNG is a free internet metasearch engine which aggregates results from more than 70 search services. Users are neither tracked nor profiled. Additionally, SearXNG can be used over Tor for online anonymity." description: Meta search engine which aggregates results from more than 70 search services.
home: https://truecharts.org/docs/charts/incubator/searxng home: https://truecharts.org/docs/charts/incubator/searxng
icon: https://truecharts.org/img/hotlink-ok/chart-icons/searxng.png icon: https://truecharts.org/img/hotlink-ok/chart-icons/searxng.png
keywords: keywords:
@@ -28,4 +23,10 @@ sources:
- https://github.com/searxng/searxng - https://github.com/searxng/searxng
- https://hub.docker.com/r/searxng/searxng - https://hub.docker.com/r/searxng/searxng
type: application type: application
version: 0.0.61 version: 0.0.62
annotations:
truecharts.org/catagories: |
- Productivity
- Other
truecharts.org/SCALE-support: "true"
truecharts.org/grade: U
+30 -24
View File
@@ -13,23 +13,29 @@ questions:
# Include{controllerExpert} # Include{controllerExpert}
# Include{controllerExpertExtraArgs} # Include{controllerExpertExtraArgs}
- variable: env - variable: env
group: "Container Configuration" group: Container Configuration
label: "Image Environment" label: Image Environment
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
attrs: attrs:
- variable: INSTANCE_NAME - variable: INSTANCE_NAME
label: "INSTANCE_NAME" label: Instance Name
description: "Your SearXNG instance name" description: Your SearXNG instance name
schema:
type: string
default: SearXng
- variable: BASE_URL
label: Base URL
description: Set base url like so https://search.mydomain.com
schema: schema:
type: string type: string
default: "" default: ""
# Include{containerConfig} # Include{containerConfig}
# Include{serviceRoot} # Include{serviceRoot}
- variable: main - variable: main
label: "Main Service" label: Main Service
description: "The Primary service on which the healthcheck runs, often the webUI" description: The Primary service on which the healthcheck runs, often the webUI
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -37,22 +43,22 @@ questions:
# Include{serviceSelectorLoadBalancer} # Include{serviceSelectorLoadBalancer}
# Include{serviceSelectorExtras} # Include{serviceSelectorExtras}
- variable: main - variable: main
label: "Main Service Port Configuration" label: Main Service Port Configuration
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
attrs: attrs:
- variable: port - variable: port
label: "Port" label: Port
description: "This port exposes the container port on the service" description: This port exposes the container port on the service
schema: schema:
type: int type: int
default: 8080 default: 8080
required: true required: true
# Include{advancedPortTCP} # Include{advancedPortTCP}
- variable: targetPort - variable: targetPort
label: "Target Port" label: Target Port
description: "The internal(!) port on the container the Application runs on" description: The internal(!) port on the container the Application runs on
schema: schema:
type: int type: int
default: 8080 default: 8080
@@ -62,8 +68,8 @@ questions:
# Include{serviceList} # Include{serviceList}
# Include{persistenceRoot} # Include{persistenceRoot}
- variable: config - variable: config
label: "config Storage" label: App Config Storage
description: "SearXNGs config location" description: Stores the Application Configuration.
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -73,7 +79,7 @@ questions:
# Include{persistenceList} # Include{persistenceList}
# Include{ingressRoot} # Include{ingressRoot}
- variable: main - variable: main
label: "Main Ingress" label: Main Ingress
schema: schema:
additional_attrs: true additional_attrs: true
type: dict type: dict
@@ -86,42 +92,42 @@ questions:
# Include{security} # Include{security}
# Include{securityContextAdvancedRoot} # Include{securityContextAdvancedRoot}
- variable: privileged - variable: privileged
label: "Privileged mode" label: Privileged mode
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: readOnlyRootFilesystem - variable: readOnlyRootFilesystem
label: "ReadOnly Root Filesystem" label: ReadOnly Root Filesystem
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: allowPrivilegeEscalation - variable: allowPrivilegeEscalation
label: "Allow Privilege Escalation" label: Allow Privilege Escalation
schema: schema:
type: boolean type: boolean
default: false default: false
- variable: runAsNonRoot - variable: runAsNonRoot
label: "runAsNonRoot" label: runAsNonRoot
schema: schema:
type: boolean type: boolean
default: false default: false
# Include{securityContextAdvanced} # Include{securityContextAdvanced}
# Include{podSecurityContextRoot} # Include{podSecurityContextRoot}
- variable: runAsUser - variable: runAsUser
label: "runAsUser" label: runAsUser
description: "The UserID of the user running the application" description: The UserID of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: runAsGroup - variable: runAsGroup
label: "runAsGroup" label: runAsGroup
description: The groupID this App of the user running the application" description: The groupID this App of the user running the application
schema: schema:
type: int type: int
default: 0 default: 0
- variable: fsGroup - variable: fsGroup
label: "fsGroup" label: fsGroup
description: "The group that should own ALL storage." description: The group that should own ALL storage.
schema: schema:
type: int type: int
default: 568 default: 568
+12 -6
View File
@@ -1,19 +1,20 @@
env:
INSTANCE_NAME: ""
image: image:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
repository: tccr.io/truecharts/searxng repository: tccr.io/truecharts/searxng
tag: latest@sha256:3a3d43fa9cb04f1c664b5a565097fd718a3050f07c1e4f8bf031e0d4f2436fbe tag: latest@sha256:3a3d43fa9cb04f1c664b5a565097fd718a3050f07c1e4f8bf031e0d4f2436fbe
persistence:
config: env:
enabled: true BASE_URL: ""
mountPath: /etc/searxng INSTANCE_NAME: SearXng
podSecurityContext: podSecurityContext:
runAsGroup: 0 runAsGroup: 0
runAsUser: 0 runAsUser: 0
securityContext: securityContext:
readOnlyRootFilesystem: false readOnlyRootFilesystem: false
runAsNonRoot: false runAsNonRoot: false
service: service:
main: main:
ports: ports:
@@ -22,5 +23,10 @@ service:
protocol: TCP protocol: TCP
targetPort: 8080 targetPort: 8080
persistence:
config:
enabled: true
mountPath: /etc/searxng
portal: portal:
enabled: true enabled: true