Commit Graph

163 Commits

Author SHA1 Message Date
Thomas VIAL 69d3bac45e Add bats asserts (#463)
* Added `bats-assert` for more detailed error, very useful locally and on Travis
* Moved `bats` to git submodule

Example:

```
not ok 52 checking opendkim: generator creates keys, tables and TrustedHosts
# (from function `assert_output' in file test/test_helper/bats-assert/src/assert.bash, line 239,
#  in test file test/tests.bats, line 368)
#   `assert_output 2' failed
# 
# -- output differs --
# expected : 2
# actual   : 4
# --
# 
```
2017-01-10 14:15:41 +01:00
alinmear a7670ac5c1 Add #394: Postfix Virtual Transport (#461)
* Add #394: Postfix Virtual Transport
This makes it possible to specify a lmtp config file, by providing
POSTFIX_DAGENT.

Update - Readme with informations about #394

    * Add Variable ENABLE_POSTFIX_VIRTUAL_TRANSPORT (task)
    * Add Variable POSTFIX_DAGENT (section)

Added Unit tests for virtual transport

* Fix syntax error in test/tests.bats

* Fix Unit Test
2017-01-09 23:52:36 +01:00
Kai Ren 5020ab0a0f Convert `$(hostname)` usage to `$(hostname -f)` (#459)
* Convert `$(hostname)` usage to `$(hostname -f)`
2017-01-09 23:49:46 +01:00
Wolfgang Ocker 9095ba3803 Fix #443 - RIMAP support (#448)
* Add unit tests for #443 (rimap auth)
* Fix #443 - configure rimap for saslauth
* Fix #443 - reuse smtp-auth-login.txt when testing rimap auth
2017-01-03 10:55:03 +01:00
Thomas VIAL df752280e0 BREAKING CHANGES: (#432)
* Removed DISABLE_AMAVIS
* Renamed DISABLE_* to ENABLE_* with 0 as default value. (this must be explicit)
* Added missing tests for ENABLE_*
* Improved readme and docker-compose example

Should fix #256 and #386
2016-12-25 22:54:37 +01:00
Thomas VIAL 63cf0f9965 Disables clamav config in amavis when DISABLE_CLAMAV=1. Fixes #378 (#431) 2016-12-25 15:41:02 +01:00
Thomas VIAL ccad91c23d Improved start-mailserver output (#420)
* Improved start-mailserver output
* Fixed rework to make tests work again
* Improved output and updated SSL certs for LE
2016-12-23 23:56:39 +01:00
Dennis Stumm 3ec1fb202d Add ldap auth for postfix and dovecot (#352)
* Add ldap support for postfix and dovecot

* Add SASLAUTHD

* Update README.md

* Add necessary packages to dockerfile

* Add config files for ldap

* Add tests for ldap auth
2016-10-30 14:11:36 +01:00
Thomas VIAL 08dc28e304 Fixes #346 and added a virusmail wiper triggered by a CRON (#347)
* Fixes #346 and added a virusmail wiper triggered by a CRON

* Renamed env to something more explicit VIRUSMAILS_DELETE_DELAY
2016-10-08 19:02:47 +02:00
Dennis Stumm 986dc97f1a Fix rm erros in tests (#342) 2016-09-30 23:37:09 +02:00
Josef Friedrich f42a0c1935 Improve 'make clean' (#323)
Remove also all temporary test files. A new test can be started without
reclone the repository.
2016-09-12 17:49:46 +02:00
Kai Ren d9e1c0ad61 remove unnecessary spamd process (#312) 2016-09-06 13:06:25 +02:00
Morgan Kesler ee0c4244cc Add the option of manually specifying paths to SSL certificates (#296)
* Add the option of manually specifying paths to SSL certificates

* Adding tests for manual SSL changes
2016-08-31 15:15:39 +02:00
Josef Friedrich e7de8b9245 Implement fetchmail (#260) (#271)
To retrieve emails from external mail accounts.
2016-08-21 22:13:13 +02:00
Zehir 8b289f6717 Adding the PERMIT_DOCKER option (#270)
* Adding the PERMIT_DOCKER option

See README.md for more informations

* Adding some test for PERMIT_DOCKER option

* Fix test cases

* Opendkim and Openmarc configuration

Fix docker network range
Adding opendkim and openmarc configuration

* Adding some options for tests

* Update log message

* Update tests
2016-08-21 22:10:13 +02:00
Kyle Ondy 4872d0e777 selective service disable (#250)
* Allow disabling amavis service

Setting the `DISABLE_AMAVIS=1` env var will skip the starting of the
amavis process.

* Enable option to not run spamassassin

Setting the `DISABLE_SPAMASSASSIN=1` env var will start this container
without spamassain.

* Allow starting of the container without clamav

Setting the `DISABLE_CLAMAV=1` env var will start this container without
starting clamav.
2016-08-04 21:04:26 +02:00
Thomas VIAL c813e6a4b3
Added test on catchall 2016-07-23 23:42:18 +02:00
Thomas VIAL 0f7e7bb693
Fixed #230 adding postifx configuration. Also added tests. 2016-07-23 21:01:01 +02:00
Thomas VIAL 911d6643b0
Fixed #237 by fixing format 2016-07-23 19:54:10 +02:00
shim_ 63fd58a7cb switch to SHA512 2016-06-14 13:00:51 +02:00
Thorsten von Eicken 4ca39f9144 consolidate mail state to fix #191 2016-05-23 23:21:18 -07:00
Thorsten von Eicken cf6d9a4409 try to fix tests 2016-05-23 21:43:08 -07:00
André Stein 9f63fa2ef4 Rename environment variable ENABLE_MANAGE_SIEVE to ENABLE_MANAGESIEVE. 2016-04-29 17:09:48 +02:00
André Stein 69b66d55bc Configure dovecot's managesieve plugin when the environment variable
ENABLE_MANAGE_SIEVE has been set.

Adapted README and updated tests.

The functionality has successfully been tested using the Sieve
Thunderbird plugin.
2016-04-29 15:24:10 +02:00
André Stein 2f9f6b1002 Implement basic sieve support using Dovecot.
The dovecot-sieve plugin is installed and configured to apply sieve
as soon as a .dovecot.sieve file is encountered in the virtual user's
home directory (that is /var/mail/${domain}/${username}/.dovecot.sieve).

Transport has been changed in the postfix configuration to use
Dovecot LDA (see http://wiki.dovecot.org/LDA/Postfix) to actually
enable sieve filtering.

Tests have been added.
2016-04-28 08:57:50 +02:00
Thomas VIAL 9fbe20f3d0
Added tests on letsencrypt - #109 2016-04-26 19:39:08 +02:00
Thomas VIAL 9415c099cc
Fixed #159: postfix-accounts.cf now generated with script + fixed line endings using sed in start-mailserver.sh 2016-04-25 16:00:39 +02:00
Thomas VIAL b9e1903083
- Fixed #152
- Moved Fail2ban to 0.9.x because OS version was buggy
- Improved documentation
- Reduce image size
2016-04-23 12:09:28 +02:00
Thomas VIAL bc7b42e4bc Fixed tests for #143 2016-04-21 12:15:34 +02:00
Thomas VIAL b58d0d33d6 Fixing #143 2016-04-21 01:08:14 +02:00
Thomas VIAL 4f611eec1d Fixed #143 adding a OpenDKIM keys generator and its integration tests 2016-04-20 23:01:32 +02:00
Thomas VIAL 72d7207690 Fixing last tests on fail2ban regarding #102 and docker-mailserver v2 2016-04-17 22:59:35 +02:00
Thomas VIAL 2adc559a43 Fixed part of tests for #109 2016-04-15 21:02:41 +02:00
Kyle Ondy 6be463299a
`make build` builds with cache
As `make build-no-cache` was added, it seems appropriate that `make
build` should build with the cache, so I have removed the `--no-cache`
option.
2016-04-15 09:54:23 -04:00
Kyle Ondy 0674196ef9
Remove trailing whitespace 2016-04-15 09:54:07 -04:00
Thomas VIAL bfa8a41712 Added a build using cache for testing purpose 2016-04-13 21:43:25 +02:00
Thomas VIAL 1db622cab9 Added dynamic tag name from the current branch 2016-04-12 09:48:12 +02:00
Thomas VIAL fc2e2ae591 Added folder target, simplified user configuration, few renames... Need to work on tests.... 2016-04-12 00:04:33 +02:00
angus 56b8b12966 Modified the name of the image being created by adding the version: dovecot. 2016-04-09 00:50:48 +02:00
angus 2e33fcaf42 Merge branch 'feat_separate-logs' into feat_dovecot_separate-logs
* Dovecot has been added in place of courier and cyrus sasl
* Email services now logs to /var/log/mail/
2016-04-08 00:42:31 +02:00
angus ee0d0853dd Dovecot based version of the mailserver.
Courier and Cyrus Sasl have been removed and substituted with Dovecot which now
handle authentication for Postfix, Imap and Pop3, with support for SSL.
This allow the use of several encryption schemes for the password as well as a
single user db.
OpenDKIM keys can now be provided at the startup and will be used instead of
generating new ones (so that you don't have to change your DNS configuration).

This version builds correctly on Docker but no integration tests have been
reworked to accommodate Dovecot instead of Courier and Cyrus Sasl. As such
at present no automatic tests can be executed.
2016-04-07 14:42:07 +02:00
angus 25ac07cae7 Introduce the env variable ENABLE_FAIL2BAN.
Modified the Makefile so that the containers startup with a short delay
between each other.
Corrected a small bug in start-mailserver.sh that prevented the correct
configuration of the jails.
2016-04-06 19:29:39 +02:00
angus 5219aab9e8 Add ENABLE_FAIL2BAN environment variable to enable fail2ban service (it's not enabled by default, now).
* Changed/updated Makefile and integration tests
* Changed some grep expressions in the fail2ban tests
2016-03-31 12:33:47 +02:00
Chris54721 53959b8eae Add tests for SASL_PASSWD 2016-03-18 20:12:18 +01:00
Chris54721 3cabf10520 Add tests for main.cf overrides 2016-03-18 20:07:58 +01:00
Marko Jung 2769269bd6 new SMTP_ONLY environment option to disable all courier daemons 2016-02-29 23:52:10 +01:00
Thomas VIAL 22b79b82f8 Moved from assert.sh to bats 2016-02-25 00:11:48 +01:00
Thomas VIAL 59a6649f0e Fixes #79 and add spamassassin configuration variables (see README.md) 2016-02-18 22:11:24 +01:00
Thomas VIAL a13cbcb9aa Improved documentation 2016-02-04 08:51:07 +01:00
Thomas VIAL 97a495ae1d Added tests and simplified some of them 2016-02-03 22:45:11 +01:00
Christian Musa 9a80374bc3 Add pop3 support 2016-01-24 02:41:25 -03:00
Thomas VIAL 8eeda6f2a7 Fixed tests 2016-01-22 18:47:43 +01:00
Thomas VIAL f07a9ba852 Fix for #44 and #47, also enabling plain and login mechs. 2016-01-12 01:02:47 +01:00
Thomas VIAL 465d5de166 Testing Travis config with nc commands 2015-10-19 19:37:49 +02:00
Thomas VIAL a43dab3e2e Removed comments 2015-10-19 18:37:06 +02:00
Thomas VIAL 3949f54675 Increased sleep time 2015-10-19 18:29:33 +02:00
Thomas VIAL 0959868233 Removed for loop from Makefile 2015-10-19 18:01:23 +02:00
Thomas VIAL e4b9dffb5d Testing oneliner on for loop 2015-10-19 17:25:47 +02:00
Thomas VIAL 03b8614cab Testing with real emails 2015-10-19 15:55:36 +02:00
Thomas VIAL 7a8dd41c69 Added comment 2015-10-18 22:08:21 +02:00
Thomas VIAL c6ad590457 Use TRAVIS env and updated README with Travis build status 2015-10-18 21:38:22 +02:00
Thomas VIAL 678329276e Added new line when needed and fixed a test 2015-10-18 21:30:53 +02:00
Thomas VIAL 9bcced6f29 Added integration testing - #28 2015-10-18 21:02:46 +02:00