From 321519e3387ab8e4647ae9b0b8b1173e5cc073b8 Mon Sep 17 00:00:00 2001 From: Marcin Fabrykowski <git@fabrykowski.pl> Date: Sun, 12 Dec 2021 19:03:25 +0100 Subject: [PATCH] add mail support to gitlab - closes #107 Signed-off-by: Marcin Fabrykowski <git@fabrykowski.pl> --- .gitlab-ci.yml | 1 + chart/templates/gitlab.yml | 24 +++++++++ chart/templates/openldap/ldap_mail_gitlab.yml | 54 +++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 chart/templates/openldap/ldap_mail_gitlab.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9e32f2a..8b75be3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,3 +17,4 @@ deploy-to-dev: repo: git@gitlab.exphost.pl:exphost/tenant-exphost-services-home-lab.git yamlfile: exphost-services.yml waitapp: tenant-exphost-services-exphost-services + refreshapp: tenant-exphost-services diff --git a/chart/templates/gitlab.yml b/chart/templates/gitlab.yml index 3336be2..198ff4e 100644 --- a/chart/templates/gitlab.yml +++ b/chart/templates/gitlab.yml @@ -40,6 +40,30 @@ spec: providers: - secret: gitlab-providers-dex key: provider + incomingEmail: + enabled: true + address: gitlab@{{ .Values.domain }} + host: imap.{{ .Values.domain }} + port: 143 + ssl: false + startTls: true + user: gitlab@{{ .Values.domain }} + password: + secret: password-password-mail-gitlab-from-tenant-exphost-services + key: password + + smtp: + enabled: true + address: smtp.{{ .Values.domain }} + port: 587 + user_name: gitlab@{{ .Values.domain }} + password: + secret: password-password-mail-gitlab-from-tenant-exphost-services + key: password + starttls_auto: true + authentication: "login" + email: + from: gitlab@{{ .Values.domain }} gitlab: webservice: diff --git a/chart/templates/openldap/ldap_mail_gitlab.yml b/chart/templates/openldap/ldap_mail_gitlab.yml new file mode 100644 index 0000000..a60ebcf --- /dev/null +++ b/chart/templates/openldap/ldap_mail_gitlab.yml @@ -0,0 +1,54 @@ +apiVersion: exphost.pl/v1 +kind: Password +metadata: + name: password-mail-gitlab +spec: + name: password-mail-gitlab + types: + - sha512 +--- +apiVersion: batch/v1 +kind: Job +metadata: + name: create-ldap-mail-gitlab + annotations: + argocd.argoproj.io/sync-wave: "4" +spec: + template: + spec: + restartPolicy: OnFailure + containers: + - name: ldap + image: bitnami/openldap:2.5 + command: + - /bin/bash + - -c + - 'echo -e " +dn: maildrop=gitlab@{{ .Values.domain }},ou=mails,{{ include "ldap.dc" . }}\n +changetype: add\n +maildrop: gitlab@{{ .Values.domain }}\n +objectClass: person\n +objectClass: postfixUser\n +objectClass: top\n +cn: gitlab\n +sn: mail\n +mailacceptinggeneralid: gitlab@{{ .Values.domain }}\n +userPassword:: $(echo -n {crypt}$PASSWORD|base64 -w0) +"|sed -e "s/^ //" >/tmp/ldif.ldif + ; + echo "qweqwe"; + cat /tmp/ldif.ldif; + ldapmodify -a -x -H ldap://openldap -D cn=admin,{{ include "ldap.dc" . }} -w $ADMINPASSWORD -f /tmp/ldif.ldif; + echo $? + ' + env: + - name: PASSWORD + valueFrom: + secretKeyRef: + name: password-password-mail-gitlab-from-tenant-exphost-services + key: sha512 + - name: ADMINPASSWORD + valueFrom: + secretKeyRef: + name: password-password-ldap-admin-from-tenant-exphost-services + key: password -- GitLab