Compare commits

..

2 Commits

Author SHA1 Message Date
link2xt
c1a9467942 Setup unbound DNS resolver 2023-12-12 20:56:20 +00:00
link2xt
4a96f19faf s/fuff/ruff/ 2023-12-12 20:29:34 +00:00
4 changed files with 24 additions and 17 deletions

View File

@@ -25,56 +25,55 @@ DNS domain name (FQDN), for example `chat.example.org`.
ssh root@CHATMAIL_DOMAIN ssh root@CHATMAIL_DOMAIN
``` ```
2. Install the `cmdeploy` command in a virtualenv 2. Install the `cmdeploy` command in a virtualenv and activate it
``` ```
git clone https://github.com/deltachat/chatmail
cd chatmail
scripts/initenv.sh scripts/initenv.sh
. venv/bin/activate
``` ```
3. Create chatmail configuration file `chatmail.ini`: 3. Create chatmail configuration file `chatmail.ini`:
``` ```
scripts/cmdeploy init CHATMAIL_DOMAIN cmdeploy init CHATMAIL_DOMAIN
``` ```
4. Deploy to the remote chatmail server: 4. Deploy to the remote chatmail server:
``` ```
scripts/cmdeploy run cmdeploy run
``` ```
5. To output a DNS zone file from which you can transfer DNS records 5. To output a DNS zone file from which you can transfer DNS records
to your DNS provider: to your DNS provider:
``` ```
scripts/cmdeploy dns cmdeploy dns
``` ```
6. To check status of your remotely running chatmail service: 6. To check status of your remotely running chatmail service:
``` ```
scripts/cmdeploy status cmdeploy status
``` ```
7. To test your chatmail service: 7. To test your chatmail service:
``` ```
scripts/cmdeploy test cmdeploy test
``` ```
8. To benchmark your chatmail service: 8. To benchmark your chatmail service:
``` ```
scripts/cmdeploy bench cmdeploy bench
``` ```
### Refining the web pages ### Refining the web pages
``` ```
scripts/cmdeploy webdev cmdeploy webdev
``` ```
This starts a local live development cycle for chatmail Web pages: This starts a local live development cycle for chatmail Web pages:

View File

@@ -378,6 +378,20 @@ def deploy_chatmail(mail_domain: str, mail_server: str, dkim_selector: str) -> N
system=True, system=True,
) )
# Run local DNS resolver `unbound`.
# `resolvconf` takes care of setting up /etc/resolv.conf
# to use 127.0.0.1 as the resolver.
apt.packages(
name="Install unbound",
packages="unbound",
)
systemd.service(
name="Start and enable unbound",
service="unbound.service",
running=True,
enabled=True,
)
# Deploy acmetool to have TLS certificates. # Deploy acmetool to have TLS certificates.
deploy_acmetool(nginx_hook=True, domains=[mail_server, f"mta-sts.{mail_server}"]) deploy_acmetool(nginx_hook=True, domains=[mail_server, f"mta-sts.{mail_server}"])

View File

@@ -155,7 +155,7 @@ def fmt_cmd_options(parser):
def fmt_cmd(args, out): def fmt_cmd(args, out):
"""Run formattting fixes (fuff and black) on all chatmail source code.""" """Run formattting fixes (ruff and black) on all chatmail source code."""
sources = [str(importlib.resources.files(x)) for x in ("chatmaild", "cmdeploy")] sources = [str(importlib.resources.files(x)) for x in ("chatmaild", "cmdeploy")]
black_args = [shutil.which("black")] black_args = [shutil.which("black")]

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#
# Wrapper for cmdelpoy to run it in activated virtualenv.
set -e
. venv/bin/activate
cmdeploy "$@"