[gotify] adds chart for gotify server (#1462)

* feat: adds chart for gotify server

This adds a chart for gotify, a simple server for sending and receiving messages

Signed-off-by: Jonas Forsberg <jonas.forsberg@suse.com>
This commit is contained in:
Jonas Forsberg 2022-03-28 10:46:34 +02:00 committed by GitHub
parent 9a8fe0e854
commit 6b276162e6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 212 additions and 0 deletions

View File

@ -0,0 +1,26 @@
# 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

View File

@ -0,0 +1,22 @@
apiVersion: v2
appVersion: "2.1.4"
description: A simple server for sending and receiving messages
name: gotify
version: 1.0.0
keywords:
- gotify
home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/gotify/
icon: https://avatars.githubusercontent.com/u/36410427?s=200&v=4
maintainers:
- name: jonas
email: barregargamel@gmail.com
sources:
- https://github.com/gotify/server
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 4.3.0
annotations:
artifacthub.io/changes: |
- kind: added
description: Initial version

View File

@ -0,0 +1,62 @@
# gotify
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 2.1.4](https://img.shields.io/badge/AppVersion-2.1.4-informational?style=flat-square)
A simple server for sending and receiving messages
**Homepage:** <https://github.com/k8s-at-home/charts/tree/master/charts/incubator/gotify/>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| jonas | barregargamel@gmail.com | |
## Source Code
* <https://github.com/gotify/server>
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://library-charts.k8s-at-home.com | common | 4.3.0 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| env | object | See below | environment variables. |
| env.GOTIFY_DATABASE_CONNECTION | string | `"data/gotify.db"` | Database connection string (se: https://gotify.net/docs/config#database) |
| env.GOTIFY_DATABASE_DIALECT | string | `"sqlite3"` | Database type (se https://gotify.net/docs/config#database) |
| env.GOTIFY_DEFAULTUSER_NAME | string | `"admin"` | Default user created on database creation |
| env.GOTIFY_DEFAULTUSER_PASS | string | `"admin"` | Password set for default user on database creation |
| env.GOTIFY_PASSSTRENGTH | int | `10` | The bcrypt password strength (higher = better but also slower) |
| env.GOTIFY_PLUGINSDIR | string | `"data/plugins"` | The directory where plugin resides (leave empty to disable plugins) |
| env.GOTIFY_REGISTRATION | bool | `false` | Enable user registration |
| env.GOTIFY_SERVER_KEEPALIVEPERIODSECONDS | int | `0` | Server keep alive period |
| env.GOTIFY_SERVER_LISTENADDR | string | `nil` | Address server is listening on |
| env.GOTIFY_SERVER_PORT | int | `80` | Set the port gotify container is listening on |
| env.GOTIFY_SERVER_SSL_CERTFILE | string | `nil` | SSL Certificate file |
| env.GOTIFY_SERVER_SSL_CERTKEY | string | `nil` | SSL certificate key file |
| env.GOTIFY_SERVER_SSL_ENABLED | bool | `false` | SSL Enabled |
| env.GOTIFY_SERVER_SSL_LETSENCRYPT_ACCEPTTOS | bool | `false` | Accept the tos from letsencrypt |
| env.GOTIFY_SERVER_SSL_LETSENCRYPT_CACHE | string | `"certs"` | Directory to use as letsencrypt cache |
| env.GOTIFY_SERVER_SSL_LETSENCRYPT_ENABLED | bool | `false` | Enable letsencrypt integration |
| env.GOTIFY_SERVER_SSL_LISTENADDR | string | `nil` | Server ssl listening address |
| env.GOTIFY_SERVER_SSL_PORT | int | `443` | SSL Server port |
| env.GOTIFY_SERVER_SSL_REDIRECTTOHTTPS | bool | `true` | Redirect http to https |
| env.GOTIFY_SERVER_STREAM_PINGPERIODSECONDS | int | `45` | The interval in which websocket pings will be sent |
| env.GOTIFY_UPLOADEDIMAGESDIR | string | `"data/images"` | The directory for storing uploaded images |
| env.TZ | string | `"UTC"` | Set the container timezone |
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
| image.repository | string | `"gotify/server"` | image repository |
| image.tag | string | `"2.1.4"` | image tag |
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
| persistence.data.enabled | bool | `false` | |
| persistence.data.mountPath | string | `"/app/data"` | |
| persistence.data.type | string | `"emptyDir"` | |
| service | object | See values.yaml | Configures service settings for the chart. |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.7.0](https://github.com/norwoodj/helm-docs/releases/v1.7.0)

View File

@ -0,0 +1,9 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}
{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}
N/A
{{- end -}}

View File

@ -0,0 +1 @@
{{- include "common.notes.defaultNotes" . -}}

View File

@ -0,0 +1 @@
{{ include "common.all" . }}

View File

@ -0,0 +1,91 @@
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/library-charts/tree/master/charts/stable/common/values.yaml
#
image:
# -- image repository
repository: gotify/server
# -- image tag
# @default -- chart.appVersion
tag:
# -- image pull policy
pullPolicy: IfNotPresent
# -- environment variables.
# @default -- See below
env:
# -- Set the container timezone
TZ: UTC
# -- Set the port gotify container is listening on
GOTIFY_SERVER_PORT: 80
# -- Server keep alive period
GOTIFY_SERVER_KEEPALIVEPERIODSECONDS: 0
# -- Address server is listening on
GOTIFY_SERVER_LISTENADDR:
# -- SSL Enabled
GOTIFY_SERVER_SSL_ENABLED: false
# -- Redirect http to https
GOTIFY_SERVER_SSL_REDIRECTTOHTTPS: true
# -- Server ssl listening address
GOTIFY_SERVER_SSL_LISTENADDR:
# -- SSL Server port
GOTIFY_SERVER_SSL_PORT: 443
# -- SSL Certificate file
GOTIFY_SERVER_SSL_CERTFILE:
# -- SSL certificate key file
GOTIFY_SERVER_SSL_CERTKEY:
# -- Enable letsencrypt integration
GOTIFY_SERVER_SSL_LETSENCRYPT_ENABLED: false
# -- Accept the tos from letsencrypt
GOTIFY_SERVER_SSL_LETSENCRYPT_ACCEPTTOS: false
# -- Directory to use as letsencrypt cache
GOTIFY_SERVER_SSL_LETSENCRYPT_CACHE: certs
# -- The hosts for which letsencrypt should request certificates
# GOTIFY_SERVER_SSL_LETSENCRYPT_HOSTS: - mydomain.tld\n- myotherdomain.tld
# -- Response headers are added to every response (default: none)
# GOTIFY_SERVER_RESPONSEHEADERS: "X-Custom-Header: \"custom value\""
# -- Sets cors headers
# GOTIFY_SERVER_CORS_ALLOWORIGINS: "- \".+.example.com\"\n- \"otherdomain.com\""
# GOTIFY_SERVER_CORS_ALLOWMETHODS: "- \"GET\"\n- \"POST\""
# GOTIFY_SERVER_CORS_ALLOWHEADERS: "- \"Authorization\"\n- \"content-type\""
# GOTIFY_SERVER_STREAM_ALLOWEDORIGINS: "- \".+.example.com\"\n- \"otherdomain.com\""
# -- The interval in which websocket pings will be sent
GOTIFY_SERVER_STREAM_PINGPERIODSECONDS: 45
# -- Database type (se https://gotify.net/docs/config#database)
GOTIFY_DATABASE_DIALECT: sqlite3
# -- Database connection string (se: https://gotify.net/docs/config#database)
GOTIFY_DATABASE_CONNECTION: data/gotify.db
# -- Default user created on database creation
GOTIFY_DEFAULTUSER_NAME: admin
# -- Password set for default user on database creation
GOTIFY_DEFAULTUSER_PASS: admin
# -- The bcrypt password strength (higher = better but also slower)
GOTIFY_PASSSTRENGTH: 10
# -- The directory for storing uploaded images
GOTIFY_UPLOADEDIMAGESDIR: data/images
# -- The directory where plugin resides (leave empty to disable plugins)
GOTIFY_PLUGINSDIR: data/plugins
# -- Enable user registration
GOTIFY_REGISTRATION: false
# -- Configures service settings for the chart.
# @default -- See values.yaml
service:
main:
ports:
http:
port: 80
ingress:
# -- Enable and configure ingress settings for the chart under this key.
# @default -- See values.yaml
main:
enabled: false
persistence:
data:
enabled: false
mountPath: /app/data