1158: Use nginx for kubernetes ingress r=kaiyou a=micw
## What type of PR?
enhancement
## What does this PR do?
Currently, kubernetes uses a complex ingress setting which is not portable across different ingress controllers. This PR simplifies the ingress and delegates everythins special to Mailu to the front container,
### Related issue(s)
- closes#1121
- closes#1117
- closes#1021
- closes#1045
## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog]
Co-authored-by: Michael Wyraz <michael@wyraz.de>
1144: Add proper release notes for 1.7 r=mergify[bot] a=kaiyou
## What type of PR?
Documentation
## What does this PR do?
When first writing the release notes, I forgot to include a proper release notes section in the docs.
### Related issue(s)
None
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.
Co-authored-by: kaiyou <pierre@jaury.eu>
I've noticed some styling / flow errors on the FAQ page on mailu.io.
This was due to short underlining.
Spynx was complaining about this at build time.
883: Admin create user enhancement r=mergify[bot] a=cr1st1p
## What type of PR?
Enhancement
## What does this PR do?
It allows the admin docker image to also create the admin user.
The idea is that in my kubernetes setup, I do not want to manually do anything, as such, I need a way for the admin user to also be created automatically without me getting inside the pod.
So I had to change the manage.py function that creates the user to allow different 'modes' (me, I'll be using 'ifmissing') and also start.py to call that functionality if appropriate environment variables are present.
So now, in my Deployment, I add 3 more environment variables and I get the admin user created, IF not already present.
### Related issue(s)
none?
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: cristi <cristi.posoiu@gmail.com>
Co-authored-by: cr1st1p <cristi.posoiu@gmail.com>
Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>
1078: expose pop3 port, remove imap-ssl from dovecot in kubernetes manifest r=mergify[bot] a=sbias
## What type of PR?
bug-fix
## What does this PR do?
Exposes provided pop3 service in service definition to get useable by front
Co-authored-by: sbias <sb@liztv.net>
- Thus, we write to /data/mailu/certs, since LE uses the same location
- The dumper created cert.pem and key.pem
- Mount /data/mailu/certs to certs, where nginx picks them up
1030: Update user_external example for nextcloud r=mergify[bot] a=kesselb
## What type of PR?
documentation
## What does this PR do?
Update the user_external example for Nextcloud due an upstream change. PHP will remove the imap extension. Newer user_external releases requires a different configuration for imap.
### Related issue(s)
- https://github.com/nextcloud/user_external/issues/52
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.
Co-authored-by: Daniel Kesselberg <mail@danielkesselberg.de>
1029: Corrected 'adminitration' to 'administration' r=mergify[bot] a=warsix4
## What type of PR?
documentation/bug-fix
## What does this PR do?
'adminitration' has been corrected to 'administration'
### Related issue(s)
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.
Co-authored-by: Cody Warmbo <github@warmbo.com>
1015: Merge DNS hints, and hostname/domain ordering hints. r=Nebukadneza a=toxik-io
## Enhancement - Hints in setup, references in setup & DNS docs
Unrelated: This PR makes changes to the Flask setup utilities to suggest ordering the `HOSTNAMES`
entry so that the first entry is the admin panel's domain (at least in my experience that's what fixed my
issues)
It also makes changes to the documentation, referencing that more than the usual DNS
entries need to be set (and the admin panel used) if they've enabled DMARC/SPF/DKIM.
### Related issue(s)
- My original issue #1002
## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.
## Assistance
I'm unsure if the hints for HOSTNAME ordering are simply because of how the config is gulped in
by the current tooling, or if it's a bug that the frontend only accepts connections from the first host...
I also don't know what commands in the CLI would replicate the steps taken on the admin dashboard.
Further, I don't know what you'd put in the changelog.
Co-authored-by: toxik-io <thetoxicarcade@gmail.com>
1010: Move the localization effort to Weblate r=mergify[bot] a=kaiyou
## What type of PR?
documentation
## What does this PR do?
This PR updates documentation for us to move the localization effort outside of POEditor. POEditor had archived our project and it was linked to my account. I suggest we move to a Weblate instance (hosted at TeDomum for the part I setup).
### Related issue(s)
- closes#916
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/guide.html#changelog) entry file.
Co-authored-by: kaiyou <pierre@jaury.eu>
922: Add FAQ about clients on port 25 generating non-helpful errors r=mergify[bot] a=Nebukadneza
## What type of PR?
documentation
## Prerequistes
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: Dario Ernst <dario@kanojo.de>
Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
936: Implement towncrier for changelog updates r=mergify[bot] a=ionutfilip
## What type of PR?
Feature
## What does this PR do?
Implements towncrier to create changelog entries
### Related issue(s)
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [ ] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
886: Ipv6 support r=mergify[bot] a=muhlemmer
## What type of PR?
(Feature, enhancement, bug-fix, documentation) -> A bit of everything
## What does this PR do?
Document how to use ipv6nat. This, however triggers some kind of flaky behavior with the Docker DNS resolver, resulting in lookup failures between containers. So all resolving needs to be done during container startup/configuration.
In order not to pollute every single start.py file, we've created a small library called [Mailu/MailuStart](https://github.com/Mailu/MailuStart). As an addition, this library also defines the template generation function, including its logging facility.
Note: `docker-compose.yml` downgrade is necessary, as IPv6 settings are not supported by the Docker Compose file format 3 😞
### Related issue(s)
Supersedes PR #844
- Fixes#827
- Hopefully helps with #829 and #834
## No backport yet
This PR directly imports MailuStart from git. This makes it a bit more simple to implement on the short term an do some testing and probably some future improvements. When everything is proved stable, we will create a proper PyPi package with versioning and consider back porting.
## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.
- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.
Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>
- Enable bors-ng for better merging
- Re-enable mergify with a fixed up syntax, it will now only issue bors commands.
- Pull request build images are now pushed to docker hub
- Automatic backport rule
- Fix build tag for branches with slash (/)
- Only push when master and 1.6 target branch
- Removed code tages to increase readability
- Some extra line-breaks for source readability
- Fix link to new mailu/traefik-certdumper container
- dhparams is no longer stored in /certs
- Use a proper "note" box
- Fix typo in docs/compose/traefik directory name
- Include links to example config files
- Fix toml lexer build warning
This will make network configuration and host based authentication
more robust, across different deployment platforms.
The options `RELAYNETS` and`POD_ADDRESS_RANGE` are kept for compatibility.
However, their usage have become optional.
To facilitate this, the default redirect at / can be disabled, even if
the default remains at redirecting to the webmailer.
The extensions are within the host scope and are read from
$ROOT/overrides/nginx/*.conf.
Allows to use mailu without docker-compose when hostnames are not set up
by docker itself but provided via a separate resolver.
Use case: use mailu using nomad scheduler and consul resolver instead of
docker-compose. Other servers are provided by the DNS resolver that
resolves names like admin.service.consul or webmail.service.consul.
These names needs to be configurable.