view mod_alias/mod_alias_postfixadmin.sh @ 5551:8bfcedd93a72

mod_rest: List all error conditions in OpenAPI spec These are not handled by datamanager but by util.stanza and util.error, so they are not represented in the JSON schema file.
author Kim Alvefur <zash@zash.se>
date Sat, 17 Jun 2023 16:26:33 +0200
parents 0c3ba5ff7a3b
children
line wrap: on
line source

#!/bin/sh
# Copyright (C) 2015 Travis Burtrum
# This file is MIT/X11 licensed.

# run like ./mod_alias_postfixadmin.sh "mysql -N -upostfixadmin -ppostfixadmin postfixadmin" > /etc/prosody/aliases.cfg.lua
# then put:
# Include "aliases.cfg.lua"
# in prosody.cfg.lua

mysql="$1"

echo "-- alias plugin, generated by mod_alias_postfixadmin.sh"
echo "aliases = {"

echo "SELECT concat('["'"'"', address, '"'"'"] = "'"'"', goto, '"'"'";') FROM alias WHERE address != goto;
SELECT concat('["'"'"', address, '"'"'"] = "'"'"', goto, '"'"'";') FROM (
	select replace(address, concat('@', target_domain), concat('@', alias_domain)) as address, goto FROM alias JOIN alias_domain ON alias_domain.target_domain = SUBSTRING(alias.address, locate('@',alias.address) + 1, length(alias.address))
) a WHERE a.address != a.goto;" | $mysql | sort | uniq

echo "}"