1
0
mirror of git://f0xx.org/ac/ac-deploy synced 2026-07-29 05:38:25 +03:00
Files
ac-deploy/sim/cluster0/scripts/verify-mail-lab.sh
Anton Afanasyeu aa55e03fbd cluster0: auth-email bearer + shorten verify URLs in outbound mail
ShortLinksRepository::shortenForOutbound; ensure-auth-email-bearer.sh;
verify-mail-lab sends shortened s.f0xx.org link in verify email body.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 18:37:24 +02:00

36 lines
1.1 KiB
Bash
Executable File

#!/bin/sh
# Lab SMTP smoke — requires secrets.lab.env SMTP_* or local relay on cast01.
set -eu
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
# shellcheck source=/dev/null
. "$ROOT/scripts/lib/common.sh"
load_cluster_env
load_secrets_lab
TO="${1:-}"
[ -n "$TO" ] || die "usage: verify-mail-lab.sh recipient@example.com"
COMPOSED="${COMPOSE_BACKEND:-/var/www/ac/composed/backend}"
[ -f "${COMPOSED}/config/config.php" ] || die "missing composed backend — run compose-lab-backend.sh"
export MAIL_TEST_TO="$TO"
PHP="${PHP_BIN:-php83}"
command -v "$PHP" >/dev/null 2>&1 || PHP=php
_origin="${LAB_PUBLIC_ORIGIN:-https://acl0.f0xx.org}"
_token="lab-smoke-$(date +%s)"
_long="${_origin%/}/app/androidcast_project/issues/verify-email?token=${_token}"
export MAIL_TEST_LONG="$_long"
_out="$("$PHP" -r '
require "'"${COMPOSED}"'/src/bootstrap.php";
$to = getenv("MAIL_TEST_TO") ?: "";
$long = getenv("MAIL_TEST_LONG") ?: "";
$ok = AuthMailer::sendVerifyEmail($to, $long);
echo $ok ? "mail_ok" : "mail_fail";
' 2>&1)" || _out="mail_fail"
log "$_out to=$TO long=$_long"
case "$_out" in
mail_ok) exit 0 ;;
*) exit 1 ;;
esac