mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2024-01-19 02:48:50 +00:00
Merge pull request #1260 from martin-schulze-vireso/feature/improve_error_output
Better diagnostics for setup timeout
This commit is contained in:
commit
2380634d54
8
test/config/dovecot-lmtp/dh.pem
Normal file
8
test/config/dovecot-lmtp/dh.pem
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
-----BEGIN DH PARAMETERS-----
|
||||||
|
MIIBCAKCAQEAlYgX/PXMu60WVkgKXOqnT562wd2F3l1WDwyn7DLWDqb9rCI6SAB8
|
||||||
|
8uDkImAeoRFQycL77fXBqO9KKVk5x569Qjltacbw4/taOhWPAq/+6Wf5bZsUEp5g
|
||||||
|
wD+hLvgYn/0pdGkjiAJ+jlRBxarF9lJac4QPztqw3qJPtVdIKbmo58hoxERIthD2
|
||||||
|
f/ZkGjaZXzOIvD8Ai0NQ+H4k5DK5dLlFI78XbrsH161t4Jcspq+v5VUdUyUMAvti
|
||||||
|
4peK0RgHw47h90kkee+qIf5F+WWSw28tjkbILWx2ld/bN59eZj4itb3UUw/OZRpC
|
||||||
|
Y0pOBOvl1wp5PS+pUJAMsg6PR50yPNYREwIBAg==
|
||||||
|
-----END DH PARAMETERS-----
|
8
test/config/relay-hosts/dhparams.pem
Normal file
8
test/config/relay-hosts/dhparams.pem
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
-----BEGIN DH PARAMETERS-----
|
||||||
|
MIIBCAKCAQEAlYgX/PXMu60WVkgKXOqnT562wd2F3l1WDwyn7DLWDqb9rCI6SAB8
|
||||||
|
8uDkImAeoRFQycL77fXBqO9KKVk5x569Qjltacbw4/taOhWPAq/+6Wf5bZsUEp5g
|
||||||
|
wD+hLvgYn/0pdGkjiAJ+jlRBxarF9lJac4QPztqw3qJPtVdIKbmo58hoxERIthD2
|
||||||
|
f/ZkGjaZXzOIvD8Ai0NQ+H4k5DK5dLlFI78XbrsH161t4Jcspq+v5VUdUyUMAvti
|
||||||
|
4peK0RgHw47h90kkee+qIf5F+WWSw28tjkbILWx2ld/bN59eZj4itb3UUw/OZRpC
|
||||||
|
Y0pOBOvl1wp5PS+pUJAMsg6PR50yPNYREwIBAg==
|
||||||
|
-----END DH PARAMETERS-----
|
|
@ -5,6 +5,7 @@ NAME=tvial/docker-mailserver:testing
|
||||||
|
|
||||||
# default timeout is 120 seconds
|
# default timeout is 120 seconds
|
||||||
TEST_TIMEOUT_IN_SECONDS=${TEST_TIMEOUT_IN_SECONDS-120}
|
TEST_TIMEOUT_IN_SECONDS=${TEST_TIMEOUT_IN_SECONDS-120}
|
||||||
|
NUMBER_OF_LOG_LINES=${NUMBER_OF_LOG_LINES-10}
|
||||||
|
|
||||||
function repeat_until_success_or_timeout {
|
function repeat_until_success_or_timeout {
|
||||||
if ! [[ "$1" =~ ^[0-9]+$ ]]; then
|
if ! [[ "$1" =~ ^[0-9]+$ ]]; then
|
||||||
|
@ -31,16 +32,25 @@ function wait_for_smtp_port_in_container() {
|
||||||
|
|
||||||
# @param $1 name of the postfix container
|
# @param $1 name of the postfix container
|
||||||
function wait_for_finished_setup_in_container() {
|
function wait_for_finished_setup_in_container() {
|
||||||
repeat_until_success_or_timeout $TEST_TIMEOUT_IN_SECONDS sh -c "docker logs $1 | grep 'is up and running'"
|
local status=0
|
||||||
|
repeat_until_success_or_timeout $TEST_TIMEOUT_IN_SECONDS sh -c "docker logs $1 | grep 'is up and running'" || status=1
|
||||||
|
if [[ $status -eq 1 ]]; then
|
||||||
|
echo "Last $NUMBER_OF_LOG_LINES lines of container \`$1\`'s log"
|
||||||
|
docker logs $1 | tail -n $NUMBER_OF_LOG_LINES
|
||||||
|
fi
|
||||||
|
return $status
|
||||||
}
|
}
|
||||||
|
|
||||||
SETUP_FILE_MARKER="$BATS_TMPDIR/`basename \"$BATS_TEST_FILENAME\".setup_file`"
|
SETUP_FILE_MARKER="$BATS_TMPDIR/`basename \"$BATS_TEST_FILENAME\"`.setup_file"
|
||||||
|
|
||||||
# use in setup() in conjunction with a `@test "first" {}` to trigger setup_file reliably
|
# use in setup() in conjunction with a `@test "first" {}` to trigger setup_file reliably
|
||||||
function run_setup_file_if_necessary() {
|
function run_setup_file_if_necessary() {
|
||||||
if [ "$BATS_TEST_NAME" == 'test_first' ]; then
|
if [ "$BATS_TEST_NAME" == 'test_first' ]; then
|
||||||
rm -f "$SETUP_FILE_MARKE"
|
# prevent old markers from marking success or get an error if we cannot remove due to permissions
|
||||||
|
rm -f "$SETUP_FILE_MARKER"
|
||||||
|
|
||||||
setup_file
|
setup_file
|
||||||
|
|
||||||
touch "$SETUP_FILE_MARKER"
|
touch "$SETUP_FILE_MARKER"
|
||||||
else
|
else
|
||||||
if [ ! -f "$SETUP_FILE_MARKER" ]; then
|
if [ ! -f "$SETUP_FILE_MARKER" ]; then
|
||||||
|
@ -53,7 +63,8 @@ function run_setup_file_if_necessary() {
|
||||||
# use in teardown() in conjunction with a `@test "last" {}` to trigger teardown_file reliably
|
# use in teardown() in conjunction with a `@test "last" {}` to trigger teardown_file reliably
|
||||||
function run_teardown_file_if_necessary() {
|
function run_teardown_file_if_necessary() {
|
||||||
if [ "$BATS_TEST_NAME" == 'test_last' ]; then
|
if [ "$BATS_TEST_NAME" == 'test_last' ]; then
|
||||||
rm -f "$SETUP_FILE_MARKE"
|
# cleanup setup file marker
|
||||||
|
rm -f "$SETUP_FILE_MARKER"
|
||||||
teardown_file
|
teardown_file
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue