feat(openbooks) add openbooks (#6175)

* feat(openbooks) add openbooks

* fix persistence config

* rasnr | rofs true | remove basepath

* added more GUI options

* fix variable type

* feat(openbooks) add openbooks

* fix persistence config

* rasnr | rofs true | remove basepath

* added more GUI options

* fix variable type

* add args.tpl

* format

* Update charts/incubator/openbooks/templates/_args.tpl

Co-authored-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
Signed-off-by: Xstar97 <Xstar97@users.noreply.github.com>

* Update charts/incubator/openbooks/values.yaml

Signed-off-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>

* ints must be strings

* shorter

Signed-off-by: Xstar97 <Xstar97@users.noreply.github.com>
Signed-off-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
Co-authored-by: Stavros Kois <47820033+stavros-k@users.noreply.github.com>
Co-authored-by: Stavros kois <s.kois@outlook.com>
This commit is contained in:
Xstar97 2023-01-15 15:10:59 -05:00 committed by GitHub
parent d1d922ce36
commit 5c91c5efe4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 303 additions and 0 deletions

View File

@ -0,0 +1,30 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS
# helm-docs templates
*.gotmpl
# docs folder
/docs
# icon
icon.png

View File

@ -0,0 +1 @@
# Changelog

View File

@ -0,0 +1,30 @@
apiVersion: v2
appVersion: "4.5.0"
dependencies:
- name: common
repository: https://library-charts.truecharts.org
version: 11.1.2
deprecated: false
description: IRC Highway eBook Downloads.
home: https://truecharts.org/charts/incubator/openbooks
icon: https://truecharts.org/img/hotlink-ok/chart-icons/openbooks.png
keywords:
- openbooks
- media
kubeVersion: ">=1.16.0-0"
maintainers:
- email: info@truecharts.org
name: TrueCharts
url: https://truecharts.org
name: openbooks
sources:
- https://github.com/truecharts/charts/tree/master/charts/incubator/openbooks
- https://github.com/evan-buss/openbooks
- https://hub.docker.com/r/evanbuss/openbooks
type: application
version: 0.0.1
annotations:
truecharts.org/catagories: |
- media
truecharts.org/SCALE-support: "true"
truecharts.org/grade: U

View File

@ -0,0 +1 @@
# README

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1,169 @@
# Include{groups}
portals:
open:
# Include{portalLink}
questions:
# Include{global}
# Include{controller}
# Include{replicas}
# Include{replica1}
# Include{controllerExpertExtraArgs}
- variable: openbooks
group: App Configuration
label: OpenBooks Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: user_name
label: User Name
description: Username used to connect to IRC server.
schema:
type: string
default: ""
required: true
- variable: server
label: Server
description: The IRC server:port to connect to.
schema:
type: string
default: "irc.irchighway.net:6697"
required: true
- variable: tls
label: TLS
description: Connect to IRC server over TLS.
schema:
type: boolean
default: true
- variable: search
label: Search
description: The IRC search operator to use.
schema:
type: string
default: search
enum:
- value: search
description: Search
- value: searchook
description: Searchook
- variable: debug
label: Debug
description: Display additional debug information, including all config values.
schema:
type: boolean
default: false
- variable: log
label: Log
description: Save raw IRC logs for each client connection.
schema:
type: boolean
default: false
- variable: persist
label: Persist
description: Save eBook files after sending to browser.
schema:
type: boolean
default: true
- variable: no_browser_downloads
label: No Browser Downloads
description: Don't send files to browser but save them to disk.
schema:
type: boolean
default: true
# Include{containerConfig}
# Include{serviceRoot}
- variable: main
label: Main Service
description: The Primary service on which the healthcheck runs, often the webUI
schema:
additional_attrs: true
type: dict
attrs:
# Include{serviceSelectorLoadBalancer}
# Include{serviceSelectorExtras}
- variable: main
label: Main Service Port Configuration
schema:
additional_attrs: true
type: dict
attrs:
- variable: port
label: Port
description: This port exposes the container port on the service
schema:
type: int
default: 10608
required: true
# Include{serviceExpertRoot}
default: false
# Include{serviceExpert}
# Include{serviceList}
# Include{persistenceRoot}
- variable: books
label: App Books Storage
description: Stores the Application Books.
schema:
additional_attrs: true
type: dict
attrs:
# Include{persistenceBasic}
# Include{persistenceList}
# Include{ingressRoot}
- variable: main
label: Main Ingress
schema:
additional_attrs: true
type: dict
attrs:
# Include{ingressDefault}
# Include{ingressTLS}
# Include{ingressTraefik}
# Include{ingressList}
# Include{security}
# Include{securityContextAdvancedRoot}
- variable: privileged
label: Privileged mode
schema:
type: boolean
default: false
- variable: readOnlyRootFilesystem
label: ReadOnly Root Filesystem
schema:
type: boolean
default: false
- variable: allowPrivilegeEscalation
label: Allow Privilege Escalation
schema:
type: boolean
default: false
- variable: runAsNonRoot
label: runAsNonRoot
schema:
type: boolean
default: true
# Include{podSecurityContextRoot}
- variable: runAsUser
label: runAsUser
description: The UserID of the user running the application
schema:
type: int
default: 568
- variable: runAsGroup
label: runAsGroup
description: The groupID this App of the user running the application
schema:
type: int
default: 568
- variable: fsGroup
label: fsGroup
description: The group that should own ALL storage.
schema:
type: int
default: 568
# Include{podSecurityContextAdvanced}
# Include{resources}
# Include{advanced}
# Include{addons}
# Include{codeserver}
# Include{vpn}
# Include{documentation}

View File

@ -0,0 +1,24 @@
{{- define "openbooks.args" -}}
args:
- --port
- {{ .Values.service.main.ports.main.port | quote }}
- --name
- {{ .Values.openbooks.user_name }}
- --searchbot
- {{ .Values.openbooks.search }}
{{- if .Values.openbooks.tls }}
- --tls
{{- end -}}
{{- if .Values.openbooks.log }}
- --log
{{- end -}}
{{- if .Values.openbooks.debug }}
- --debug
{{- end -}}
{{- if .Values.openbooks.persist }}
- --persist
{{- end -}}
{{- if .Values.openbooks.no_browser_downloads }}
- --no-browser-downloads
{{- end -}}
{{- end -}}

View File

@ -0,0 +1,8 @@
{{/* Make sure all variables are set properly */}}
{{- include "tc.common.loader.init" . }}
{{- $args := concat .Values.args (include "openbooks.args" . | fromYaml).args }}
{{- $_ := set .Values "args" $args -}}
{{/* Render the templates */}}
{{ include "tc.common.loader.apply" . }}

View File

@ -0,0 +1,40 @@
image:
repository: tccr.io/truecharts/openbooks
pullPolicy: IfNotPresent
tag: 4.5.0@sha256:fe1b693d63397e01a5673b8b16180539c1cb952abfe4ebfb58d0950ab9886adc
securityContext:
readOnlyRootFilesystem: false
openbooks:
user_name: truecharts
server: irc.irchighway.net:6697
debug: true
log: true
search: search
persist: false
no_browser_downloads: false
tls: true
probes:
liveness:
type: HTTP
readiness:
type: HTTP
startup:
type: HTTP
service:
main:
ports:
main:
protocol: HTTP
port: 10608
persistence:
books:
enabled: true
mountPath: /books/books
portal:
enabled: true