Commit 4fd22401 authored by Tom Niget's avatar Tom Niget

wip: work on internet mail-server

parent a68acc77
...@@ -14,12 +14,12 @@ ...@@ -14,12 +14,12 @@
# not need these here). # not need these here).
[template] [template]
filename = instance.cfg.in filename = mail-server-instance.cfg.in
md5sum = 403a4a362b2ffec05f8d0b591bab92fa md5sum = 403a4a362b2ffec05f8d0b591bab92fa
[template-default] [template-default]
_update_hash_filename_ = instance-default.cfg.in _update_hash_filename_ = instance-default.cfg.in
md5sum = 73c1fe98a12465369450cb8f3340881b md5sum = ba6ba781538d143387b677e4c4f09804
[dovecot.jinja2.conf] [dovecot.jinja2.conf]
_update_hash_filename_ = dovecot.jinja2.conf _update_hash_filename_ = dovecot.jinja2.conf
...@@ -30,7 +30,7 @@ md5sum = 060107ee6ad0eb9092529bc2bd1ee52f ...@@ -30,7 +30,7 @@ md5sum = 060107ee6ad0eb9092529bc2bd1ee52f
[postfix_main.jinja2.cf] [postfix_main.jinja2.cf]
_update_hash_filename_ = postfix_main.jinja2.cf _update_hash_filename_ = postfix_main.jinja2.cf
md5sum = e3b2b86282816ac4020154de70cd5074 md5sum = 9310f98c10b0264d70e80e641e8922cb
[postfix_master.jinja2.cf] [postfix_master.jinja2.cf]
_update_hash_filename_ = postfix_master.jinja2.cf _update_hash_filename_ = postfix_master.jinja2.cf
md5sum = 7752a8b4af5c18dc404e0a862af89272 md5sum = 7752a8b4af5c18dc404e0a862af89272
......
...@@ -94,13 +94,13 @@ init = ...@@ -94,13 +94,13 @@ init =
[{{ section('postmap-virtual') }}] [{{ section('postmap-virtual') }}]
recipe = plone.recipe.command recipe = plone.recipe.command
stop-on-error = true stop-on-error = false
command = '${wrapper-postmap:wrapper-path}' '${postfix-virtual:output}' command = '${wrapper-postmap:wrapper-path}' '${postfix-virtual:output}'
update-command = ${:command} update-command = ${:command}
[{{ section('postmap-vmailbox') }}] [{{ section('postmap-vmailbox') }}]
recipe = plone.recipe.command recipe = plone.recipe.command
stop-on-error = true stop-on-error = false
command = '${wrapper-postmap:wrapper-path}' '${postfix-vmailbox:output}' command = '${wrapper-postmap:wrapper-path}' '${postfix-vmailbox:output}'
update-command = ${:command} update-command = ${:command}
...@@ -195,9 +195,7 @@ recipe = slapos.cookbook:publish ...@@ -195,9 +195,7 @@ recipe = slapos.cookbook:publish
imap-port = 10143 imap-port = 10143
smtp-port = 10025 smtp-port = 10025
imap-smtp-ipv6 = ${slap-configuration:ipv6-random} imap-smtp-ipv6 = ${slap-configuration:ipv6-random}
{% if slapparameter_dict.get('request_dns', '') %}
domain = ${request-dns-entry:connection-domain} domain = ${request-dns-entry:connection-domain}
{% endif %}
[imap-listen-promise] [imap-listen-promise]
<= monitor-promise-base <= monitor-promise-base
...@@ -214,6 +212,7 @@ config-host = ${slap-configuration:ipv6-random} ...@@ -214,6 +212,7 @@ config-host = ${slap-configuration:ipv6-random}
config-port = 10025 config-port = 10025
[request-dns-entry] [request-dns-entry]
{% if slapparameter_dict.get('request_dns', '') %}
name = dns-mail-entry name = dns-mail-entry
recipe = slapos.cookbook:request.serialised recipe = slapos.cookbook:request.serialised
software-url = automated_local_dns software-url = automated_local_dns
...@@ -229,6 +228,9 @@ config-name = dns-mail-entry ...@@ -229,6 +228,9 @@ config-name = dns-mail-entry
config-subdomain = mail config-subdomain = mail
config-ip = ${slap-configuration:ipv6-random} config-ip = ${slap-configuration:ipv6-random}
return = domain ip return = domain ip
{% else %}
connection-domain = mail.localhost
{% endif %}
[base-wrapper] [base-wrapper]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
...@@ -309,3 +311,6 @@ parts = ...@@ -309,3 +311,6 @@ parts =
eggs-directory = {{ eggs_directory }} eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }} develop-eggs-directory = {{ develop_eggs_directory }}
offline= true offline= true
# [instance-parameter]
# snappymail = ${:document-root}
...@@ -27,7 +27,7 @@ virtual_gid_maps = static:1022 ...@@ -27,7 +27,7 @@ virtual_gid_maps = static:1022
virtual_alias_maps = hash:{{ virtual_file }} virtual_alias_maps = hash:{{ virtual_file }}
virtual_transport = lmtp:unix:private/dovecot-lmtp virtual_transport = lmtp:unix:private/dovecot-lmtp
inet_interfaces = {{ ip_address }} inet_interfaces = all
inet_protocols = all inet_protocols = all
smtp_bind_address = 0.0.0.0 smtp_bind_address = 0.0.0.0
smtp_bind_address6 = :: smtp_bind_address6 = ::
......
[buildout] [buildout]
extends = extends =
../../component/python-cffi/buildout.cfg
../../component/xz-utils/buildout.cfg ../../component/xz-utils/buildout.cfg
../../component/postfix/buildout.cfg ../../component/postfix/buildout.cfg
../../component/dovecot/buildout.cfg ../../component/dovecot/buildout.cfg
# ../../component/mariadb/buildout.cfg
../../stack/monitor/buildout.cfg ../../stack/monitor/buildout.cfg
../../stack/slapos.cfg # ../../stack/slapos.cfg
../../stack/lamp/buildout.cfg
buildout.hash.cfg buildout.hash.cfg
parts = parts =
...@@ -12,15 +15,27 @@ parts = ...@@ -12,15 +15,27 @@ parts =
template template
dovecot dovecot
postfix postfix
# mariadb
lamp-instance
[template] [postfix]
recipe = slapos.recipe.template configure-options-CCARGS = '-DHAS_MYSQL -I${mariadb:location}/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -DUSE_TLS -DHAS_PCRE -DHAS_DB -I${libdb:location}/include -I${pcre:location}/include -I${openssl:location}/include -I${cyrus-sasl:location}/include/sasl -I${libnsl:location}/include'
configure-options-AUXLIBS = '-L${mariadb:location}/lib -Wl,-rpath=${mariadb:location}/lib -lmysqlclient -lmariadb -L${openssl:location}/lib -L${pcre:location}/lib -L${libdb:location}/lib -L${cyrus-sasl:location}/lib -L${libtirpc:location}/lib -L${libnsl:location}/lib -lnsl -lssl -lpcre -ldb -lcrypto -lsasl2 -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${libdb:location}/lib -Wl,-rpath=${cyrus-sasl:location}/lib -Wl,-rpath=${libnsl:location}/lib'
# [template]
# recipe = slapos.recipe.template
# url = ${:_profile_base_location_}/${:filename}
# output = ${buildout:directory}/template.cfg
[template-mail-server-instance]
recipe = slapos.recipe.template:jinja2
url = ${:_profile_base_location_}/${:filename} url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/template.cfg output = ${buildout:directory}/instance-mail-server.cfg
extensions = jinja2.ext.do
[download-base] # [download-base]
recipe = slapos.recipe.build:download # recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/${:_update_hash_filename_} # url = ${:_profile_base_location_}/${:_update_hash_filename_}
[template-default] [template-default]
<= download-base <= download-base
...@@ -43,3 +58,9 @@ filename = ${:_buildout_section_name_} ...@@ -43,3 +58,9 @@ filename = ${:_buildout_section_name_}
< = copy-to-instance < = copy-to-instance
[postfix_virtual.jinja2] [postfix_virtual.jinja2]
< = copy-to-instance < = copy-to-instance
[application]
url = https://github.com/the-djmaze/snappymail/releases/download/v2.38.2/snappymail-2.38.2.tar.gz
md5sum = 551af7a01691f8d988c16aa73c75e686
# [custom-application-deployment]
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment