feat(helmfile): Introduce additional variables for mailDomain and synapseDomain

This commit is contained in:
Dominik Kaminski
2024-04-24 21:27:51 +02:00
parent 7cb2c2261b
commit e6fe2a7c18
7 changed files with 25 additions and 10 deletions

View File

@@ -19,7 +19,8 @@ The project includes a `.gitlab-ci.yml` that allows you to execute the deploymen
When starting the pipeline through the GitLab UI, you will be queried for some variables plus the following ones: When starting the pipeline through the GitLab UI, you will be queried for some variables plus the following ones:
- `DOMAIN` = The domain to deploy to. - `DOMAIN` = The domain to deploy to.
- `MAIL_DOMAIN` = The mail domain to use. - `MAIL_DOMAIN` = (optional) Specify domain (f.e. root FQDN) for Mail, defaults to `DOMAIN`.
- `SYNAPSE_DOMAIN` = (optional) Specify domain (f.e. root FQDN) for Synapse, defaults to `DOMAIN`.
- `NAMESPACE`: Defines into which namespace of your K8s cluster openDesk will be installed - `NAMESPACE`: Defines into which namespace of your K8s cluster openDesk will be installed
- `MASTER_PASSWORD_WEB_VAR`: Overwrites value of `MASTER_PASSWORD` - `MASTER_PASSWORD_WEB_VAR`: Overwrites value of `MASTER_PASSWORD`

View File

@@ -77,18 +77,27 @@ or via environment variable
export DOMAIN=my.open.desk export DOMAIN=my.open.desk
``` ```
If the mail domain differs from the domain, the mail Additionally, you can announce/specify an alternative Domain for mail and chat.
domain has to be set either via `dev` environment
As example, your domain is `acme.tld` and you want to send mails with this domain, then you can deploy openDesk to
`*.opendesk.acme.tld` and send mail as `default.user@acme.tld`.
Webmail will be accessed via `mail.opendesk.acme.tld` in this scenario.
The required routing have to be implemented by yourself.
Users
The alternative domains have to be set either via `dev` environment
```yaml ```yaml
global: global:
mail_domain: "open.desk" mailDomain: "open.desk"
synapseDomain: "open.desk"
``` ```
or via environment variable or via environment variable
```shell ```shell
export MAIL_DOMAIN=open.desk export MAIL_DOMAIN=open.desk
export SYNAPSE_DOMAIN=open.desk
``` ```
### Apps ### Apps

View File

@@ -4,6 +4,7 @@
configuration: configuration:
bot: bot:
username: "meetings-bot" username: "meetings-bot"
homeserver: {{ .Values.global.synapseDomain | default .Values.global.domain }}
containerSecurityContext: containerSecurityContext:
allowPrivilegeEscalation: false allowPrivilegeEscalation: false

View File

@@ -29,6 +29,7 @@ configuration:
password: {{ .Values.databases.synapse.password | default .Values.secrets.postgresql.matrixUser | quote }} password: {{ .Values.databases.synapse.password | default .Values.secrets.postgresql.matrixUser | quote }}
homeserver: homeserver:
serverName: {{ .Values.global.synapseDomain | default .Values.global.domain }}
appServiceConfigs: appServiceConfigs:
- as_token: {{ .Values.secrets.intercom.synapseAsToken | quote }} - as_token: {{ .Values.secrets.intercom.synapseAsToken | quote }}
hs_token: {{ .Values.secrets.intercom.synapseAsToken | quote }} hs_token: {{ .Values.secrets.intercom.synapseAsToken | quote }}

View File

@@ -41,7 +41,7 @@ podSecurityContext:
postfix: postfix:
amavisHost: "" amavisHost: ""
amavisPortIn: "" amavisPortIn: ""
domain: {{ .Values.global.mailDomain | quote }} domain: {{ .Values.global.mailDomain | default .Values.global.domain }}
hostname: "postfix" hostname: "postfix"
inetProtocols: "ipv4" inetProtocols: "ipv4"
milterDefaultAction: "accept" milterDefaultAction: "accept"
@@ -67,7 +67,7 @@ postfix:
{{- else if .Values.clamavSimple.enabled }} {{- else if .Values.clamavSimple.enabled }}
smtpdMilters: "inet:clamav-simple:7357" smtpdMilters: "inet:clamav-simple:7357"
{{- end }} {{- end }}
virtualMailboxDomains: {{ .Values.global.mailDomain | quote }} virtualMailboxDomains: {{ .Values.global.mailDomain | default .Values.global.domain }}
virtualTransport: "lmtps:dovecot:24" virtualTransport: "lmtps:dovecot:24"
replicaCount: {{ .Values.replicas.postfix }} replicaCount: {{ .Values.replicas.postfix }}

View File

@@ -6,7 +6,6 @@ global:
configMapUcr: "ums-stack-data-swp-ucr" configMapUcr: "ums-stack-data-swp-ucr"
configMapUcrForced: null configMapUcrForced: null
domain: {{ .Values.global.domain | quote }} domain: {{ .Values.global.domain | quote }}
mailDomain: {{ .Values.global.mailDomain | quote }}
imagePullSecrets: imagePullSecrets:
{{ .Values.global.imagePullSecrets | toYaml | nindent 4 }} {{ .Values.global.imagePullSecrets | toYaml | nindent 4 }}
@@ -610,7 +609,7 @@ stack-data-ums:
# The openDesk configuration brings its own UMC policies. # The openDesk configuration brings its own UMC policies.
installUmcPolicies: false installUmcPolicies: false
domainname: {{ .Values.global.domain | quote }} domainname: {{ .Values.global.domain | quote }}
externalMailDomain: {{ .Values.global.mailDomain | quote }} externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
hostname: {{ .Values.global.hosts.univentionManagementStack | quote }} hostname: {{ .Values.global.hosts.univentionManagementStack | quote }}
ldapHost: {{ .Values.ldap.host | quote }} ldapHost: {{ .Values.ldap.host | quote }}
ldapBase: {{ .Values.ldap.baseDn | quote }} ldapBase: {{ .Values.ldap.baseDn | quote }}
@@ -651,7 +650,7 @@ stack-data-swp:
{{- end }} {{- end }}
externalDomainName: {{ .Values.global.domain | quote }} externalDomainName: {{ .Values.global.domain | quote }}
externalMailDomain: {{ .Values.global.mailDomain | quote }} externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }}
portalGroupwareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openxchange .Values.global.domain | quote }} portalGroupwareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openxchange .Values.global.domain | quote }}
portalFileshareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.nextcloud .Values.global.domain | quote }} portalFileshareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.nextcloud .Values.global.domain | quote }}

View File

@@ -13,7 +13,11 @@ global:
## Define mail host ## Define mail host
# #
mailDomain: {{ env "MAIL_DOMAIN" | default "souvap.cloud" | quote }} mailDomain: {{ env "MAIL_DOMAIN" | quote }}
## Define synapse host
#
synapseDomain: {{ env "SYNAPSE_DOMAIN" | quote }}
## Define docker registry address. ## Define docker registry address.
# #