Commit new Chart releases for TrueCharts

Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
TrueCharts-Bot 2023-12-08 12:29:13 +00:00
parent 3b4792f710
commit 35ada0cbcc
35 changed files with 8109 additions and 24 deletions

View File

@ -1,12 +0,0 @@
## [fleet-8.0.11](https://github.com/truecharts/charts/compare/fleet-8.0.10...fleet-8.0.11) (2023-12-03)
### Chore
- bump everything to ensure catalog has latest versions
- fix annotations again
- update annotations
- cleanup chart.yaml and add min-max scale version

View File

@ -4,6 +4,15 @@
## [fleet-8.0.12](https://github.com/truecharts/charts/compare/fleet-8.0.11...fleet-8.0.12) (2023-12-08)
### Chore
- update container image ghcr.io/linuxserver/fleet to 2.3.3[@c661ae3](https://github.com/c661ae3) ([#15879](https://github.com/truecharts/charts/issues/15879))
## [fleet-8.0.11](https://github.com/truecharts/charts/compare/fleet-8.0.10...fleet-8.0.11) (2023-12-03)
### Chore
@ -88,12 +97,3 @@
## [fleet-8.0.1](https://github.com/truecharts/charts/compare/fleet-8.0.0...fleet-8.0.1) (2023-10-07)
### Chore
- update helm general non-major ([#13386](https://github.com/truecharts/charts/issues/13386))
## [fleet-8.0.0](https://github.com/truecharts/charts/compare/fleet-7.0.28...fleet-8.0.0) (2023-07-31)

View File

@ -1,7 +1,7 @@
kubeVersion: ">=1.24.0"
apiVersion: v2
name: fleet
version: 8.0.11
version: 8.0.12
appVersion: 2.3.3
description:
Fleet provides an online web interface which displays a set of maintained

View File

@ -0,0 +1,9 @@
## [fleet-8.0.12](https://github.com/truecharts/charts/compare/fleet-8.0.11...fleet-8.0.12) (2023-12-08)
### Chore
- update container image ghcr.io/linuxserver/fleet to 2.3.3[@c661ae3](https://github.com/c661ae3) ([#15879](https://github.com/truecharts/charts/issues/15879))

View File

@ -1,7 +1,7 @@
image:
repository: ghcr.io/linuxserver/fleet
pullPolicy: IfNotPresent
tag: 2.3.3@sha256:981a59709c6cdbe0127672ab48ca86c8aeecf03cfd80176468b827ce5be3f8e3
tag: 2.3.3@sha256:c661ae3190f6c24b39a9b45c1839f88a8e733e2b2ce9f1dcbddc97e976fa7f38
securityContext:
container:
runAsNonRoot: false

View File

@ -239,6 +239,44 @@ questions:
schema:
type: string
required: true
- variable: imagePullSecretList
group: "General Settings"
label: "Image Pull Secrets"
schema:
type: list
default: []
items:
- variable: pullsecretentry
label: "Pull Secret"
schema:
type: dict
additional_attrs: true
attrs:
- variable: registry
label: "Registry"
schema:
type: string
required: true
default: "https://index.docker.io/v1/"
- variable: username
label: "Username"
schema:
type: string
required: true
default: ""
- variable: password
label: "Password"
schema:
type: string
required: true
default: ""
- variable: email
label: "Email"
schema:
type: string
required: true
default: ""
- variable: service
group: Networking and Services
label: Configure Service(s)
@ -546,6 +584,8 @@ questions:
description: emptyDir
- value: nfs
description: NFS Share
- value: iscsi
description: iSCSI Share
- variable: server
label: NFS Server
schema:
@ -558,6 +598,83 @@ questions:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: iscsi
label: iSCSI Options
schema:
show_if: [["type", "=", "iscsi"]]
type: dict
additional_attrs: true
attrs:
- variable: targetPortal
label: targetPortal
schema:
type: string
required: true
default: ""
- variable: iqn
label: iqn
schema:
type: string
required: true
default: ""
- variable: lun
label: lun
schema:
type: int
default: 0
- variable: authSession
label: authSession
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: authDiscovery
label: authDiscovery
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: autoPermissions
label: Automatic Permissions Configuration
description: Automatically set permissions
@ -650,7 +767,7 @@ questions:
type: string
default: "disabled"
enum:
- value: "disabled"
- value: disabled
description: disabled
- value: smb
description: smb
@ -764,6 +881,82 @@ questions:
show_if: [["type", "=", "nfs"]]
type: string
default: ""
- variable: iscsi
label: iSCSI Options
schema:
show_if: [["type", "=", "iscsi"]]
type: dict
additional_attrs: true
attrs:
- variable: targetPortal
label: targetPortal
schema:
type: string
required: true
default: ""
- variable: iqn
label: iqn
schema:
type: string
required: true
default: ""
- variable: lun
label: lun
schema:
type: int
default: 0
- variable: authSession
label: authSession
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: authDiscovery
label: authDiscovery
schema:
type: dict
additional_attrs: true
attrs:
- variable: username
label: username
schema:
type: string
default: ""
- variable: password
label: password
schema:
type: string
default: ""
- variable: usernameInitiator
label: usernameInitiator
schema:
type: string
default: ""
- variable: passwordInitiator
label: passwordInitiator
schema:
type: string
default: ""
- variable: autoPermissions
label: Automatic Permissions Configuration
description: Automatically set permissions
@ -1012,6 +1205,46 @@ questions:
type: string
default: ""
required: true
- variable: integration
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: homepage
label: Homepage
description: Connect ingress with Homepage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: name
label: Name
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: description
label: Description
description: defaults to chart description
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: group
label: Group
schema:
type: string
required: true
default: "default"
show_if: [["enabled", "=", true]]
- variable: advanced
label: Show Advanced Settings
description: Advanced settings are not covered by TrueCharts Support
@ -1239,6 +1472,46 @@ questions:
type: string
show_if: [["certificateIssuer", "=", ""]]
default: ""
- variable: integration
label: Integrations
description: Connect ingress with other charts
schema:
additional_attrs: true
type: dict
attrs:
- variable: homepage
label: Homepage
description: Connect ingress with Homepage
schema:
additional_attrs: true
type: dict
attrs:
- variable: enabled
label: enabled
schema:
type: boolean
default: false
- variable: name
label: Name
description: defaults to chartname
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: description
label: Description
description: defaults to chart description
schema:
type: string
default: ""
show_if: [["enabled", "=", true]]
- variable: group
label: Group
schema:
type: string
required: true
default: "default"
show_if: [["enabled", "=", true]]
- variable: entrypoint
label: Traefik Entrypoint
description: Entrypoint used by Traefik when using Traefik as Ingress Provider

View File

@ -0,0 +1,99 @@
**Important:**
*for the complete changelog, please refer to the website*
## [guacamole-10.0.17](https://github.com/truecharts/charts/compare/guacamole-10.0.16...guacamole-10.0.17) (2023-12-08)
### Chore
- update container image guacamole/guacamole to v1.5.4[@a7763a8](https://github.com/a7763a8) ([#15873](https://github.com/truecharts/charts/issues/15873))
## [guacamole-10.0.16](https://github.com/truecharts/charts/compare/guacamole-10.0.15...guacamole-10.0.16) (2023-12-08)
### Chore
- update container image guacamole/guacd to v1.5.4[@8a6fd08](https://github.com/8a6fd08) ([#15874](https://github.com/truecharts/charts/issues/15874))
## [guacamole-10.0.15](https://github.com/truecharts/charts/compare/guacamole-10.0.14...guacamole-10.0.15) (2023-12-03)
### Chore
- bump everything to ensure catalog has latest versions
- fix annotations again
- update annotations
- cleanup chart.yaml and add min-max scale version
## [guacamole-10.0.14](https://github.com/truecharts/charts/compare/guacamole-10.0.13...guacamole-10.0.14) (2023-11-18)
## [guacamole-10.0.13](https://github.com/truecharts/charts/compare/guacamole-10.0.12...guacamole-10.0.13) (2023-11-17)
## [guacamole-10.0.12](https://github.com/truecharts/charts/compare/guacamole-10.0.11...guacamole-10.0.12) (2023-11-08)
### Chore
- update helm general non-major ([#14465](https://github.com/truecharts/charts/issues/14465))
## [guacamole-10.0.11](https://github.com/truecharts/charts/compare/guacamole-10.0.10...guacamole-10.0.11) (2023-11-08)
### Chore
- update helm general non-major ([#14454](https://github.com/truecharts/charts/issues/14454))
## [guacamole-10.0.10](https://github.com/truecharts/charts/compare/guacamole-10.0.9...guacamole-10.0.10) (2023-11-05)
### Chore
- update helm general non-major ([#14365](https://github.com/truecharts/charts/issues/14365))
## [guacamole-10.0.9](https://github.com/truecharts/charts/compare/guacamole-10.0.8...guacamole-10.0.9) (2023-11-03)
### Chore
- update helm general non-major ([#14287](https://github.com/truecharts/charts/issues/14287))
## [guacamole-10.0.8](https://github.com/truecharts/charts/compare/guacamole-10.0.7...guacamole-10.0.8) (2023-10-29)
### Chore
- update helm general non-major ([#14094](https://github.com/truecharts/charts/issues/14094))
## [guacamole-10.0.7](https://github.com/truecharts/charts/compare/guacamole-10.0.5...guacamole-10.0.7) (2023-10-28)

View File

@ -0,0 +1,36 @@
kubeVersion: ">=1.24.0"
apiVersion: v2
name: guacamole
version: 10.0.17
appVersion: 1.5.4
description: Apache Guacamole is a clientless remote desktop gateway.
home: https://truecharts.org/charts/stable/guacamole
icon: https://truecharts.org/img/hotlink-ok/chart-icons/guacamole.png
deprecated: false
sources:
- https://github.com/apache/guacamole-client
- https://github.com/truecharts/charts/tree/master/charts/stable/guacamole
- https://hub.docker.com/r/guacamole/guacamole
maintainers:
- name: TrueCharts
email: info@truecharts.org
url: https://truecharts.org
keywords:
- guacamole
- remote
dependencies:
- name: common
version: 14.3.5
repository: https://library-charts.truecharts.org
condition: ""
alias: ""
tags: []
import-values: []
annotations:
max_scale_version: 23.10.1
min_scale_version: 22.12.4
truecharts.org/SCALE-support: "true"
truecharts.org/category: utilities
truecharts.org/max_helm_version: "3.13"
truecharts.org/min_helm_version: "3.12"
truecharts.org/train: stable

View File

@ -0,0 +1,27 @@
# README
## General Info
TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE.
However only installations using the TrueNAS SCALE Apps system are supported.
For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/)
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)**
## Support
- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro).
- See the [Website](https://truecharts.org)
- Check our [Discord](https://discord.gg/tVsPTHWTtr)
- Open a [issue](https://github.com/truecharts/charts/issues/new/choose)
---
## Sponsor TrueCharts
TrueCharts can only exist due to the incredible effort of our staff.
Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can!
*All Rights Reserved - The TrueCharts Project*

View File

@ -0,0 +1,9 @@
## [guacamole-10.0.17](https://github.com/truecharts/charts/compare/guacamole-10.0.16...guacamole-10.0.17) (2023-12-08)
### Chore
- update container image guacamole/guacamole to v1.5.4[@a7763a8](https://github.com/a7763a8) ([#15873](https://github.com/truecharts/charts/issues/15873))

View File

@ -0,0 +1,8 @@
Apache Guacamole is a clientless remote desktop gateway.
This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/guacamole](https://truecharts.org/charts/stable/guacamole)
---
TrueCharts can only exist due to the incredible effort of our staff.
Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can!

Binary file not shown.

View File

@ -0,0 +1,261 @@
image:
repository: guacamole/guacamole
pullPolicy: IfNotPresent
tag: 1.5.4@sha256:a7763a8057036c12b4fde8a6725e5200a434aa74f0a4cff726e70718ee4521b4
guacdImage:
repository: guacamole/guacd
pullPolicy: IfNotPresent
tag: 1.5.4@sha256:8a6fd083213053cd0217663c24ab59245ebfe442b6717e606ebea25707ace650
guacamole:
general:
EXTENSION_PRIORITY: ""
api:
API_SESSION_TIMEOUT: 60
ldap: {}
# LDAP_HOSTNAME: ""
# LDAP_USER_BASE_DN: ""
# LDAP_PORT: 389
# LDAP_ENCRYPTION_METHOD: none
# LDAP_MAX_SEARCH_RESULTS: 1000
# LDAP_SEARCH_BIND_DN: ""
# LDAP_USER_ATTRIBUTES: ""
# LDAP_SEARCH_BIND_PASSWORD: ""
# LDAP_USERNAME_ATTRIBUTE: uid
# LDAP_MEMBER_ATTRIBUTE: member
# LDAP_USER_SEARCH_FILTER: "(objectClass=*)"
# LDAP_CONFIG_BASE_DN: ""
# LDAP_GROUP_BASE_DN: ""
# LDAP_GROUP_SEARCH_FILTER: "(objectClass=*)"
# LDAP_MEMBER_ATTRIBUTE_TYPE: dn
# LDAP_GROUP_NAME_ATTRIBUTE: cn
# LDAP_DEREFERENCE_ALIASES: never
# LDAP_FOLLOW_REFERRALS: false
# LDAP_MAX_REFERRAL_HOPS: 5
# LDAP_OPERATION_TIMEOUT: 30
header: {}
# HEADER_ENABLED: false
# HTTP_AUTH_HEADER: REMOTE_USER
saml: {}
# SAML_IDP_METADATA_URL: ""
# SAML_IDP_URL: ""
# SAML_ENTITY_ID: ""
# SAML_CALLBACK_URL: ""
# SAML_STRICT: true
# SAML_DEBUG: false
# SAML_COMPRESS_REQUEST: true
# SAML_COMPRESS_RESPONSE: true
# SAML_GROUP_ATTRIBUTE: groups
proxy: {}
# REMOTE_IP_VALVE_ENABLED: false
# PROXY_ALLOWED_IPS_REGEX: ""
# PROXY_IP_HEADER: ""
# PROXY_PROTOCOL_HEADER: ""
# PROXY_BY_HEADER: ""
totp: {}
# TOTP_ENABLED: false
# TOTP_ISSUER: Apache Guacamole
# TOTP_DIGITS: 6
# TOTP_PERIOD: 30
# TOTP_MODE: sha1
duo: {}
# DUO_API_HOSTNAME: ""
# DUO_INTEGRATION_KEY: ""
# DUO_SECRET_KEY: ""
# DUO_APPLICATION_KEY: ""
radius: {}
# RADIUS_SHARED_SECRET: ""
# RADIUS_AUTH_PROTOCOL: eap-tls
# RADIUS_HOSTNAME: ""
# RADIUS_AUTH_PORT: 1812
# RADIUS_KEY_FILE: ""
# RADIUS_KEY_TYPE: pkcs12
# RADIUS_KEY_PASSWORD: ""
# RADIUS_CA_FILE: ""
# RADIUS_CA_TYPE: pem
# RADIUS_CA_PASSWORD: ""
# RADIUS_TRUST_ALL: false
# RADIUS_RETRIES: 5
# RADIUS_TIMEOUT: 60
# RADIUS_EAP_TTLS_INNER_PROTOCOL: eap-tls
# RADIUS_NAS_IP: ""
openid: {}
# OPENID_AUTHORIZATION_ENDPOINT: ""
# OPENID_JWKS_ENDPOINT: ""
# OPENID_ISSUER: ""
# OPENID_CLIENT_ID: ""
# OPENID_REDIRECT_URI: ""
# OPENID_USERNAME_CLAIM_TYPE: email
# OPENID_GROUPS_CLAIM_TYPE: groups
# OPENID_SCOPE: openid email profile
# OPENID_ALLOWED_CLOCK_SKEW: 30
# OPENID_MAX_TOKEN_VALIDITY: 300
# OPENID_MAX_NONCE_VALIDITY: 300
cas: {}
# CAS_AUTHORIZATION_ENDPOINT: ""
# CAS_REDIRECT_URI: ""
# CAS_CLEARPASS_KEY: ""
# CAS_GROUP_ATTRIBUTE: ""
# CAS_GROUP_FORMAT: plain
# CAS_GROUP_LDAP_BASE_DN: ""
# CAS_GROUP_LDAP_ATTRIBUTE: ""
json: {}
# JSON_SECRET_KEY: ""
# JSON_TRUSTED_NETWORKS: ""
workload:
main:
podSpec:
containers:
main:
securityContext:
runAsUser: 1001
runAsGroup: 1001
readOnlyRootFilesystem: false
envFrom:
- configMapRef:
name: guacamole-config
probes:
liveness:
type: http
port: "{{ .Values.service.main.ports.main.targetPort }}"
readiness:
type: http
port: "{{ .Values.service.main.ports.main.targetPort }}"
startup:
type: tcp
port: "{{ .Values.service.main.ports.main.targetPort }}"
# zz is used to ensure that the initContainers are run after db-waits
initContainers:
1-create-seed:
enabled: true
type: install
imageSelector: image
securityContext:
runAsUser: 1001
runAsGroup: 1001
readOnlyRootFilesystem: false
envFrom:
- configMapRef:
name: guacamole-config
command:
- /bin/sh
args:
- -c
- /tc-scripts/create-seed.sh
2-apply-seed:
enabled: true
type: install
imageSelector: postgresClientImage
securityContext:
runAsUser: 1001
runAsGroup: 1001
readOnlyRootFilesystem: false
envFrom:
- configMapRef:
name: guacamole-config
command:
- /bin/sh
args:
- -c
- /tc-scripts/apply-seed.sh
guacd:
enabled: true
type: Deployment
strategy: RollingUpdate
podSpec:
containers:
guacd:
enabled: true
primary: true
imageSelector: guacdImage
command:
- /opt/guacamole/sbin/guacd
args:
# Listen Address
- -b
- "0.0.0.0"
# Listen Port
- -l
- "{{ .Values.service.guacd.ports.guacd.port }}"
# Log Level
- -L
- info
# Foreground
- -f
securityContext:
runAsUser: 1000
runAsGroup: 1000
readOnlyRootFilesystem: false
probes:
liveness:
type: tcp
port: "{{ .Values.service.guacd.ports.guacd.port }}"
readiness:
type: tcp
port: "{{ .Values.service.guacd.ports.guacd.port }}"
startup:
type: tcp
port: "{{ .Values.service.guacd.ports.guacd.port }}"
service:
main:
ports:
main:
port: 10123
targetPort: 8080
guacd:
enabled: true
targetSelector: guacd
ports:
guacd:
enabled: true
targetSelector: guacd
port: 10124
persistence:
recordings:
enabled: true
# Check how this works and
# which containers need it mounted
targetSelector:
main:
main:
mountPath: /var/lib/guacamole/recordings
readOnly: true
guacd:
guacd:
mountPath: /var/lib/guacamole/recordings
drive:
enabled: true
targetSelector:
guacd:
guacd:
mountPath: /var/lib/guacamole/drive
tc-init:
enabled: true
type: emptyDir
targetSelector:
main:
1-create-seed:
mountPath: /tc-init
2-apply-seed:
mountPath: /tc-init
db-seed:
enabled: true
type: configmap
objectName: db-init
defaultMode: "0770"
targetSelector:
main:
1-create-seed:
mountPath: /tc-scripts/create-seed.sh
subPath: create-seed.sh
2-apply-seed:
mountPath: /tc-scripts/apply-seed.sh
subPath: apply-seed.sh
cnpg:
main:
enabled: true
user: guacamole
database: guacamole
portal:
open:
enabled: true
updated: true

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,198 @@
{{/* Define the configmap */}}
{{- define "guacamole.configmap" -}}
{{/* https://github.com/apache/guacamole-client/blob/master/guacamole-docker/bin/start.sh */}}
{{/* https://guacamole.apache.org/doc/gug/guacamole-docker.html */}}
{{- $fullname := include "tc.v1.common.lib.chart.names.fullname" $ }}
guacamole-config:
enabled: true
data:
RECORDING_SEARCH_PATH: /var/lib/guacamole/recordings
{{/*
https://github.com/apache/guacamole-client/blob/bffc5fbdd5e2bb7a777f55c819a1d4d858829cb7/guacamole-docker/bin/start.sh#L1038
TomCat uses the war name as the context path. ROOT.war is the default and means the context path is /.
*/}}
WEBAPP_CONTEXT: ROOT
{{/* GuacD */}}
GUACD_HOSTNAME: {{ printf "%v-guacd" $fullname }}
GUACD_PORT: {{ .Values.service.guacd.ports.guacd.port | quote }}
{{/* Database */}}
POSTGRESQL_PORT: "5432"
POSTGRESQL_DATABASE: {{ .Values.cnpg.main.database }}
POSTGRESQL_USER: {{ .Values.cnpg.main.user }}
POSTGRESQL_HOSTNAME: {{ .Values.cnpg.main.creds.host }}
POSTGRESQL_PASSWORD: {{ .Values.cnpg.main.creds.password | trimAll "\"" }}
{{/* LDAP */}}
{{- if (get .Values.guacamole "ldap").LDAP_HOSTNAME }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_HOSTNAME" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_PORT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_ENCRYPTION_METHOD" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_USER_BASE_DN" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_USER_SEARCH_FILTER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_GROUP_BASE_DN" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_GROUP_SEARCH_FILTER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_GROUP_NAME_ATTRIBUTE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_MEMBER_ATTRIBUTE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_MEMBER_ATTRIBUTE_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_SEARCH_BIND_DN" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_SEARCH_BIND_PASSWORD" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_USERNAME_ATTRIBUTE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_USER_ATTRIBUTES" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_CONFIG_BASE_DN" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_DEREFERENCE_ALIASES" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_FOLLOW_REFERRALS" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_MAX_REFERRAL_HOPS" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_MAX_SEARCH_RESULTS" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "ldap" "key" "LDAP_OPERATION_TIMEOUT" "rootCtx" $) }}
{{- end }}
{{/* Header */}}
{{- if (get .Values.guacamole "header").HEADER_ENABLED }}
{{ include "guac.env" (dict "ob" "header" "key" "HEADER_ENABLED" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "header" "key" "HTTP_AUTH_HEADER" "rootCtx" $) }}
{{- end }}
{{/* SAML */}}
{{- if or
(and ((get .Values.guacamole "saml").SAML_ENTITY_ID) ((get .Values.guacamole "saml").SAML_CALLBACK_URL))
((get .Values.guacamole "saml").SAML_IDP_METADATA_URL) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_IDP_METADATA_URL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_IDP_URL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_ENTITY_ID" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_CALLBACK_URL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_STRICT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_DEBUG" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_COMPRESS_REQUEST" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_COMPRESS_RESPONSE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "saml" "key" "SAML_GROUP_ATTRIBUTE" "rootCtx" $) }}
{{- end }}
{{/* Proxy */}}
{{- if (get .Values.guacamole "proxy").REMOTE_IP_VALVE_ENABLED }}
{{ include "guac.env" (dict "ob" "proxy" "key" "REMOTE_IP_VALVE_ENABLED" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "proxy" "key" "PROXY_ALLOWED_IPS_REGEX" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "proxy" "key" "PROXY_IP_HEADER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "proxy" "key" "PROXY_PROTOCOL_HEADER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "proxy" "key" "PROXY_BY_HEADER" "rootCtx" $) }}
{{- end }}
{{/* General */}}
{{ include "guac.env" (dict "ob" "general" "key" "EXTENSION_PRIORITY" "rootCtx" $) }}
{{/* TOTP */}}
{{- if (get .Values.guacamole "totp").TOTP_ENABLED }}
{{ include "guac.env" (dict "ob" "totp" "key" "TOTP_ENABLED" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "totp" "key" "TOTP_ISSUER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "totp" "key" "TOTP_DIGITS" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "totp" "key" "TOTP_PERIOD" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "totp" "key" "TOTP_MODE" "rootCtx" $) }}
{{- end }}
{{/* DUO */}}
{{- if (get .Values.guacamole "duo").DUO_API_HOSTNAME }}
{{ include "guac.env" (dict "ob" "duo" "key" "DUO_API_HOSTNAME" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "duo" "key" "DUO_INTEGRATION_KEY" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "duo" "key" "DUO_SECRET_KEY" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "duo" "key" "DUO_APPLICATION_KEY" "rootCtx" $) }}
{{- end }}
{{/* API */}}
{{ include "guac.env" (dict "ob" "api" "key" "API_SESSION_TIMEOUT" "rootCtx" $) }}
{{/* RADIUS */}}
{{- if (get .Values.guacamole "radius").SHARED_SECRET }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_HOSTNAME" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_AUTH_PORT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_SHARED_SECRET" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_AUTH_PROTOCOL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_KEY_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_KEY_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_KEY_PASSWORD" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_CA_FILE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_CA_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_CA_PASSWORD" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_TRUST_ALL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_RETRIES" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_TIMEOUT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_EAP_TTLS_INNER_PROTOCOL" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "radius" "key" "RADIUS_NAS_IP" "rootCtx" $) }}
{{- end }}
{{/* OPENID */}}
{{- if (get .Values.guacamole "openid").OPENID_AUTHORIZATION_ENDPOINT }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_AUTHORIZATION_ENDPOINT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_JWKS_ENDPOINT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_ISSUER" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_CLIENT_ID" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_REDIRECT_URI" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_USERNAME_CLAIM_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_GROUPS_CLAIM_TYPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_SCOPE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_ALLOWED_CLOCK_SKEW" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_MAX_TOKEN_VALIDITY" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "openid" "key" "OPENID_MAX_NONCE_VALIDITY" "rootCtx" $) }}
{{- end }}
{{/* CAS */}}
{{- if (get .Values.guacamole "cas").CAS_AUTHORIZATION_ENDPOINT }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_AUTHORIZATION_ENDPOINT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_REDIRECT_URI" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_CLEARPASS_KEY" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_GROUP_ATTRIBUTE" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_GROUP_FORMAT" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_GROUP_LDAP_BASE_DN" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "cas" "key" "CAS_GROUP_LDAP_ATTRIBUTE" "rootCtx" $) }}
{{- end }}
{{/* JSON */}}
{{- if (get .Values.guacamole "json").JSON_SECRET_KEY }}
{{ include "guac.env" (dict "ob" "json" "key" "JSON_SECRET_KEY" "rootCtx" $) }}
{{ include "guac.env" (dict "ob" "json" "key" "JSON_TRUSTED_NETWORKS" "rootCtx" $) }}
{{- end }}
db-init:
enabled: true
data:
{{- $filename := "/tc-init/initdb.sql" }}
create-seed.sh: |
echo "Creating [{{ $filename }}] file..."
/opt/guacamole/bin/initdb.sh --postgresql > {{ $filename }}
if [ -f {{ $filename }} ]; then
echo "File [{{ $filename }}] created successfully!"
exit 0
fi
echo "File [{{ $filename }}] failed to create."
exit 1
apply-seed.sh: |
export PGPASSWORD="$POSTGRESQL_PASSWORD"
until
pg_isready --username="$POSTGRESQL_USER" --host="$POSTGRESQL_HOSTNAME" --port="$POSTGRESQL_PORT"
do
echo "Waiting for PostgreSQL to start..."
sleep 2
done
psql --host="$POSTGRESQL_HOSTNAME" --port="$POSTGRESQL_PORT" \
--username="$POSTGRESQL_USER" --dbname="$POSTGRESQL_DATABASE" \
--no-password --command='SELECT * FROM public.guacamole_user' \
--output=/dev/null --quiet
if [ $? -eq 0 ]; then
echo "Database already initialized."
exit 0
fi
if [ ! -f {{ $filename }} ]; then
echo "File [{{ $filename }}] does not exist."
exit 1
fi
echo "Initializing database from [{{ $filename }}] file..."
psql --host="$POSTGRESQL_HOSTNAME" --port="$POSTGRESQL_PORT" \
--username="$POSTGRESQL_USER" --dbname="$POSTGRESQL_DATABASE" \
--no-password --quiet --output=/dev/null --file={{ $filename }}
if [ $? -eq 0 ]; then
echo "Database initialized successfully!"
exit 0
fi
echo "Database failed to initialize."
exit 1
{{- end -}}
{{- define "guac.env" -}}
{{- $key := .key -}}
{{- $ob := .ob -}}
{{- $rootCtx := .rootCtx -}}
{{- $object := (get $rootCtx.Values.guacamole $ob) -}}
{{- if $object -}}
{{- if hasKey $object $key -}}
{{- if not (kindIs "invalid" $key) -}}
{{- printf "%v: %v" $key (get $object $key | quote) -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{- end -}}

View File

@ -0,0 +1,10 @@
{{/* Make sure all variables are set properly */}}
{{ include "tc.v1.common.loader.init" . }}
{{- $configmap := (include "guacamole.configmap" $ | fromYaml) -}}
{{- if $configmap -}}
{{- $_ := mustMergeOverwrite .Values.configmap $configmap -}}
{{- end -}}
{{/* Render the templates */}}
{{ include "tc.v1.common.loader.apply" . }}

View File

View File

@ -0,0 +1,99 @@
**Important:**
*for the complete changelog, please refer to the website*
## [omada-controller-10.1.1](https://github.com/truecharts/charts/compare/omada-controller-10.1.0...omada-controller-10.1.1) (2023-12-08)
### Chore
- update container image mbentley/omada-controller to 5.13[@ac059c3](https://github.com/ac059c3) ([#15880](https://github.com/truecharts/charts/issues/15880))
## [omada-controller-10.1.0](https://github.com/truecharts/charts/compare/omada-controller-10.0.37...omada-controller-10.1.0) (2023-12-04)
### Chore
- update container image mbentley/omada-controller to v5.13[@912007a](https://github.com/912007a) ([#15720](https://github.com/truecharts/charts/issues/15720))
## [omada-controller-10.0.37](https://github.com/truecharts/charts/compare/omada-controller-10.0.36...omada-controller-10.0.37) (2023-12-04)
### Chore
- update container image mbentley/omada-controller to v[@53fa3da](https://github.com/53fa3da) ([#15717](https://github.com/truecharts/charts/issues/15717))
## [omada-controller-10.0.36](https://github.com/truecharts/charts/compare/omada-controller-10.0.35...omada-controller-10.0.36) (2023-12-03)
### Chore
- bump everything to ensure catalog has latest versions
## [omada-controller-10.0.35](https://github.com/truecharts/charts/compare/omada-controller-10.0.34...omada-controller-10.0.35) (2023-12-02)
### Chore
- fix annotations again
- update annotations
- cleanup chart.yaml and add min-max scale version
- update container image mbentley/omada-controller to 5.12[@b8dc108](https://github.com/b8dc108) ([#15216](https://github.com/truecharts/charts/issues/15216))
## [omada-controller-10.0.34](https://github.com/truecharts/charts/compare/omada-controller-10.0.33...omada-controller-10.0.34) (2023-11-17)
## [omada-controller-10.0.33](https://github.com/truecharts/charts/compare/omada-controller-10.0.32...omada-controller-10.0.33) (2023-11-15)
### Chore
- update container image tccr.io/truecharts/omada-controller to v5.12.0 ([#14676](https://github.com/truecharts/charts/issues/14676))
## [omada-controller-10.0.32](https://github.com/truecharts/charts/compare/omada-controller-10.0.31...omada-controller-10.0.32) (2023-11-11)
### Chore
- update container image tccr.io/truecharts/omada-controller to v5.12.0 ([#14571](https://github.com/truecharts/charts/issues/14571))
## [omada-controller-10.0.31](https://github.com/truecharts/charts/compare/omada-controller-10.0.30...omada-controller-10.0.31) (2023-11-09)
### Chore
- update container image tccr.io/truecharts/omada-controller to v5.12.0 ([#14479](https://github.com/truecharts/charts/issues/14479))
## [omada-controller-10.0.30](https://github.com/truecharts/charts/compare/omada-controller-10.0.29...omada-controller-10.0.30) (2023-11-08)
### Chore
- update helm general non-major ([#14465](https://github.com/truecharts/charts/issues/14465))

View File

@ -0,0 +1,35 @@
kubeVersion: ">=1.24.0"
apiVersion: v2
name: omada-controller
version: 10.1.1
appVersion: "5.13"
description: Omada is a SDN tool for TP-Link Omada hardware
home: https://truecharts.org/charts/stable/omada-controller
icon: https://truecharts.org/img/hotlink-ok/chart-icons/omada-controller.png
deprecated: false
sources:
- https://github.com/mbentley/docker-omada-controller
- https://github.com/truecharts/charts/tree/master/charts/stable/omada-controller
- https://hub.docker.com/r/mbentley/omada-controller
maintainers:
- name: TrueCharts
email: info@truecharts.org
url: https://truecharts.org
keywords:
- omada-controller
dependencies:
- name: common
version: 14.3.5
repository: https://library-charts.truecharts.org
condition: ""
alias: ""
tags: []
import-values: []
annotations:
max_scale_version: 23.10.1
min_scale_version: 22.12.4
truecharts.org/SCALE-support: "true"
truecharts.org/category: media
truecharts.org/max_helm_version: "3.13"
truecharts.org/min_helm_version: "3.12"
truecharts.org/train: stable

View File

@ -0,0 +1,27 @@
# README
## General Info
TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE.
However only installations using the TrueNAS SCALE Apps system are supported.
For more information about this App, please check the docs on the TrueCharts [website](https://truecharts.org/charts/stable/)
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)**
## Support
- Please check our [quick-start guides for TrueNAS SCALE](https://truecharts.org/manual/SCALE/guides/scale-intro).
- See the [Website](https://truecharts.org)
- Check our [Discord](https://discord.gg/tVsPTHWTtr)
- Open a [issue](https://github.com/truecharts/charts/issues/new/choose)
---
## Sponsor TrueCharts
TrueCharts can only exist due to the incredible effort of our staff.
Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can!
*All Rights Reserved - The TrueCharts Project*

View File

@ -0,0 +1,9 @@
## [omada-controller-10.1.1](https://github.com/truecharts/charts/compare/omada-controller-10.1.0...omada-controller-10.1.1) (2023-12-08)
### Chore
- update container image mbentley/omada-controller to 5.13[@ac059c3](https://github.com/ac059c3) ([#15880](https://github.com/truecharts/charts/issues/15880))

View File

@ -0,0 +1,8 @@
Omada is a SDN tool for TP-Link Omada hardware
This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/charts/stable/omada-controller](https://truecharts.org/charts/stable/omada-controller)
---
TrueCharts can only exist due to the incredible effort of our staff.
Please consider making a [donation](https://truecharts.org/sponsor) or contributing back to the project any way you can!

View File

@ -0,0 +1,83 @@
image:
repository: mbentley/omada-controller
tag: 5.13@sha256:ac059c3547af9559be1dbcd5f256fefda630a6b5bd4f9439d5b262b3e97a21f1
pullPolicy: IfNotPresent
service:
main:
ports:
main:
protocol: https
port: 8043
comm:
enabled: true
ports:
comm:
protocol: https
enabled: true
port: 8843
omada-tcp:
enabled: true
ports:
omada-tcp1:
enabled: true
port: 29811
targetPort: 29811
omada-tcp2:
enabled: true
port: 29812
targetPort: 29812
omada-tcp3:
enabled: true
port: 29813
targetPort: 29813
omada-tcp4:
enabled: true
port: 29814
targetPort: 29814
omada-udp:
enabled: true
ports:
omada-udp1:
enabled: true
protocol: udp
port: 29810
targetPort: 29810
ingress:
comm:
autoLink: true
persistence:
data:
enabled: true
mountPath: /opt/tplink/EAPController/data
work:
enabled: true
mountPath: /opt/tplink/EAPController/work
portal:
open:
enabled: true
securityContext:
container:
readOnlyRootFilesystem: false
runAsNonRoot: false
runAsUser: 0
runAsGroup: 0
workload:
main:
podSpec:
containers:
main:
env:
PORTAL_HTTPS_PORT: "{{ .Values.service.comm.ports.comm.port }}"
probes:
startup:
path: /api/info
httpHeaders:
Host: kube.internal.health
liveness:
path: /api/info
httpHeaders:
Host: kube.internal.health
readiness:
path: /api/info
httpHeaders:
Host: kube.internal.health

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
{{- include "tc.v1.common.lib.chart.notes" $ -}}

View File

@ -0,0 +1,24 @@
{{/* Render the templates */}}
{{ include "tc.v1.common.loader.init" . }}
{{/*
Omada automatically redirects to that port.
Instead of consuming the external 443 port, it's better to switch internal
But still give user the ability to change it.
When ingress is enabled, set this to 443, otherwise set it to whatever `port` is set to
*/}}
{{- $port := .Values.service.main.ports.main.port -}}
{{- if .Values.ingress.main.enabled -}}
{{- $port = 443 -}}
{{- end -}}
{{- $_ := set .Values.workload.main.podSpec.containers.main.env "MANAGE_HTTPS_PORT" $port -}}
{{- $_ := set .Values.service.main.ports.main "targetPort" $port -}}
{{- $_ := set .Values.workload.main.podSpec.containers.main.probes.liveness "port" $port -}}
{{- $_ := set .Values.workload.main.podSpec.containers.main.probes.readiness "port" $port -}}
{{- $_ := set .Values.workload.main.podSpec.containers.main.probes.startup "port" $port -}}
{{ include "tc.v1.common.loader.apply" . }}