Commit Graph
632 Commits
Author SHA1 Message Date
Wez Furlong acaa095b45 docs: format 2023-11-23 08:36:40 -07:00
Wez Furlong c40f86e039 Add suppress-logging option to admin bounces
closes: https://github.com/KumoCorp/kumomta/issues/75
2023-11-23 08:36:07 -07:00
Mike Hillyer 1d8969e4a9 Update TOC with get help changes. 2023-11-23 10:13:51 -05:00
Mike Hillyer 90149c7309 Split out the get help page. 2023-11-23 10:11:51 -05:00
Wez Furlong 9282110479 docs: update openapi snapshots
Meant to include this in the previous commit!

refs: https://github.com/KumoCorp/kumomta/issues/96
2023-11-22 12:54:17 -07:00
Wez Furlong 0fc1108308 openapi: tidy up server URL and auth bits for rapidoc
refs: https://github.com/KumoCorp/kumomta/issues/96
2023-11-22 12:51:10 -07:00
Wez Furlong 0b87c020b4 add openapi.json metadata for http api
Adds `/api-docs/openapi.json` and `/rapidoc` endpoints to both
kumod and tsa-daemon.

The former exposes the subset of the API that is expressable
in the openapi schema as a json file that can be imported into
other tools.

The latter is a single-page web app that consumes the former
to provide an interactive API explorer.
We're using rapidoc for this, because I happen to think it looks
nicest and easiest to use, and we can integrate it into the docs
fairly nicely.

Which leads in nicely to say: I've integrated a read-only version
of rapidoc into the docs, and it even detects and adjusts to the
selected light/dark mode.

The `docs/update-openapi.sh` extracts the openapi.json data from
kumod and tsa-daemon and outputs to the correct place in the docs
directory structure to enable this.

refs: https://github.com/KumoCorp/kumomta/issues/96
2023-11-21 15:30:13 -07:00
Mike Hillyer 2ebf49d23b Re-organize TOC to move some operations pages to Policy section where they fit better. Removed page on tenant mapping now that we have the queues helper. 2023-11-21 16:48:41 -05:00
Mike Hillyer 667b3265ad Adding documentation page on Policy Helpers 2023-11-21 16:27:43 -05:00
Wez Furlong 8b8f53129f docs: changelog for the dkim h= wrapping fix 2023-11-18 12:07:35 -07:00
Mike Hillyer eead8d568f Split out the install/config/start sections of the tutorial. 2023-11-16 17:12:02 -05:00
Mike Hillyer 10b1a1b2b4 Add Youtube content to Config concepts page 2023-11-15 16:42:44 -05:00
Tom Mairs 5808ed4f46 reword trace-smtp-server title 2023-11-15 20:04:11 +00:00
Tom Mairs d4258cd0a2 reword trace-smtp-server title 2023-11-15 17:01:25 +00:00
Tom Mairs 16051af60f add trace-smtp-server to kcls functions 2023-11-15 16:53:25 +00:00
Mike Hillyer b4a149a5f3 Add samples for webhooks to the example config, update webhooks docs page with helper info. 2023-11-14 18:18:47 -05:00
Mike Hillyer 4d86392add Update example config and page on queue management to reflect the queue helper. 2023-11-14 16:47:54 -05:00
Wez Furlong 10537080f3 docs: changelog for #94 2023-11-13 09:36:46 -07:00
Wez Furlong a03fcb2bf1 docs: fix sqlite auth example 2023-11-10 07:01:58 -07:00
Wez Furlong 38179d59c4 docs: fix some broken links 2023-11-06 08:14:11 -07:00
Wez Furlong c1c4ce723e add pre_init event 2023-11-06 08:10:53 -07:00
Wez Furlong 1872dc71a0 shaping: calling shaper.should_enqueue_log_record is no longer required
Allow multiple should_enqueue_log_record hooks to be registered,
and take advantage of that inside the shaping helper.

`shaper.should_enqueue_log_record` no longer needs to be explicitly
plumbed from the config, but we allow calling it still for compatibility
reasons.

We will remove that compatibility after the next stable release.
2023-11-03 08:52:40 -07:00
Wez Furlong 3d7007825a shaping: calling shaper.get_queue_config is no longer required
Take advantage of the ability to define multiple get_queue_config
callbacks by internalizing the TSA webhook queue configuration.

`shaper.get_queue_config` no longer needs to be called, and
that fragment of code will continue to "work" by simply not
having an effect so that we don't break folks on upgrade.

We'll remove this compatibility in the release following
the next stable release.
2023-11-02 18:11:17 -07:00
Wez Furlong 929d51deba events: plumbing for registering multiple handlers
Previously, we'd restrict `kumo.on` to allowing just a single
instance of an event to be registered. The purpose of this was
to help surface logical errors where copypasta would result in
a bogus configuration.

