public
nobgit
read
NobMail
Based on mailcow: dockerized
Languages
Repository composition by tracked source files.
PHP
49%
JavaScript
35%
HTML
9%
CSS
4%
Shell
2%
Python
1%
Lua
0%
Perl
0%
Ruby
0%
SCSS
0%
Create file
Wiki Documentation
Clone
https://nobgit.com/orgs/nobgit/nobmail.git
ssh://[email protected]:2222/orgs/nobgit/nobmail.git
Commit
[SOGo] use bash script for ldap plist template
132e37bf
.gitignore | 1 +
data/Dockerfiles/sogo/bootstrap-sogo.sh | 2 +-
data/conf/sogo/{plist_ldap => plist_ldap.sh} | 62 +++++++++++++++-------------
docker-compose.yml | 2 +-
4 files changed, 37 insertions(+), 30 deletions(-)
rename data/conf/sogo/{plist_ldap => plist_ldap.sh} (85%)
mode change 100644 => 100755
Diff
diff --git a/.gitignore b/.gitignore
index e1e8e888..43bc74e0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -44,6 +44,7 @@ data/conf/rspamd/local.d/*
data/conf/rspamd/override.d/*
data/conf/sogo/custom-theme.js
data/conf/sogo/plist_ldap
+data/conf/sogo/plist_ldap.sh
data/conf/sogo/sieve.creds
data/conf/sogo/sogo-full.svg
data/gitea/
diff --git a/data/Dockerfiles/sogo/bootstrap-sogo.sh b/data/Dockerfiles/sogo/bootstrap-sogo.sh
index 3eb59118..8913fd2c 100755
--- a/data/Dockerfiles/sogo/bootstrap-sogo.sh
+++ b/data/Dockerfiles/sogo/bootstrap-sogo.sh
@@ -107,7 +107,7 @@ while read -r line gal
</dict>" >> /var/lib/sogo/GNUstep/Defaults/sogod.plist
# Generate alternative LDAP authentication dict, when SQL authentication fails
# This will nevertheless read attributes from LDAP
- line=${line} envsubst < /etc/sogo/plist_ldap >> /var/lib/sogo/GNUstep/Defaults/sogod.plist
+ /etc/sogo/plist_ldap.sh ${line} ${gal} >> /var/lib/sogo/GNUstep/Defaults/sogod.plist
echo " </array>
</dict>" >> /var/lib/sogo/GNUstep/Defaults/sogod.plist
done < <(mysql --socket=/var/run/mysqld/mysqld.sock -u ${DBUSER} -p${DBPASS} ${DBNAME} -e "SELECT domain, CASE gal WHEN '1' THEN 'YES' ELSE 'NO' END AS gal FROM domain;" -B -N)
diff --git a/data/conf/sogo/plist_ldap b/data/conf/sogo/plist_ldap.sh
old mode 100644
new mode 100755
similarity index 85%
rename from data/conf/sogo/plist_ldap
rename to data/conf/sogo/plist_ldap.sh
index d585a494..c35949c6
--- a/data/conf/sogo/plist_ldap
+++ b/data/conf/sogo/plist_ldap.sh
@@ -1,28 +1,34 @@
- <!--
- <example>
- <key>canAuthenticate</key>
- <string>YES</string>
- <key>id</key>
- <string>${line}_ldap</string>
- <key>isAddressBook</key>
- <string>NO</string>
- <key>IDFieldName</key>
- <string>mail</string>
- <key>UIDFieldName</key>
- <string>uid</string>
- <key>bindFields</key>
- <array>
- <string>mail</string>
- </array>
- <key>type</key>
- <string>ldap</string>
- <key>bindDN</key>
- <string>cn=admin,dc=example,dc=local</string>
- <key>bindPassword</key>
- <string>password</string>
- <key>baseDN</key>
- <string>ou=People,dc=example,dc=local</string>
- <key>hostname</key>
- <string>ldap://1.2.3.4:389</string>
- </example>
- -->
+#!/bin/bash
+
+domain="$1"
+gal_status="$2"
+
+echo '
+ <!--
+ <example>
+ <key>canAuthenticate</key>
+ <string>YES</string>
+ <key>id</key>
+ <string>'"${domain}_ldap"'</string>
+ <key>isAddressBook</key>
+ <string>'"${gal_status}"'</string>
+ <key>IDFieldName</key>
+ <string>mail</string>
+ <key>UIDFieldName</key>
+ <string>uid</string>
+ <key>bindFields</key>
+ <array>
+ <string>mail</string>
+ </array>
+ <key>type</key>
+ <string>ldap</string>
+ <key>bindDN</key>
+ <string>cn=admin,dc=example,dc=local</string>
+ <key>bindPassword</key>
+ <string>password</string>
+ <key>baseDN</key>
+ <string>ou=People,dc=example,dc=local</string>
+ <key>hostname</key>
+ <string>ldap://1.2.3.4:389</string>
+ </example>
+ -->'
diff --git a/docker-compose.yml b/docker-compose.yml
index ee180bc6..ea8f7feb 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -190,7 +190,7 @@ services:
- phpfpm
sogo-mailcow:
- image: mailcow/sogo:nightly-20240208
+ image: mailcow/sogo:nightly-20240220
environment:
- DBNAME=${DBNAME}
- DBUSER=${DBUSER}