Wez Furlong
ad54ad8a63
ci: locked: true is deprecated; update to args: --locked
2023-03-08 21:07:30 -07:00
Wez Furlong
69a9eb7ed6
explicitly run integration tests as the current user
...
This helps when we're running as root in a container on CI
2023-03-08 21:05:48 -07:00
Wez Furlong
c0d7944e25
ci: source llvm toolset enable script
2023-03-08 20:30:19 -07:00
Wez Furlong
cfd5e3a924
ci: speculative start at centos7 build
2023-03-08 19:51:55 -07:00
Wez Furlong
c191b086b2
kumod: make --policy a required argument
...
it was optional when I was bootstrapping the code; it really
is required because you can't do anything without defining
any spools, and you need the policy script to do that.
2023-03-08 18:17:05 -07:00
Wez Furlong
4cd913e7bf
improve some error handling; enable printing panics, capture core
...
and report non-zero exit status if initialization failed
2023-03-08 18:15:31 -07:00
Wez Furlong
4b7cbf9299
build.rs: remove unused import
2023-03-08 17:42:33 -07:00
Wez Furlong
50a123a0e3
Add version info to kumod
2023-03-08 17:38:15 -07:00
Wez Furlong
772e1e1b89
format
2023-03-08 17:37:54 -07:00
Wez Furlong
815ed0c6fc
add issue template
2023-03-08 17:05:36 -07:00
Wez Furlong
55d3343ac5
config: implement pooling of lua contexts
...
and export some counters so that we can see into their usage
2023-03-08 16:53:04 -07:00
Wez Furlong
8152c0c24a
traffic-gen: allow configuring message size, message count
2023-03-08 16:53:04 -07:00
Wez Furlong
b7c6b1dd52
kumod: raise soft rlimit nofile -> hard limit on startup
2023-03-08 16:53:04 -07:00
Wez Furlong
78c9c45936
readme: delete content that now lives in docs/reference/queues.md
2023-03-08 16:53:03 -07:00
Wez Furlong
c7860fa93f
add temp and perm fail integration tests
2023-03-08 16:53:03 -07:00
Mike Hillyer
0cb2887536
Fixing linting errors.
2023-03-08 18:51:43 -05:00
Mike Hillyer
15cd2db097
Forgot the sub bullets.
2023-03-08 18:45:05 -05:00
Mike Hillyer
38afa339e4
Credits
2023-03-08 18:41:51 -05:00
Mike Hillyer
1dcac9228f
And another typo.
2023-03-08 18:18:26 -05:00
Mike Hillyer
48c700519b
Add more to the admonish, rebuild the remaining guidelines.
2023-03-08 18:17:04 -05:00
Mike Hillyer
babe0dc1fd
Moved the no help in Issues note to an Admonish.
2023-03-08 18:13:42 -05:00
Mike Hillyer
783a193538
First pass at the bug reporting page
2023-03-08 18:09:26 -05:00
Mike Hillyer
638ec8f3f9
Forgot the placeholder architecture doc.
2023-03-08 16:44:23 -05:00
Mike Hillyer
dcc2ad6f6c
Adding the overview section, fleshing out the preface.
2023-03-08 16:40:14 -05:00
Wez Furlong
b458bbced1
refactor integration testing to make it a bit easier to use
...
Helpers for generating messages, summarizing deliveries,
reducing boilerplate in the tests themselves.
Add SMTP line length test.
2023-03-08 10:32:01 -07:00
Wez Furlong
092aacebb5
fix scheduler deadlock when core count is low
...
The GH actions CI hangs were due to a deadlock in rt_spawn.
The GH runners have only two cores available which meant
that it would only take one call to send_blocking or recv_blocking
to tie up the localset threads and deadlock.
This commit adjusts that logic to make rt_spawn async and to
provide a non-blocking fire and forget variant for the couple
of situations that need it.
Also adds a bit of tracing!
2023-03-08 07:38:35 -07:00
Wez Furlong
70ab30eb5c
ci: keep cache even if the build or tests fail
2023-03-07 23:18:10 -07:00
Wez Furlong
c7aa190315
ci: revert splitting of stages
2023-03-07 23:07:21 -07:00
Wez Furlong
e65aa45740
turn up tracing to try to get more insight into hang on GH actions
2023-03-07 22:46:11 -07:00
Wez Furlong
0c8adcf68e
ci: split rust into build and test stages
2023-03-07 22:36:23 -07:00
Wez Furlong
1488c2dfd7
add timeout when stopping daemon in integration tests
2023-03-07 22:26:14 -07:00
Wez Furlong
6e15132be0
more tweaks to integration tests
...
trying to figure out why they hang on GH actions
2023-03-07 22:07:28 -07:00
Wez Furlong
70e6c21839
capture egress path resolution failures
...
Log them as transient failures and also debug log them
2023-03-07 21:44:25 -07:00
Wez Furlong
25c229fae3
rustfmt
2023-03-07 20:22:04 -07:00
Wez Furlong
1d485d9fba
dump delivery logs in integration test
2023-03-07 20:20:13 -07:00
Wez Furlong
f4370faeac
ci: make it easier to debug the new integration test
2023-03-07 19:37:57 -07:00
Wez Furlong
257dc4a25a
flesh out integration testing some more
...
This has our first end-to-end integration test that validates
smtp -> source mta -> sink mta -> maildir
and confirms that the message has the right bits inside it.
The end to end test will get refactored into more easily usable
pieces in follow-up commit(s).
2023-03-07 18:42:14 -07:00
Wez Furlong
51d1408aa6
scaffolding for integration tests
2023-03-07 14:54:19 -07:00
Wez Furlong
92a5509af5
update simple_policy for changes to the dkim vault parameters
2023-03-07 14:52:36 -07:00
Wez Furlong
fc17efb7c9
ci: use cargo nextest for running tests
2023-03-07 11:35:58 -07:00
Wez Furlong
3e97cea1f6
docs build: simplify dep logic a little
2023-03-07 11:31:01 -07:00
Wez Furlong
8d529d1692
ci: ensure we use the cargo.lock locked deps for cargo installed stuff
2023-03-07 11:30:24 -07:00
Wez Furlong
7df50feb64
ci: streamline workflows a bit
2023-03-07 11:25:40 -07:00
Wez Furlong
258d9f8f64
docs: add a bit of an explanation about queueing
2023-03-07 08:27:44 -07:00
Wez Furlong
a05724e40c
auto-format generate-toc.py too
2023-03-07 07:36:50 -07:00
Wez Furlong
6d23055570
deps: update to revised maildir PR
2023-03-07 07:20:57 -07:00
Wez Furlong
3e203eb0d1
switch to my redis-cell fork to avoid shared object in the build
2023-03-07 06:47:17 -07:00
Wez Furlong
96350031dc
add index pages for redis and sqlite
2023-03-06 20:19:16 -07:00
Wez Furlong
7054fb31c9
switch to using human time for the queue related time intervals
2023-03-06 19:33:05 -07:00
Wez Furlong
5bb9363aaa
docs: format
2023-03-06 19:16:35 -07:00