With multiple helper lua modules now wanting to take responsibility
for some portion of the event handling, it is becoming more complex
to stitch things together.

It is desirable to allow multiple handlers for certain events,
so that a module can handle just its area of responsibility
without worry other modules about it.

This commit introduces a CallbackSignature type that allows
defining the function signature for event callbacks.

The signature can be pre-created and registered ahead of setting
up any lua contexts, which allows declaring whether an event
can have multiple callbacks registered.

The `get_queue_config` event handler has been set to allow multiple
callbacks.
2023-11-02 18:11:17 -07:00
Tom Mairs f630cbaf09 comments to rebuild after an update 2023-11-02 23:08:53 +00:00
Wez Furlong e176920f74 docs: changelog for #91 2023-11-02 08:35:19 -07:00
Wez Furlong ffc15f2f74 docs: smtp_client_rewrite_delivery_status: see also memoize 2023-11-01 13:45:05 -07:00
Wez Furlong 10bade362b docs: add version info to rewrite and regex set map 2023-11-01 13:41:34 -07:00
Wez Furlong 343411c3d2 Add event for rewriting a failed smtp response
This will only trigger for messages where we've gotten to MAIL FROM or
later, and where we got a non-250 response.

The event is passed the response + the domain, tenant, campaign and
routing domain.  It can return an alternative response code value
or `null` to indicate no change.
2023-11-01 13:25:15 -07:00
Wez Furlong 8942ef7f86 Add regex_set_map type
This is useful for efficiently matching a string simultaneously against
multiple regular expressions.

The motivating use case is to use it together with the
smtp_client_rewrite_delivery_status event.
2023-11-01 12:52:39 -07:00
Wez Furlong 8cbc60410d docs: update for dane 2023-10-26 17:03:00 -07:00
Wez Furlong 903189d873 add tls info to Delivery log records
refs: https://github.com/KumoCorp/kumomta/issues/39
refs: https://github.com/KumoCorp/kumomta/issues/8
2023-10-26 17:03:00 -07:00
Wez Furlong f3241dc3c7 docs: fix typo 2023-10-26 17:03:00 -07:00
Mike Hillyer ff0869c162 Update TSA page in User Guide to show the use of extra_files 2023-10-26 11:22:16 -04:00
Wez Furlong fb2cdff808 docs: refine from-source info
Minimize the rust install section to just what is necessary.
Show where the rpms and debs get built, and how to install them.
2023-10-24 13:19:03 -07:00
Wez Furlong 8efd4d5127 docs: clarify install-from-source docs
Avoid referencing implementation details that we may change
(install.sh).

Document what goes where with a bit of explanation.

Remove examples that show launching `kumod &` as we do not recommend
running the service in the background without some kind of supervision
(such as systemd).  Instead, show how how to run the process and leave
it to the reader to decide how they with to deploy it in their
environment.

closes: https://github.com/KumoCorp/kumomta/issues/72
2023-10-24 11:22:00 -07:00
Wez Furlong bec4bc1445 generate-toc.py: format 2023-10-24 11:19:55 -07:00
Tom Mairs 0b36fe4788 Add background/foreground instruction 2023-10-24 00:08:17 +00:00
Tom Mairs 201dee47ac Add instructions to run from sbin 2023-10-24 00:05:36 +00:00
Tom Mairs 7e57b009c1 Fix for console type 2023-10-23 23:45:44 +00:00
Tom Mairs adf3acb9b7 Fix doc highlight type 2023-10-23 23:20:23 +00:00
Tom Mairs 065120c19a add install.sh back in 2023-10-23 23:10:55 +00:00
Tom Mairs bac319829c update with sudo 2023-10-23 17:14:26 +00:00
Mike Hillyer d9dd7ddea7 Change console example to match lua example. 2023-10-20 10:00:59 -04:00
Mike Hillyer 72d93f212d Update troubleshooting page based on Wez's feedback. 2023-10-20 09:34:42 -04:00
Mike Hillyer c8dd0e3f93 Fix path of link to troubleshooting page. 2023-10-19 22:45:47 -04:00
Mike Hillyer a8ae27fffb Add crossreference to troubleshooting page to the starting KumoMTA page. 2023-10-19 22:36:55 -04:00
Mike Hillyer 13fb1b5f0c Typo 2023-10-19 22:33:51 -04:00
Mike Hillyer d433bea3f1 Add troubleshooting page, add cross-reference from Tutorial, remove orphaned integration pages from Tutorial directory. 2023-10-19 22:22:33 -04:00
Mike Hillyer 141beb60f6 Link fix. 2023-10-18 23:16:12 -04:00