Georg Lauterbach
2c65b0c260
use wait_for_smtp function instead of sleep
2020-11-06 14:11:42 +01:00
Georg Lauterbach
ed7106b04d
housekeeping
2020-11-06 14:04:23 +01:00
Georg Lauterbach
9ce719213b
first refactoring fr *.bats according to shellcheck
2020-11-05 19:15:28 +01:00
Georg Lauterbach
46998dd816
preparation to include *.bats into shellcheck
2020-11-05 13:47:52 +01:00
Georg Lauterbach
5365e7f0f8
fixes #1677
2020-11-05 11:41:18 +01:00
Martin Schulze
6a9e5c0b62
Fix parallel development error: Use correct filename
2020-10-28 14:39:42 +01:00
Georg Lauterbach
f0105f6d47
Merge pull request #1613 from martin-schulze-vireso/feature/extract_even_more_tests
2020-10-28 11:16:15 +01:00
Georg Lauterbach
da8171388f
Complete Refactor for target/bin
( #1654 )
...
* documentation and script updates trying to fix #1647
* preparations for refactoring target/bin/
* complete refactor for target/bin/
* changing script output slightly
* outsourcing functions in `bin-helper.sh`
* re-wrote linting to allow for proper shellcheck -x execution
* show explanation for shellcheck ignore
* adding some more information
2020-10-21 18:16:32 +02:00
Martin Schulze
0015c62303
Fix linter issue
2020-10-20 15:02:31 +02:00
Martin Schulze
5cce70b3a9
Fix timing dependent failures
2020-10-20 14:14:04 +02:00
Martin Schulze
2de5c52b83
Fix nameclash in config names
2020-10-20 12:05:40 +02:00
Martin Schulze
0453240098
Catch errors on config duplication command
2020-10-20 09:33:47 +02:00
Martin Schulze
5884f866d3
Fix duplicate configuration name clashes
2020-10-20 09:33:14 +02:00
Martin Schulze
1ac5245f04
Add missing file
2020-10-20 01:05:01 +02:00
Martin Schulze
7bdac2a910
Add tests for remaining test_helper functions
2020-10-20 00:50:19 +02:00
Martin Schulze
9471ce7346
Fix errors due to trying to send emails too early
...
when clamav has not fully come up yet
2020-10-19 23:34:39 +02:00
Martin Schulze
7ae4a73d3b
Fix tests failing when emails are not yet delivered
2020-10-19 23:33:54 +02:00
Georg Lauterbach
b948e01d39
re-trigger
...
wget through exception in the last test
2020-10-19 15:23:42 +02:00
Georg Lauterbach
3720dbafc0
removed local VAR=$(...)
assignments
2020-10-19 15:19:34 +02:00
Georg Lauterbach
ab1da1e3f3
small changes in common.bash
2020-10-19 14:10:32 +02:00
Georg Lauterbach
3f5c518950
mostly pwd
replacements and introduction of local keywords
2020-10-19 13:13:42 +02:00
Georg Lauterbach
0d219800ff
replacing all occurences of private_config
with the uppercase variable
2020-10-19 12:15:44 +02:00
Georg Lauterbach
a3acedaf19
fixing NAME
2020-10-19 12:12:13 +02:00
Georg Lauterbach
0da7ee0c1d
{} and uppercase
2020-10-18 15:44:01 +02:00
Martin Schulze
5030e8278c
Add tests for test/common.bash
2020-10-18 03:11:10 +02:00
Martin Schulze
7fb13c18cd
Reinstane required (empty) folder
...
this is needed to make test
"checking accounts: user3 should have been added to /tmp/docker-mailserver/postfix-accounts.cf even when that file does not exist"
pass
2020-10-18 02:25:03 +02:00
Martin Schulze
88fbe0dbd3
Fix shellcheck errors on tests.bats
2020-10-18 02:24:26 +02:00
Martin Schulze
e2bca5f850
Always use ${}
2020-10-18 02:08:11 +02:00
Martin Schulze
f47f85598d
Fix trailing slash in path
2020-10-17 23:24:39 +02:00
Martin Schulze
13963747b8
Fix missing newline at the end of file
2020-10-17 23:24:23 +02:00
Martin Schulze
80bfc422a2
Reduce code duplication
2020-10-17 02:04:33 +02:00
Martin Schulze
7530aea9f5
Don't use an extra moint for subdir
2020-10-17 02:04:33 +02:00
Martin Schulze
96b3fd726a
Fix wait_for_service not working/hanging
2020-10-17 02:04:33 +02:00
Martin Schulze
c6c6fb708c
Avoid running tests while the services restart due to changes
2020-10-17 02:04:33 +02:00
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