Martin Schulze
05deaa3196
Move common functions into common.bash
2020-10-17 02:03:11 +02:00
Martin Schulze
53b930448d
Fix shellcheck issues
2020-10-17 02:03:11 +02:00
Martin Schulze
0d4eb08de8
Add missing accounts
2020-10-17 02:03:11 +02:00
Martin Schulze
e1d0fcfe01
Improve output in failure cases
2020-10-17 02:03:11 +02:00
Martin Schulze
a90e043e45
Fix failing tests due to old paths
2020-10-17 02:03:11 +02:00
Martin Schulze
ca3ebc6c40
Improve error messages on problems
2020-10-17 02:03:11 +02:00
Martin Schulze
40dd3ae985
Implement and use run_until_success_or_timeout
2020-10-17 02:03:11 +02:00
Martin Schulze
a477040abb
Allow for seamless switching between old and new bats versions
2020-10-17 02:03:11 +02:00
Martin Schulze
ef80c6b2a3
Add setup/teardown marker tests
2020-10-17 02:03:11 +02:00
Martin Schulze
0eb5bd0db9
Add --fatal-tests for early out in container waits
2020-10-17 02:02:46 +02:00
Martin Schulze
97806859b6
Fix private_config_path creating the wrong folder
2020-10-17 02:02:46 +02:00
Martin Schulze
5fef8a5b78
Give each container their own private config folder
2020-10-17 02:02:46 +02:00
Martin Schulze
190f4961c0
Move mail container creation into tests file
2020-10-17 02:02:46 +02:00
Martin Schulze
9c285db520
Extract mail_override_hostname into own test file
2020-10-17 02:02:46 +02:00
Martin Schulze
06b137e5a8
Extract container mail_smtponly_without_config into test
2020-10-17 02:02:46 +02:00
Martin Schulze
ad0be553d8
Extract SRS DOMAINNAME tests/container into own file
2020-10-17 02:02:46 +02:00
Martin Schulze
d38ff4c122
Extrract disabled clamav tests into own file
2020-10-17 02:02:46 +02:00
Georg Lauterbach
ed6e3ebd30
Outsourced linting tests into its own file ( #1636 )
...
* outsourced linting tests into its own file
* trigger rebuild
* added SCRIPT variable to setup.sh
* trigger rebuild again
* major test rewrite
* outsourced `hadolint` too
* rewrote some parts of the linting logic due to a logic bug
* adjusted TravisCI
* corrected .bats test line
* corrected logging in linting tests
* updated `hadolint`
2020-10-04 19:34:15 +02:00
Georg Lauterbach
a0791ef457
formatting files according to standard ( #1619 )
...
* added EditorConfig linting
* adding `eclint` as Travis script target
* re-adjusted .pem files to have a newline
2020-09-24 14:54:21 +02:00
mwnx
42352a3259
Update relayhost_map with virtual accounts too
...
Previously, only postfix-relaymap.cf and postfix-accounts.cf would be
used to populate the relayhost_map file.
Now, also use postfix-virtual.cf when present. To me, there is nothing
absurd about sending mail "From:" a virtual account (or more
specifically its domain) so it makes sense that when a $RELAY_HOST is
defined it should be used for virtual accounts as well.
2020-08-28 15:03:51 +02:00
mwnx
1286a1266b
Fix/refactor relayhost_map update when dynamically adding account
...
check-for-changes.sh did not have a special case to handle lines in
postfix-relaymap.cf consisting of only a domain (indicating that said
domain should never be relayed). This case is handled by
start-mailserver.sh so when such a line existed, things would work well
until a config file update was detected by check-for-changes.sh. After
that, the generated relayhost_map file would be corrupted.
Fixed by factoring a 'populate_relayhost_map' function out of
start-mailserver.sh and into helper_functions.sh and reusing it in
check-for-changes.sh.
Note: There are certainly quite a few more pieces of code that could be
refactored in a similar fashion.
Note2: check-for-changes.sh would previously never update the
relayhost_map file when $ENABLE_LDAP was set to 1. I don't think this
was intended —there is after all no such condition in
start-mailserver.sh— and so this condition no longer applies.
2020-08-28 15:03:51 +02:00
mwnx
2a70f33a4b
Fix checksum race condition in check-for-changes.sh
...
If a change to one of the tracked files happened soon after (<1 second?)
a previously detected change, it could end up going undetected. In
particular, this could cause integration tests to fail (see next
commits).
Fixed by computing the new checksum file _before_ checking for changes.
2020-08-28 14:57:43 +02:00
Michael Sprauer
119dbd664c
revert nonsens changes
2020-07-14 15:23:36 +02:00
Michael Sprauer
d61a8cd9c0
letsencrypt & traefik wildcard support
...
set SSL_DOMAIN=*.example.com to extract a wildcard certificate from traefiks acme.json store
2020-07-13 22:58:17 +02:00
Michael Sprauer
32c732e276
certificates from acme.json
...
Will extract certificates from acme.json as written by traefik for usage in dovecot and postfix.
Also watches acme.json for changes. For this to work the file has to be mounted/present at `/etc/letsencrypt/acme.json`
2020-06-30 22:43:22 +02:00
Michael Sprauer
989f691281
fix tests with space in path
2020-06-30 22:34:26 +02:00
Nicholas Pepper
1b659a5574
Modified letsencrypt support to add domain name checking in addition to
...
hostname checking. Added necessary tests and renamed original manual
ssl test to a name that supports adding the other SSL tests.
2020-05-15 04:52:26 +00:00
youtous
c65ffb44a1
test postfix inet
2020-05-09 22:42:56 +02:00
youtous
d0f7257333
support comments in .cf files
2020-05-06 22:59:55 +02:00
youtous
30262128f4
raise a warning when SPAMASSASSIN_SPAM_TO_INBOX isn't explicitly defined
2020-05-03 10:33:50 +02:00
youtous
15dd63d566
add test case no move to Junk
2020-05-03 10:33:28 +02:00
youtous
d829905cf7
init spams to junk
2020-05-03 10:33:28 +02:00
youtous
0c838706d0
Option to disable dovecot quota
2020-05-01 23:42:21 +02:00
youtous
d45e6b1c22
#fix 1478
2020-04-30 12:47:12 +02:00
youtous
80bd3a8c85
Update test/mail_dhparams_manual_not_one_dir.bats
...
Co-Authored-By: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2020-04-27 10:42:47 +02:00
youtous
3e3f5d557b
Update test/mail_dhparams_manual_one_dir.bats
...
Co-Authored-By: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2020-04-27 10:42:39 +02:00
youtous
27cbdeeb6a
Update test/mail_dhparams_default.bats
...
Co-Authored-By: Brennan Kinney <5098581+polarathene@users.noreply.github.com>
2020-04-27 10:42:24 +02:00
youtous
e680c349b1
test wait setup for // containers
2020-04-27 10:28:24 +02:00
youtous
149a10272c
improve dhe tests documentation
2020-04-27 09:57:36 +02:00
youtous
dff7355fa9
fix #1459
2020-04-26 23:07:34 +02:00
youtous
4d031f73e3
test dhparams ONE_DIR both cases
2020-04-26 22:25:48 +02:00
youtous
47fac2706f
use ffdhe4096 for DHE params
...
use by default ffdhe4096 for DHE params
use by default ffdhe4096 for DHE params
2020-04-26 22:23:51 +02:00
youtous
f60de0c66e
init tests cases ffdhe4096
2020-04-26 22:23:51 +02:00
youtous
bdcf5e0cf1
fix send mail test quota
...
fix quota warning test: wait for postfix to be UP
increase postfix restart delay
2020-04-24 19:03:27 +02:00
youtous
2e149b74c2
fix async quota tests
2020-04-24 17:03:09 +02:00
youtous
04de46dc41
test quota reached
2020-04-24 15:53:44 +02:00
youtous
2527ebfaf2
added dovecot quota feature
...
add postfix service quota check
check-for-changes on quotas
setquota command
fix checkforchanges quota
addquota verify user exists
add setquota in setup.sh
merging addquota into setquota
test quota commands
add ldap tests for dovecot quota
fix smtp only quota postfix rules
test postfix conf
add quota test integration
add quota exceeded test
add wait analyze
fix tests
fix setup typo
add test fixes
fix error output
wip
update startup rules
fix setup
fix setup tests
fix output commands
remove quota on remove user
try to fix sync limit mails
check if file exists
fix path
change used quota user
fix post size
check if quota file exists
update tests
configure virtualmailbox limit for dovecot
last fix
fix quota expr
relax dovecot tests
auto create dovecot-quotas
fix dovecot apply quota test
wip quota warning
trying to fix get dovadm quota
dovecot applies fix
fix quota warning lda path
test count mail on quota
fix quota warning permissiosn
fix test
2020-04-24 14:56:15 +02:00
Erik Wramner
dde6acd1a1
Search in rotated logs and limit to RelayedInbound
2020-01-26 21:05:24 +01:00
Erik Wramner
f342151b80
Fixed several amavis tests and removed commented code
2020-01-26 16:39:58 +01:00
Erik Wramner
42ccae2642
Test stop with a less central container than mail
2020-01-26 08:36:31 +01:00
Erik Wramner
27d66cf11f
Restored test removed by accident
2020-01-22 19:11:59 +01:00
Erik Wramner
881ac71601
Show delivered mails with more details in test
2020-01-20 21:59:34 +01:00
Erik Wramner
1c73290ba0
Show found and expected decoders in test
2020-01-19 09:20:50 +01:00
Erik Wramner
a66b2bff0c
Make test result easier to evaluate
2020-01-18 21:01:24 +01:00
Erik Wramner
2ad667209c
Merge pull request #1323 from ap-wtioit/master-remove_tty_necessity
...
fix: dont use TTY in docker if not present, rem TTY necessity in tests
2019-11-13 09:59:01 +01:00
Andreas Perhab
bbab4ef3fc
fix: fix test setup.sh debug fetchmail on wildcard domains
...
on hosts that belong to wildcard domains pop3.example.com might
actually resolve to pop3.example.com.[mydomain.com] and give a valid ip
the return code of fetchmail then no longer is 11 (dns failure) but
something else (2 for socket error in our case)
to make sure we always get return code 11 we use the domain name
pop3.example.com. that is not allowed to be resolved to a subdomain.
2019-11-12 15:35:03 +01:00
Andreas Perhab
d8be2bd3cc
fix: dont use TTY in docker if not present, rem TTY necessity in tests
...
Gitlab CI has not TTY present and TTY is not really required for
automated testing
2019-11-12 09:32:27 +01:00
Erik Wramner
c882d95deb
Merge pull request #1284 from vortex852456/master
...
Added optional file user-patches.sh for own patches without recompiling
2019-11-09 15:13:06 +01:00
Sebastian Kaiser
37540509dc
- test for user-patches.sh
2019-11-08 02:22:33 +01:00
Germain Masse
d764d89ea9
Test for DOVECOT_MAILBOX_FORMAT
2019-11-04 15:49:29 +00:00
Germain Masse
fa167a9e51
Test special-use folders are available in IMAP
2019-11-01 20:04:37 +00:00
Germain Masse
e465e659ad
Remove unnecessary maildir folders creation
2019-11-01 20:04:37 +00:00
vortex852456
34f52c6ad0
only "assert_success" for user-patches.sh check
2019-10-31 09:51:40 +01:00
Vortex
def8400c17
added default "user-patches.sh" to the first container "mail"
2019-10-31 09:01:44 +01:00
Vortex
437d3b74cc
added test for "checking configuration: user-patches.sh executed" - should fail with this commit
2019-10-31 02:38:45 +01:00
Felix Bartels
7ff9764285
Provide version information through labels ( #1256 )
...
* Provide version information through labels
Can be retrieved by calling e.g. `docker inspect -f {{.Config.Labels}} tvial/docker-mailserver:testing`
Signed-off-by: Felix Bartels <felix@host-consultants.de>
* add build hook so that Docker Hub can work with the build args
Signed-off-by: Felix Bartels <felix@host-consultants.de>
* remove obsolete build-no-cache
build args invalidate build cache already
Signed-off-by: Felix Bartels <felix@host-consultants.de>
* adapt travis file
Signed-off-by: Felix Bartels <felix@host-consultants.de>
* shellcheck
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-10-23 11:22:23 +02:00
Germain Masse
b34a79310a
Privacy test email no more tagged as SPAM. ClamAV and SA disabled to avoid time-out on low perf system
2019-10-14 13:25:44 +00:00
Martin Schulze
e2bbf12524
Tests fx: Also wait for smtp port
2019-10-08 23:39:04 +02:00
Martin Schulze
604a65024e
Tests: extract mail_privacy into own .bats file
2019-10-08 23:11:27 +02:00
Martin Schulze
533ac7ed29
Tests: extract mail_pop3 into own .bats file
2019-10-08 22:24:05 +02:00
Martin Schulze
81fd83525c
Tests: extract mail_smtponly into own .bats file
2019-10-08 22:15:27 +02:00
Martin Schulze
56f47db0f2
Tests: Extract mail_fail2ban into own .bats file
2019-10-08 22:03:56 +02:00
Martin Schulze
d05255cb04
Tests: Extract mail_fetchmail into own .bats file
2019-10-08 21:45:05 +02:00
Martin Schulze
a03c741e1b
Extract mail_manual_ssl into own .bats file
2019-10-08 21:36:13 +02:00
Martin Schulze
d3e2dfe3ba
Move mail_with_ldap into its own .bats file
2019-10-08 21:31:56 +02:00
Martin Schulze
d9a48878c9
Print last 10 log lines on container setup timeout
2019-09-12 00:43:44 +02:00
Martin Schulze
3f9dd4180a
Fix setup_file marker logic
2019-09-12 00:42:04 +02:00
Martin Schulze
a20f2c4199
Add pregenerated test/config dh params
2019-09-12 00:42:04 +02:00
Erik Wramner
ca821fa51a
Merge pull request #1259 from martin-schulze-vireso/bugfix/no_error_printed_on_timeout
...
Fix missing error output from timeout
2019-09-11 14:04:04 +02:00
Martin Schulze
3513944d0a
Skip all tests of file after failed setup_file
2019-09-11 01:01:51 +02:00
Martin Schulze
8e6152ff2f
Fix missing error output from timeout
...
The exits would prevent the printing code from running
2019-09-11 00:02:16 +02:00
Erik Wramner
8f23cb7b35
Adjust wait for tests as they often fail
2019-09-05 21:35:23 +02:00
Martin Schulze
596563ae64
Make failed test output more readable
2019-08-21 21:16:39 +02:00
Martin Schulze
bfc4f5693e
Don't use run in repeat_until_success_or_timeout
...
it overwrites the return code of its command
2019-08-17 21:23:48 +02:00
Martin Schulze
a933ef27ac
Fix polling with pipes
2019-08-17 20:58:33 +02:00
Martin Schulze
43ae814776
Extract mail_with_imap into its own test file
2019-08-17 20:58:33 +02:00
Martin Schulze
9019b98394
Extract mail_postscreen into own test file
2019-08-17 20:58:33 +02:00
Martin Schulze
3b728848bb
Extract mail_lmtp_ip into own test file
2019-08-17 20:58:33 +02:00
Martin Schulze
82ab286291
Extract mail_undef_spam_subject into own test file
2019-08-17 20:58:33 +02:00
Martin Schulze
5be2fdc3cd
Use correct container name
2019-08-17 20:58:33 +02:00
Martin Schulze
9d90df7064
Fix integer check
2019-08-17 20:58:33 +02:00
Martin Schulze
85fa5d242f
Fix setup/teardown_file to work in full suite run
...
The previous mechanism would only run them once for the whole suite
2019-08-17 20:58:33 +02:00
Martin Schulze
d8956d3b29
Extract mail_with_postgrey into own test files
2019-08-17 20:58:33 +02:00
Martin Schulze
fcddf578d2
Extract mail with relay tests into own file
2019-08-17 20:58:33 +02:00
Martin Schulze
db160bd977
Extract default relay host test
...
centralize common test variables and functions
2019-08-17 20:58:33 +02:00
Erik Wramner
bf773cc8b7
Use assert_output for better diagnostics of failures
2019-08-16 12:02:23 +02:00
Felix Bartels
1ba0991d80
Fix linting errors reported by hadolint ( #1211 )
...
* Fix linting errors reported by hadolint
* use full path for folders when listing contents
* add linting task to makefile
2019-08-13 11:41:38 +02:00
Erik Wramner
5ebb8614a2
Merge pull request #1220 from erik-wramner/dhparam_on_start
...
Generate dhparam and dovecot cert on start
2019-08-12 22:00:31 +02:00
Felix Bartels
a7408b73e0
Do not remove dh*.pem as they do not exist at this point in time
...
Signed-off-by: Felix Bartels <felix@host-consultants.de>
2019-08-12 19:31:24 +02:00
Erik Wramner
f5dac6e71c
Disable SMTPUTF8 as Dovecot can't handle it
2019-08-11 17:14:00 +02:00