Commit graph

61 commits

Author SHA1 Message Date
Bojan Čekrlić fab1b33b48 Fix for #83: Add the possibility to mount files from secret 2021-08-22 18:07:45 +02:00
Boky ddc147f734
Fix: Fix missing word in README.md
...apparently I forgot a key word.
2021-06-21 19:05:37 +02:00
Bojan Čekrlić aed5624d36 Upd: Fix documentation for recreateOnRedeploy. 2021-06-04 17:33:09 +02:00
Koen 9a444d495f
Need to set LoadbalancerIP in Service specification. Patch to copy all specs over from Values files. (#72)
* copy other specs over

I want to copy over loadBalancerIP to grab a predefined static ip

* removed hardcoded LoadbalancerIP

* Set theme jekyll-theme-slate

* update README

* test service specs are copied over

* undo config changes

* remove config file
2021-06-04 15:52:49 +02:00
msvechla 02b1caa6e5
add SASL_RELAYHOST to overwrite RELATHOST in sasl_passwd file on demand (#77) 2021-06-04 15:52:19 +02:00
jaazmyn e0f7636a1c
Add option to have multiple containers (#79) 2021-06-04 15:50:02 +02:00
Bojan Čekrlić a695d05a7b Fix: Depricate RELAYHOST_TLS_LEVEL with Postfix equivivalent 2021-05-31 09:01:53 +02:00
Bojan Čekrlić b3e2e8daeb Fix: Remove linux/s390x build from Alpine
Alpine doesn't seem to have rsyslog compiled for linux/s390x and
will therefore fail the build.
2021-05-29 17:22:29 +02:00
jaazmyn 069195a125
Add option to use a specific nodePort (#70)
* Add option to use a specific nodePort

* Update README on option to specify a nodePort
2021-05-29 17:09:21 +02:00
Bojan Čekrlić 4775796967 Fix: Update documentation on how secrets can be passed to the pod 2021-05-29 09:14:19 +02:00
Bojan Čekrlić 5713ef4b37 Upd: Fix table formatting 2021-05-29 09:04:05 +02:00
Boky 662fe74f6b
Fix typo 2021-05-29 08:31:02 +02:00
Boky 7ecc6d0659
Add info about supported architectures. 2021-05-29 08:30:27 +02:00
Bojan Čekrlić 32566c3062 Upd: Add link to ArtifactHub 2021-03-19 08:53:07 +01:00
Bojan Čekrlić 09d0e4e7c2 Merge branch 'master' of github.com:bokysan/docker-postfix into master 2021-02-25 10:35:20 +01:00
Bojan Čekrlić 69ae0fe07a Upd: Update documentation 2021-02-25 10:35:02 +01:00
Clément Garrigou 9f193a54a8
Update README.md (#61)
Fix configuration of POSTFIX_myhostname
2021-02-25 08:13:08 +01:00
Bojan Čekrlić e91a61cccf Upd: Improve documentation for passwords (#56) 2021-02-24 16:15:00 +01:00
Bojan Čekrlić 7f95d666c3 Upd: Make it explicit that password can be set via file (#56) 2021-02-24 16:03:48 +01:00
Bertrand Croq 8354e6c5f1
Add persistence.existingClaim (#57)
This commit enables the user to provide an existing volume claim instead of having the image create a new one automatically.
2021-02-08 15:44:23 +01:00
Bojan Čekrlić 53b16f9b2c Update documentation
Fixed a few typos and some grammatical errors.
2021-02-07 22:26:15 +01:00
Boky 38ec1fad06
Add other similar projects to the list 2020-12-16 12:48:29 +01:00
Boky c1985b17c1
Badges galore!
Add a few badges to README.md. Because everybody likes badges.
2020-11-19 08:28:28 +01:00
Boky 8e240d8b57
Add Docker stars and pulls to README.md 2020-11-18 20:36:23 +01:00
Bojan Čekrlić 7d2188114b Disable xoauth2 integration testst
While these tests are neccessary, they cannot be completed
immutably. They rely in access and refresh token from Google
and these expire -- we would need to devise a smart way of
getting them every time before the tests are run.
2020-11-07 08:57:58 +01:00
Ivan Martinez-Ortiz 16771d45eb
Add XOAuth2 support for GMail (#42)
* Add XOAuth2 support for GMail

* Attempt to support integration tests
2020-11-06 10:52:17 +01:00
Bojan Čekrlić fdcab589d8 Updated documentation for Helm
Added info on how to deploy `docker-postfix` with Helm.
2020-10-25 19:11:58 +01:00
Bojan Čekrlić cf22956bf7 Add info on using the Postfix with Amazon's SES 2020-10-24 21:44:15 +02:00
Bojan Čekrlić 411cc47c96 Updated documentation 2020-10-24 21:27:00 +02:00
Bojan Čekrlić dae0d6e3db Fix documentation
Use preferred symbol for enumerations (i.e.. `*` instead of `-`).
2020-10-24 21:26:05 +02:00
Bojan Čekrlić 6b62ad360e Updated documentation 2020-10-24 21:25:29 +02:00
Boky 9124555f2b
Fix hostname variable change in README.md
Apparently, `README.md` still referenced the old `HOSTNAME` variable.

This should fix the issue.
2020-08-20 08:45:29 +02:00
Boky 4031e176be
Fix typo in README.md 2020-08-20 08:43:11 +02:00
Antoine GC aa6d2dcc45
Fix a wrongly named variable in README.md (#32)
Fix wrongly named postfix variable (`POSTFIX_hostname` -> `POSTFIX_myhostname`)
2020-08-20 08:21:53 +02:00
Boky 4d12408b5d
Update README.md 2020-07-29 11:36:48 +02:00
Boky bf9b001b06
Add license scan report and status (#28)
Signed off by: fossabot <badges@fossa.com>

Co-authored-by: fossabot <badges@fossa.io>
2020-07-29 11:36:03 +02:00
Bojan Čekrlić cfd1a13676 Deprecate some common properties and add auto-generation of DKIM keys 2020-07-03 07:08:27 +02:00
Bojan Čekrlić ff2d080279 Add the option to log to rsyslog as plain or JSON and restructure tests
- It's now possible to choose the logging type - either 'plain' or
  'json'
- The code is ready to support multiple integration tests (with
  different configurations)
- `OPENDKIM_` and `POSTFIX_` variables are handled properly and recorded
  in the corresponding files. (This had a downfall that `bash` now needs
  to be installed, so we can probably simplify some of the shell
  scripts.)
2020-07-01 13:50:08 +02:00
Bojan Čekrlić 9b1902c047 Larger refactoring of the codebase + DKIM_SELECTOR
Summary
^^^^^^^

This commit refactors the code base to be more manageble and
prepares the groundwork for tests.

Refactoring
^^^^^^^^^^^

Files are now moved to subdirectories, all for the sole purpose of
easier management. Tests live in their own folders, as well as configs
and other files.

Test framework
^^^^^^^^^^^^^^

Two new important scripts/directories are available:
- `unit-tests.sh` / `/unit-test` which executes unit tests across shell
  scripts, and
- `integration-test.sh` / `integration-tests`, which spins up the
  container and tries to send the email.

Both tests use the [BATS](https://github.com/sstephenson/bats) framework
for testing. To create a new test, simply drop a `.bats` file into a
corresponding directory.

Functions have been extracted into `common-run.sh`, to be able to test
them independently.

DKIM_SELECTOR
^^^^^^^^^^^^^

It is now possible to specify a DKIM selector to use (instead of
the default "mail"). See `README.md` for more details.

JSON logging
^^^^^^^^^^^^

WIP: rsyslog will now output JSON logs. This is especially important
if you plan on deploying the image into Kubernetes, as [Prometheus](https://prometheus.io/)
can handle logs in JSON much easier.

TODO: Make this an optional feature, to not confuse existing users.
2020-06-29 19:03:24 +02:00
Boky ed09d86c8d
Update documentation on port 25 blocking
Expand the `README.md` a bit to better explain what's needed to get the server up and running.

It seems that a lot of users are trying to use this image and running into issues. This should help out a bit to get them started.
2020-03-16 08:34:21 +01:00
Bojan Čekrlić 1caf4104ba Move from Docker Hub builds to GitHub Actions
This allows us to create do a multi-arch build, resulting in
an image which is useful even on low-end IoT devices.
2020-01-31 21:07:42 +01:00
Boky 0f4bd837d0
Additional documentation about ALLOW_EMPTY_SENDER_DOMAINS
Updated `README.md` to make it more clear how to use `ALLOW_EMPTY_SENDER_DOMAINS`.
2019-10-20 18:38:31 +02:00
Andrés Álvarez 074125ffe1 Allow setting empty ALLOWED_SENDER_DOMAINS (#17)
This PR allows setting an empty `ALLOWED_SENDER_DOMAINS` variable. The default behaviour remains the same (empty `ALLOWED_SENDER_DOMAINS` will throw an error), but it is posible to override this behaviour via a new variable `ALLOW_EMPTY_SENDER_DOMAINS`.
2019-10-20 18:33:08 +02:00
Bojan Čekrlić f4448d6d9e Rename HEADER_CHECKS to SMTP_HEADER_CHECKS 2019-10-03 09:32:39 +02:00
malware-watch a9a09b0085 Added HEADER_CHECKS configuration option (#15)
* Added HEADER_CHECKS  configuration option
2019-10-03 09:01:53 +02:00
Bojan Čekrlić 456e00e8b4 DomainKeys fixes
This fix makes it more explicit that "mail" segment must be used
with this DKIM and adds a few more code to the DKIM part to make
it more resillient and useful.
2019-03-06 13:07:26 +01:00
Bojan Čekrlić 38d7627d96 OpenDKIM keys have been moved to the keys folder
This is to make it easier to integrate with Kubernetes to be able
to bind a `ConfigMap` to the said folder.
2019-02-19 11:42:16 +01:00
Bojan Čekrlić afccfdb3fc Fixed typo 2019-02-19 11:02:51 +01:00
Bojan Čekrlić 928e5d64c7 Initial support for DKIM and testing
This commit brings two important features:
- **DKIM support** It's now possible to configure this postfix
  image to sign messages using DKIM by simply generating the keys
  and providing them in the approprate folder. This should bring
  us one step closer to directly sending out emails without relying
  on a 3rd-party proxy.
- **test support** A nice and handy script, conviniently called
  `test.sh` has been provided, builds the image, spins it up and
  tries to send out an email. You'll need `docker-compose` to run
  it, though.
2019-02-19 10:49:55 +01:00
Bojan Čekrlić d7b6bdc32c Added the possibility to masquarade domains
This patch was "borrowed" from a fork of this project by RescueTime
and seemed like a good feature to include in the project.
2019-02-19 08:59:02 +01:00