Initial Commit
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Markus Pesch 2021-09-26 20:33:17 +02:00
commit aeaae484d3
Signed by: volker.raschek
GPG Key ID: 852BCC170D81A982
13 changed files with 796 additions and 0 deletions

101
.drone.yml Normal file
View File

@ -0,0 +1,101 @@
---
kind: pipeline
type: kubernetes
name: linter
platform:
os: linux
arch: amd64
steps:
- name: helm lint
commands:
- helm lint
image: quay.io/helmpack/chart-testing:latest
resources:
limits:
cpu: 50
memory: 50M
- name: markdown lint
commands:
- markdownlint *.md
image: docker.io/volkerraschek/markdownlint:0.28.1
resources:
limits:
cpu: 50
memory: 50M
- name: email-notification
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: docker.io/drillster/drone-email:latest
resources:
limits:
cpu: 50
memory: 25M
when:
status:
- changed
- failure
trigger:
event:
exclude:
- tag
---
kind: pipeline
type: kubernetes
name: sync
platform:
os: linux
arch: amd64
steps:
- name: github
image: docker.io/appleboy/drone-git-push:latest
resources:
limits:
cpu: 50
memory: 25M
settings:
branch: master
remote: ssh://git@github.com/volker-raschek/postfixadmin-charts.git
force: true
ssh_key:
from_secret: ssh_key
- name: email-notification
environment:
PLUGIN_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: docker.io/drillster/drone-email:latest
resources:
limits:
cpu: 50
memory: 25M
when:
status:
- changed
- failure
trigger:
event:
- push
repo:
- volker.raschek/postfixadmin-charts

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*.tgz
values2.yml
values2.yaml

32
.helmignore Normal file
View File

@ -0,0 +1,32 @@
# 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
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# drone
.drone.yml
# markdownlint
.markdownlint.yaml
# customized values
values2.yml
values2.yaml
# helm packages
*.tgz

144
.markdownlint.yaml Normal file
View File

@ -0,0 +1,144 @@
# markdownlint YAML configuration
# https://github.com/DavidAnson/markdownlint/blob/main/schema/.markdownlint.yaml
# Default state for all rules
default: true
# Path to configuration file to extend
extends: null
# MD003/heading-style/header-style - Heading style
MD003:
# Heading style
style: "atx"
# MD004/ul-style - Unordered list style
MD004:
style: "dash"
# MD007/ul-indent - Unordered list indentation
MD007:
# Spaces for indent
indent: 2
# Whether to indent the first level of the list
start_indented: false
# MD009/no-trailing-spaces - Trailing spaces
MD009:
# Spaces for line break
br_spaces: 2
# Allow spaces for empty lines in list items
list_item_empty_lines: false
# Include unnecessary breaks
strict: false
# MD010/no-hard-tabs - Hard tabs
MD010:
# Include code blocks
code_blocks: true
# MD012/no-multiple-blanks - Multiple consecutive blank lines
MD012:
# Consecutive blank lines
maximum: 1
# MD013/line-length - Line length
MD013:
# Number of characters
line_length: 80
# Number of characters for headings
heading_line_length: 80
# Number of characters for code blocks
code_block_line_length: 80
# Include code blocks
code_blocks: false
# Include tables
tables: false
# Include headings
headings: true
# Include headings
headers: true
# Strict length checking
strict: false
# Stern length checking
stern: false
# MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines
MD022:
# Blank lines above heading
lines_above: 1
# Blank lines below heading
lines_below: 1
# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
MD024:
# Only check sibling headings
allow_different_nesting: true
# MD025/single-title/single-h1 - Multiple top-level headings in the same document
MD025:
# Heading level
level: 1
# RegExp for matching title in front matter
front_matter_title: "^\\s*title\\s*[:=]"
# MD026/no-trailing-punctuation - Trailing punctuation in heading
MD026:
# Punctuation characters
punctuation: ".,;:!。,;:!"
# MD029/ol-prefix - Ordered list item prefix
MD029:
# List style
style: "one_or_ordered"
# MD030/list-marker-space - Spaces after list markers
MD030:
# Spaces for single-line unordered list items
ul_single: 1
# Spaces for single-line ordered list items
ol_single: 1
# Spaces for multi-line unordered list items
ul_multi: 1
# Spaces for multi-line ordered list items
ol_multi: 1
# MD033/no-inline-html - Inline HTML
MD033:
# Allowed elements
allowed_elements: []
# MD035/hr-style - Horizontal rule style
MD035:
# Horizontal rule style
style: "---"
# MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading
MD036:
# Punctuation characters
punctuation: ".,;:!?。,;:!?"
# MD041/first-line-heading/first-line-h1 - First line in a file should be a top-level heading
MD041:
# Heading level
level: 1
# RegExp for matching title in front matter
front_matter_title: "^\\s*title\\s*[:=]"
# MD044/proper-names - Proper names should have the correct capitalization
MD044:
# List of proper names
# names:
# - drone
# Include code blocks
code_blocks: false
# MD046/code-block-style - Code block style
MD046:
# Block style
style: "fenced"
# MD048/code-fence-style - Code fence style
MD048:
# Code fence syle
style: "backtick"

