mirror of
https://github.com/chatmail/relay.git
synced 2026-06-17 17:11:09 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ccd58da8e9 | |||
| 8d7870db55 | |||
| 5a31ff475f |
@@ -29,7 +29,7 @@ jobs:
|
|||||||
ref: ${{ github.event.pull_request.head.sha }}
|
ref: ${{ github.event.pull_request.head.sha }}
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: download filtermail
|
- name: download filtermail
|
||||||
run: curl -L https://github.com/chatmail/filtermail/releases/download/v0.7.0/filtermail-x86_64 -o /usr/local/bin/filtermail && chmod +x /usr/local/bin/filtermail
|
run: curl -L https://github.com/chatmail/filtermail/releases/download/v0.7.1/filtermail-x86_64 -o /usr/local/bin/filtermail && chmod +x /usr/local/bin/filtermail
|
||||||
- name: run chatmaild tests
|
- name: run chatmaild tests
|
||||||
working-directory: chatmaild
|
working-directory: chatmaild
|
||||||
run: pipx run tox
|
run: pipx run tox
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class Config:
|
|||||||
self.iroh_relay = iroh_relay.strip()
|
self.iroh_relay = iroh_relay.strip()
|
||||||
self.enable_iroh_relay = False
|
self.enable_iroh_relay = False
|
||||||
self.privacy_postal = params.pop("privacy_postal", None)
|
self.privacy_postal = params.pop("privacy_postal", None)
|
||||||
self.privacy_mail = params.pop("privacy_mail", None)
|
self.privacy_mail = params.pop("admin_contact", params.pop("privacy_mail", None))
|
||||||
self.privacy_pdo = params.pop("privacy_pdo", None)
|
self.privacy_pdo = params.pop("privacy_pdo", None)
|
||||||
self.privacy_supervisor = params.pop("privacy_supervisor", None)
|
self.privacy_supervisor = params.pop("privacy_supervisor", None)
|
||||||
|
|
||||||
|
|||||||
@@ -109,8 +109,8 @@ mail_domain = {mail_domain}
|
|||||||
# postal address of privacy contact
|
# postal address of privacy contact
|
||||||
privacy_postal =
|
privacy_postal =
|
||||||
|
|
||||||
# email address of privacy contact
|
# email address or invite link of admin contact
|
||||||
privacy_mail =
|
admin_contact =
|
||||||
|
|
||||||
# postal address of the privacy data officer
|
# postal address of the privacy data officer
|
||||||
privacy_pdo =
|
privacy_pdo =
|
||||||
|
|||||||
@@ -20,10 +20,10 @@ class FiltermailDeployer(Deployer):
|
|||||||
return
|
return
|
||||||
|
|
||||||
arch = host.get_fact(facts.server.Arch)
|
arch = host.get_fact(facts.server.Arch)
|
||||||
url = f"https://github.com/chatmail/filtermail/releases/download/v0.7.0/filtermail-{arch}"
|
url = f"https://github.com/chatmail/filtermail/releases/download/v0.7.1/filtermail-{arch}"
|
||||||
sha256sum = {
|
sha256sum = {
|
||||||
"x86_64": "451f295a85b3b12dbb0f89e18ec319f742ee46dec218f20f7923bfb017a248bd",
|
"x86_64": "fc2d8141166f8561b9711fb68c5327fc9421f814c46dc69671a4605a95b175c0",
|
||||||
"aarch64": "6833061b2a2028264fdeb32f0a6123e1ff73de57dace125364016300b748452e",
|
"aarch64": "37e52c5ddb373ef29b5ead89658407c53f48d10ce055a2dbd9c606fa1ebd5f7f",
|
||||||
}[arch]
|
}[arch]
|
||||||
self.download_executable(url, self.bin_path, sha256sum)
|
self.download_executable(url, self.bin_path, sha256sum)
|
||||||
|
|
||||||
|
|||||||
@@ -94,15 +94,12 @@ def _build_webpages(src_dir, build_dir, config):
|
|||||||
for path in src_dir.iterdir():
|
for path in src_dir.iterdir():
|
||||||
if path.suffix == ".md":
|
if path.suffix == ".md":
|
||||||
render_vars, content = prepare_template(path)
|
render_vars, content = prepare_template(path)
|
||||||
render_vars["username_min_length"] = int_to_english(
|
if config.privacy_mail.startswith("https://"):
|
||||||
config.username_min_length
|
render_vars["admin_contact"] = f"<a href='{config.privacy_mail}'>{config.privacy_mail}</a>"
|
||||||
)
|
elif "@" in config.privacy_mail:
|
||||||
render_vars["username_max_length"] = int_to_english(
|
render_vars["admin_contact"] = f"<a href='mailto:{config.privacy_mail}'>{config.privacy_mail}</a>"
|
||||||
config.username_max_length
|
else:
|
||||||
)
|
render_vars["admin_contact"] = config.privacy_mail
|
||||||
render_vars["password_min_length"] = int_to_english(
|
|
||||||
config.password_min_length
|
|
||||||
)
|
|
||||||
target = build_dir.joinpath(path.stem + ".html")
|
target = build_dir.joinpath(path.stem + ".html")
|
||||||
|
|
||||||
# recursive jinja2 rendering
|
# recursive jinja2 rendering
|
||||||
|
|||||||
@@ -225,21 +225,6 @@ Accepting and delivering mail
|
|||||||
nginx -.SMTP inet:465.-> smtpd-smtps
|
nginx -.SMTP inet:465.-> smtpd-smtps
|
||||||
mta2[Remote relay] -.SMTP inet:25.-> smtpd-smtp
|
mta2[Remote relay] -.SMTP inet:25.-> smtpd-smtp
|
||||||
mta2 -.HTTPS /mxdeliv.-> nginx
|
mta2 -.HTTPS /mxdeliv.-> nginx
|
||||||
style postfix fill:#363
|
|
||||||
style qmgr fill:#252
|
|
||||||
style authclean fill:#252
|
|
||||||
style cleanup fill:#252
|
|
||||||
style lmtp-filtermail fill:#252
|
|
||||||
style lmtp fill:#252
|
|
||||||
style bounce fill:#252
|
|
||||||
style smtpd-submission fill:#252
|
|
||||||
style smtpd-smtps fill:#252
|
|
||||||
style smtpd-reinject-outgoing fill:#252
|
|
||||||
style smtpd-reinject-incoming fill:#252
|
|
||||||
style smtpd-smtp fill:#252
|
|
||||||
style filtermail-outgoing fill:#225
|
|
||||||
style filtermail-incoming fill:#225
|
|
||||||
style filtermail-transport fill:#225
|
|
||||||
|
|
||||||
Operational details of a chatmail relay
|
Operational details of a chatmail relay
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
|
|||||||
+1
-1
@@ -48,7 +48,7 @@ Responsible for the processing of your personal data is:
|
|||||||
{{ config.privacy_postal }}
|
{{ config.privacy_postal }}
|
||||||
```
|
```
|
||||||
|
|
||||||
E-mail: {{ config.privacy_mail }}
|
E-mail: {{ admin_contact }}
|
||||||
|
|
||||||
We have appointed a data protection officer:
|
We have appointed a data protection officer:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user