45 Commits (d19208d3d108cb0c52bc614f1b844b15d86ab1dc)

Author SHA1 Message Date
İbrahim Akyel f65e2fc469 Feature: Marking "Read" spam mails 2 years ago
Alexander Graf 9bc685c30b removed some more whitespace 3 years ago
Alexander Graf 25cf8b5358 better help formatting 3 years ago
Alexander Graf b63081cb48 display error (not exception) when creating admin
repleace misleading python exception (mailu broken)
with error message stating that the admin user is
already present
3 years ago
Alexander Graf ce9a9ec572 always init Logger first 3 years ago
Alexander Graf dd2e218375 Merge remote-tracking branch 'upstream/master' into import-export 3 years ago
Florent Daigniere 7137ba6ff1 Misc improvements to PASSWORD_SCHEME
- remove PASSWORD_SCHEME altogether
- introduce CREDENTIAL_ROUNDS
- migrate all old hashes to the current format
- auto-detect/enable all hash types that passlib supports
- upgrade passlib to 1.7.4 (see #1706: ldap_salted_sha512 support)
3 years ago
Alexander Graf bde7a2b6c4 moved import logging to schema
- yaml-import is now logged via schema.Logger
- iremoved relative imports - not used in other mailu modules
- removed develepment comments
- added Mailconfig.check method to check for duplicate domain names
- converted .format() to .format_map() where possible
- switched to yaml multiline dump for dkim_key
- converted dkim_key import from regex to string functions
- automatically unhide/unexclude explicitly specified attributes on dump
- use field order when loading to stabilize import
- fail when using 'hash_password' without 'password'
- fixed logging of dkim_key
- fixed pruning and deleting of lists
- modified error messages
- added debug flag and two verbosity levels
3 years ago
Alexander Graf e4c83e162d fixed colorize auto detection 3 years ago
Alexander Graf 10435114ec updated remarks and docs 3 years ago
Alexander Graf 70a1c79f81 handle prune and delete for lists and backrefs 3 years ago
Alexander Graf 8929912dea remove OrderedDict - not necessary in python>=3.7 3 years ago
Alexander Graf 3937986e76 Convert OrderedDict to dict for output 3 years ago
Alexander Graf 68caf50154 new import/export using marshmallow 3 years ago
Alexander Graf 902b398127 next step for import/export yaml & json 3 years ago
Alexander Graf 31a903f959 revived & renamed config-fns. cosmetics.
- revived original config-update function for backwards compability
- renamed config-dump to config-export to be in line with config-import
- converted '*'.format(*) to f-strings
- converted string-concatenation to f-strings
3 years ago
Alexander Graf c24bff1c1b added config_import using marshmallow 3 years ago
Alexander Graf 7413f9b7b4 config_dump now using marshmallow 3 years ago
Alexander Graf 6629aa3ff8 first try at api using flask-restx & marshmallow 3 years ago
Alexander Graf 4c258f5a6b cosmetic changes & make linter happy
renamed single letter variables (m => match)
renamed classmethod arguments to cls (model)
removed shadowing of variables (hash, context)
shortened unneeded lambda functions (id)
converted type ... is to isinstance(...)
removed unneded imports (flask)
3 years ago
Alexander Graf 3064a1dcff removed call to (undefined) cli 3 years ago
Alexander Graf adc9c70c3e added dump option to dump dns data of domains 4 years ago
Alexander Graf 2a5c46c890 Allow to dump only selected sections 4 years ago
Alexander Graf 8e14aa80ee documented options and added help text 4 years ago
Alexander Graf 9d2327b0f1 add space for more human readable indentation
add a newline before main sections
add some spaces to indent
4 years ago
Alexander Graf 190e7a709b renamed config-dump option --verbose to --full 4 years ago
Alexander Graf 5c0efe82cf implemented config_update and config_dump
enhanced data model with to_dict and from_dict methods
added config_dump function to manage command
config_update now uses new data model methods
4 years ago
Dario Ernst 23f21f8b9c Use pyyaml safe_load instead of load
Since load in unsafe (ref: https://msg.pyyaml.org/load),
switch the only occurrance of `yaml.load` that i could
find to safe_load.

closes #1085
4 years ago
bors[bot] 2785bca1f4
Merge #883
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>
5 years ago
Tim Möhlmann 7d964874e8
Cleanup spaces around '=' 5 years ago
hoellen 616d40d225 Update password in commandline 5 years ago
cristi f2a009795b Merge branch 'master' into admin_create_user_enhancement 5 years ago
bors[bot] 211136f9b1 Merge #934
934: Pass optional arguments to domain model r=mergify[bot] a=ionutfilip

## What type of PR?
bug-fix

## What does this PR do?
Passing optional args to domain model when using cli.

### Related issue(s)
Fixes #933

## 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>
5 years ago
Ionut Filip 4d2844c1f5 Fixed arguments passed to domain 5 years ago
Roman Hoellen 1dfef1609a add domain cli to docs 5 years ago
Roman Hoellen bc617cf8ec replace _ with - in cli options 5 years ago
cr1st1p 9b65a6c862
Merge branch 'master' into admin_create_user_enhancement 5 years ago
cristi a071181c61 Allow to automatically create admin account during startup. 5 years ago
hoellen fba246e9a1 add wildcard option to cli (alias) 5 years ago
Dario Ernst 66df7a31b0 Unify and coerce booleans from env used in admin
At some places, the string that DOMAIN_REGISTRATION is got used like a boolean
(an easy misassumption to make while in python and dealing with the config
dict), making `DOMAIN_REGISTRATION=False` act as a truthy value. To stop such
future problems from happening, coerce environment config strings to real
bools.

closes #830
5 years ago
hoellen dda64fe91e allow to disable aliases or users for domains and don't allow negativ values on domain creation/edit 5 years ago
kaiyou 02995f0a15 Add a mailu command line to flask 6 years ago
kaiyou 82069ea3f0 Clean most of the refactored code 6 years ago
kaiyou f40fcd7ac0 Use click for the manager command 6 years ago
kaiyou fc24426291 First batch of refactoring, using the app factory pattern 6 years ago