20
Chart.yaml Normal file
View File

@ -0,0 +1,20 @@
apiVersion: v2
name: postfixadmin
description: Helm chart for postfixadmin
type: application
version: 0.1.0
appVersion: 3.3.10
icon: https://a.fsdn.com/allura/p/postfixadmin/icon?1620415130
keywords:
- postfix
- postfixadmin
sources:
- https://github.com/volker-raschek/postfixadmin-charts
- https://github.com/postfixadmin/postfixadmin
- https://hub.docker.com/_/postfixadmin
maintainers:
- name: Markus Pesch
email: markus.pesch+apps@cryptic.systems

13
LICENSE Normal file
View File

@ -0,0 +1,13 @@
Copyright 2021 Markus Pesch
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

62
README.md Normal file
View File

@ -0,0 +1,62 @@
# postfixadmin-charts
[![Build Status](https://drone.cryptic.systems/api/badges/volker.raschek/postfixadmin-charts/status.svg)](https://drone.cryptic.systems/volker.raschek/postfixadmin-charts)
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/volker-raschek)](https://artifacthub.io/packages/search?repo=volker-raschek)
This is an inofficial helm chart for
[postfixadmin](https://github.com/postfixadmin/postfixadmin), because the
maintainer does not provide currently an official one.
This helm chart can be found on [artifacthub.io](https://artifacthub.io/) and
can be installed via helm.
```bash
helm repo add volker.raschek https://charts.cryptic.systems/volker.raschek
helm install postfixadmin volker.raschek/postfixadmin
```
## Customization
The list below is only an excerpt of the listed environment variables from the
used [container image](https://github.com/volker-raschek/postfixadmin-docker).
The environment variables are composed on the key of the PHP configuration with
the prefix `POSTFIXADMIN_`. You can take an example
[configuration](https://github.com/postfixadmin/postfixadmin/blob/master/config.inc.php)
from the upstream project.
| value | reference |
| ------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `.config.POSTFIXADMIN_ADMIN_EMAIL` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_admin_email) |
| `.config.POSTFIXADMIN_ADMIN_SMTP_PASSWORD` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_password) |
| `.config.POSTFIXADMIN_ADMIN_NAME` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_admin_name) |
| `.config.POSTFIXADMIN_DATABASE_TYPE` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_type) |
| `.config.POSTFIXADMIN_DATABASE_USER` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_user) |
| `.config.POSTFIXADMIN_DATABASE_PASSWORD` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_password) |
| `.config.POSTFIXADMIN_DATABASE_HOST` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_host) |
| `.config.POSTFIXADMIN_DATABASE_PORT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_port) |
| `.config.POSTFIXADMIN_DATABASE_NAME` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_name) |
| `.config.POSTFIXADMIN_DEFAULT_LANGUAGE` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_default_language) |
| `.config.POSTFIXADMIN_DATABASE_USE_SSL` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_use_ssl) |
| `.config.POSTFIXADMIN_DATABASE_KEY` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_key) |
| `.config.POSTFIXADMIN_DATABASE_CERT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_cert) |
| `.config.POSTFIXADMIN_DATABASE_CA` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_ca) |
| `.config.POSTFIXADMIN_DATABASE_PREFIX` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_prefix) |
| `.config.POSTFIXADMIN_ENCRYPT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_encrypt) |
| `.config.POSTFIXADMIN_SMTP_SERVER` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_server) |
| `.config.POSTFIXADMIN_SMTP_PORT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_port) |
| `.config.POSTFIXADMIN_SMTP_CLIENT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_client) |
| `.config.POSTFIXADMIN_SHOW_FOOTER_TEXT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_show_footer_text) |
| `.config.POSTFIXADMIN_FOOTER_TEXT` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_footer_text) |
| `.config.POSTFIXADMIN_FOOTER_LINK` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_footer_link) |
| `.config.POSTFIXADMIN_FETCHMAIL` | [Documentation](https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_fetchmail) |
## Postfixadmin-Fetchmail
As addon can be additionally the helm chart
`volker.raschek/postfixadmi-fetchmail` installed. The the `fetchmail.pl` script
has been packaged into an own container to support among others non-kubernetes
based postfixadmin instances with the `fetchmail.pl` script on kubernetes basis.
More about the addon is documented
[here](https://github.com/volker-raschek/postfixadmin-fetchmail-charts).

62
templates/_helpers.tpl Normal file
View File

@ -0,0 +1,62 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "postfixadmin.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "postfixadmin.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "postfixadmin.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "postfixadmin.labels" -}}
helm.sh/chart: {{ include "postfixadmin.chart" . }}
{{ include "postfixadmin.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "postfixadmin.selectorLabels" -}}
app.kubernetes.io/name: {{ include "postfixadmin.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "postfixadmin.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "postfixadmin.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View File

@ -0,0 +1,60 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "postfixadmin.fullname" . }}
labels:
{{- include "postfixadmin.labels" . | nindent 4 }}
spec:
selector:
matchLabels:
{{- include "postfixadmin.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "postfixadmin.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
envFrom:
- secretRef:
name: {{ include "postfixadmin.fullname" . }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}

View File

@ -0,0 +1,61 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "postfixadmin.fullname" . -}}
{{- $svcPort := .Values.service.port -}}
{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }}
{{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}}
{{- end }}
{{- end }}
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1beta1
{{- else -}}
apiVersion: extensions/v1beta1
{{- end }}
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
{{- include "postfixadmin.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
ingressClassName: {{ .Values.ingress.className }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
{{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
pathType: {{ .pathType }}
{{- end }}
backend:
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
service:
name: {{ $fullName }}
port:
number: {{ $svcPort }}
{{- else }}
serviceName: {{ $fullName }}
servicePort: {{ $svcPort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@ -0,0 +1,19 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ include "postfixadmin.fullname" . }}
type: Opaque
stringData:
{{- if not (hasKey .Values "config") -}}
{{- $_ := set .Values "config" dict -}}
{{- end -}}
{{- if not (hasKey .Values.config "POSTFIXADMIN_SETUP_PASSWORD") -}}
{{- $_ := set .Values.config "POSTFIXADMIN_SETUP_PASSWORD" (randAlphaNum 48 | quote ) -}}
{{- end -}}
{{/* SETUP CONFIG */}}
{{ range $key, $value := .Values.config }}
{{ upper $key}}: {{ quote $value }}
{{ end }}

View File

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "postfixadmin.fullname" . }}
labels:
{{- include "postfixadmin.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "postfixadmin.selectorLabels" . | nindent 4 }}

204
values.yaml Normal file
View File

@ -0,0 +1,204 @@
# Default values for postfixadmin.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
image:
repository: docker.io/volkerraschek/postfixadmin
pullPolicy: Always
# Overrides the image tag whose default is the chart appVersion.
tag: ""
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
config:
# POSTFIXADMIN_ADMIN_EMAIL
# Define the email address of an admin via POSTFIXADMIN_ADMIN_EMAIL to send
# emails or broadcast messages in his name instead of the email address of the
# logged in admin, which wants to send an email or broadcast message about the
# PostfixAdmin interface.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_admin_email
# POSTFIXADMIN_ADMIN_EMAIL:
# POSTFIXADMIN_ADMIN_SMTP_PASSWORD
# Define the smtp password via POSTFIXADMIN_ADMIN_SMTP_PASSWORD of the admin
# which should be used to send emails or broadcast messages about the
# PostfixAdmin interface.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_admin_smtp_password
# POSTFIXADMIN_ADMIN_SMTP_PASSWORD:
# POSTFIXADMIN_ADMIN_NAME
# Define the name of the admin via POSTFIXADMIN_ADMIN_NAME which should be
# used to send emails or broadcast messages about the PostfixAdmin interface.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_admin_name
# POSTFIXADMIN_ADMIN_NAME:
# POSTFIXADMIN_DATABASE_TYPE
# PostfixAdmin support currently sqlite, postgres and mysql/mariadb. About the
# environment variable POSTFIXADMIN_DATABASE_TYPE can the backend type
# defined.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_type
# POSTFIXADMIN_DATABASE_TYPE:
# POSTFIXADMIN_DATABASE_USER
# The environment variable POSTFIXADMIN_DATABASE_USER is undefined and only
# required if the database backend is not sqlite.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_user
# POSTFIXADMIN_DATABASE_USER:
# POSTFIXADMIN_DATABASE_PASSWORD
# The environment variable POSTFIXADMIN_DATABASE_PASSWORD is undefined and
# only required if the database backend is not sqlite.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_password
# POSTFIXADMIN_DATABASE_PASSWORD:
# POSTFIXADMIN_DATABASE_HOST
# The environment variable POSTFIXADMIN_DATABASE_HOST is undefined and only
# required if the database backend is not sqlite
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_host
# POSTFIXADMIN_DATABASE_HOST:
# POSTFIXADMIN_DATABASE_PORT
# The environment variable POSTFIXADMIN_DATABASE_PORT will automatically
# defined with default values when instead of sqlite an other database backend
# has been selected.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_port
# POSTFIXADMIN_DATABASE_PORT:
# POSTFIXADMIN_DATABASE_NAME
# The environment variable POSTFIXADMIN_DATABASE_NAME is defined by default
# with the value /var/tmp/postfixadmin.db. This is the path where the sqlite
# database is stored. If pgsql or mysqli is defined instead of sqlite as
# database backend type, can the environment variable used to define the
# database name.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_name
# POSTFIXADMIN_DATABASE_NAME:
# POSTFIXADMIN_DATABASE_USE_SSL
# Encrypt a database connection to an external database like postgres, mariadb
# or mysqli via SSL when POSTFIXADMIN_DATABASE_USE_SSL=true. Additionally
# should be the other SSL environment variables defined to establish
# successfully a SSL encrypted connection.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_use_ssl
# POSTFIXADMIN_DATABASE_USE_SSL:
# POSTFIXADMIN_DATABASE_SSL_KEY
# Via POSTFIXADMIN_DATABASE_SSL_KEY can be the path to the private key defined
# which should be used to encrypt the database connection via SSL.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_ssl_key
# POSTFIXADMIN_DATABASE_SSL_KEY:
# POSTFIXADMIN_DATABASE_SSL_CERT
# Via POSTFIXADMIN_DATABASE_SSL_CERT can be the path to the certificate
# defined which should be used to encrypt the database connection via SSL.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_ssl_cert
# POSTFIXADMIN_DATABASE_SSL_CERT:
# POSTFIXADMIN_DATABASE_SSL_CA
# Via POSTFIXADMIN_DATABASE_SSL_CA can be the path to the root certificate of
# the certificate authority defined which should be trusted to encrypt the
# database connection via SSL.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_ssl_ca
# POSTFIXADMIN_DATABASE_SSL_CA:
# POSTFIXADMIN_DATABASE_PREFIX
# It make much sense to use a prefix name for all PostfixAdmin related tables,
# when the tables, views and so on should be stored into a shared schema like
# public. About the environment variable POSTFIXADMIN_DATABASE_PREFIX can such
# a prefix defined.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_database_prefix
# POSTFIXADMIN_DATABASE_PREFIX:
# POSTFIXADMIN_DEFAULT_LANGUAGE
# Default language of PostfixAdmin. Checkout the official repository under
# ./languages to get a list of all supported languages.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_default_language
# POSTFIXADMIN_DEFAULT_LANGUAGE:
# POSTFIXADMIN_ENCRYPT
# Via POSTFIXADMIN_ENCRYPT can be the algorithm specified to encrypt passwords
# of users. The algorithm md5crypt is defined as default.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_encrypt
# POSTFIXADMIN_ENCRYPT:
# POSTFIXADMIN_SETUP_PASSWORD
# To login into the `setup.php` page is the setup password required. If the
# setup_password is undefined, it will be set by a random string via helm.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_setup_password
# POSTFIXADMIN_SETUP_PASSWORD:
# POSTFIXADMIN_SMTP_SERVER
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_server
# POSTFIXADMIN_SMTP_SERVER:
# POSTFIXADMIN_SMTP_PORT
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_smtp_port
# POSTFIXADMIN_SMTP_PORT:
# POSTFIXADMIN_SHOW_FOOTER_TEXT
# Enable or disable via YES or NO the footer text displayed on all sites. Use
# POSTFIXADMIN_FOOTER_TEXT and POSTFIX_FOOTER_LINK to customize the text.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_show_footer_text
# POSTFIXADMIN_SHOW_FOOTER_TEXT:
# POSTFIXADMIN_FOOTER_TEXT:
# POSTFIXADMIN_FOOTER_LINK:
# POSTFIXADMIN_FETCHMAIL
# Enable or disable via YES or NO the fetchmail tab. It has nothing todo with
# the fetchmail cron job.
# https://github.com/volker-raschek/postfixadmin-docker#postfixadmin_fetchmail
# POSTFIXADMIN_FETCHMAIL:
service:
type: ClusterIP
port: 80
ingress:
enabled: false
className: "nginx"
annotations:
# cert-manager.io/cluster-issuer:
# cert-manager.io/issuer:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: "your-hostname"
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: "your-tls-secret"
hosts:
- "your-hostname"
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}