Compare commits

..

1 Commits

Author SHA1 Message Date
link2xt
569a043065 Add execnet dependency 2025-12-06 17:18:24 +00:00
3 changed files with 8 additions and 18 deletions

View File

@@ -11,9 +11,6 @@
- Organized cmdeploy into install, configure, and activate stages - Organized cmdeploy into install, configure, and activate stages
([#695](https://github.com/chatmail/relay/pull/695)) ([#695](https://github.com/chatmail/relay/pull/695))
- echobot: print invite-link also if it's deployed locally
([#751](https://github.com/chatmail/relay/pull/751))
- docs: move readme.md docs to sphinx documentation rendered at https://chatmail.at/doc/relay - docs: move readme.md docs to sphinx documentation rendered at https://chatmail.at/doc/relay
([#711](https://github.com/chatmail/relay/pull/711)) ([#711](https://github.com/chatmail/relay/pull/711))

View File

@@ -73,5 +73,6 @@ commands =
deps = pytest deps = pytest
pdbpp pdbpp
pytest-localserver pytest-localserver
execnet
commands = pytest -v -rsXx {posargs} commands = pytest -v -rsXx {posargs}
""" """

View File

@@ -11,7 +11,6 @@ import pathlib
import shutil import shutil
import subprocess import subprocess
import sys import sys
import time
from pathlib import Path from pathlib import Path
import pyinfra import pyinfra
@@ -110,22 +109,15 @@ def run_cmd(args, out):
try: try:
retcode = out.check_call(cmd, env=env) retcode = out.check_call(cmd, env=env)
if retcode == 0: if retcode == 0:
if not args.disable_mail and not args.dry_run: if not args.disable_mail:
print("\nYou can try out the relay by talking to this echo bot: ") print("\nYou can try out the relay by talking to this echo bot: ")
invite_path = Path("/var/lib/echobot/invite-link.txt") sshexec = SSHExec(args.config.mail_domain, verbose=args.verbose)
if ssh_host in ["localhost", "@local", "@docker"]: print(
while not invite_path.exists(): sshexec(
time.sleep(0.1) call=remote.rshell.shell,
with invite_path.open() as f: kwargs=dict(command="cat /var/lib/echobot/invite-link.txt"),
print(f.readline())
else:
echo_sshexec = get_sshexec(ssh_host, verbose=args.verbose)
print(
echo_sshexec(
call=remote.rshell.shell,
kwargs=dict(command=f"cat {invite_path}"),
)
) )
)
out.green("Deploy completed, call `cmdeploy dns` next.") out.green("Deploy completed, call `cmdeploy dns` next.")
elif not remote_data["acme_account_url"]: elif not remote_data["acme_account_url"]:
out.red("Deploy completed but letsencrypt not configured") out.red("Deploy completed but letsencrypt not configured")