-
-
Notifications
You must be signed in to change notification settings - Fork 158
Adds compatibility for Oracle Linux #578
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
031c3f2
76c4eaf
f38c9eb
eea74dc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,123 @@ | ||
| [general] | ||
| hostname = mail.%(domain)s | ||
|
|
||
| [certificate] | ||
| generate = true | ||
| type = self-signed | ||
|
|
||
| [letsencrypt] | ||
| email = [email protected] | ||
|
|
||
| [database] | ||
| engine = mysql | ||
| host = 127.0.0.1 | ||
| install = true | ||
|
|
||
| [postgres] | ||
| user = postgres | ||
| password = | ||
|
|
||
| [mysql] | ||
| user = root | ||
| password = | ||
| charset = utf8 | ||
| collation = utf8_general_ci | ||
|
|
||
| [fail2ban] | ||
| enabled = true | ||
| config_dir = /etc/fail2ban | ||
| max_retry = 20 | ||
| ban_time = 3600 | ||
| find_time = 30 | ||
|
|
||
| [modoboa] | ||
| user = modoboa | ||
| home_dir = /srv/modoboa | ||
| venv_path = %(home_dir)s/env | ||
| instance_path = %(home_dir)s/instance | ||
| timezone = Europe/Paris | ||
| dbname = modoboa | ||
| dbuser = modoboa | ||
| dbpassword = w7l9tRsrpxZW8fd8 | ||
| extensions = modoboa-amavis modoboa-postfix-autoreply modoboa-sievefilters modoboa-webmail modoboa-contacts modoboa-radicale | ||
| devmode = false | ||
|
|
||
| [automx] | ||
| enabled = true | ||
| user = automx | ||
| config_dir = /etc | ||
| home_dir = /srv/automx | ||
| venv_path = %(home_dir)s/env | ||
| instance_path = %(home_dir)s/instance | ||
|
|
||
| [amavis] | ||
| enabled = true | ||
| user = amavis | ||
| max_servers = 2 | ||
| dbname = amavis | ||
| dbuser = amavis | ||
| dbpassword = rluH50ZePN5JfnCq | ||
|
|
||
| [clamav] | ||
| enabled = true | ||
| user = clamav | ||
|
|
||
| [dovecot] | ||
| enabled = true | ||
| config_dir = /etc/dovecot | ||
| user = dovecot | ||
| home_dir = /srv/vmail | ||
| mailboxes_owner = vmail | ||
| extra_protocols = | ||
| postmaster_address = postmaster@%(domain)s | ||
| radicale_auth_socket_path = /var/run/dovecot/auth-radicale | ||
|
|
||
| [nginx] | ||
| enabled = true | ||
| config_dir = /etc/nginx | ||
|
|
||
| [razor] | ||
| enabled = true | ||
| config_dir = /etc/razor | ||
|
|
||
| [postfix] | ||
| enabled = true | ||
| config_dir = /etc/postfix | ||
| message_size_limit = 11534336 | ||
| dhe_group = 4096 | ||
|
|
||
| [postwhite] | ||
| enabled = true | ||
| config_dir = /etc | ||
|
|
||
| [spamassassin] | ||
| enabled = true | ||
| config_dir = /etc/mail/spamassassin | ||
| dbname = spamassassin | ||
| dbuser = spamassassin | ||
| dbpassword = WyCxTR0EJp1GrMf1 | ||
|
|
||
| [uwsgi] | ||
| enabled = true | ||
| config_dir = /etc/uwsgi | ||
| nb_processes = 2 | ||
|
|
||
| [radicale] | ||
| enabled = true | ||
| user = radicale | ||
| config_dir = /etc/radicale | ||
| home_dir = /srv/radicale | ||
| venv_path = %(home_dir)s/env | ||
|
|
||
| [opendkim] | ||
| enabled = true | ||
| user = opendkim | ||
| config_dir = /etc | ||
| port = 12345 | ||
| keys_storage_dir = /var/lib/dkim | ||
| dbuser = opendkim | ||
| dbpassword = p54KctDPaSy2ENgl | ||
|
|
||
| [backup] | ||
| default_path = ./modoboa_backup/ | ||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -90,7 +90,7 @@ class RPMPackage(Package): | |
| def __init__(self, dist_name): | ||
| """Initialize backend.""" | ||
| super(RPMPackage, self).__init__(dist_name) | ||
| if "centos" in dist_name: | ||
| if dist_name in ["centos", "oracle linux server"]: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Be careful here, you're changing the check logic for centos. This was not a strict comparison
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe a better comparison could be to use the availability of the package manager. Anyways, it still didn't affect CentOS functionality at all. Do you suggest something different? |
||
| self.install("epel-release") | ||
|
|
||
| def install(self, name): | ||
|
|
@@ -99,7 +99,7 @@ def install(self, name): | |
|
|
||
| def install_many(self, names): | ||
| """Install many packages.""" | ||
| return utils.exec_cmd("yum install -y --quiet {}".format(" ".join(names))) | ||
| return utils.exec_cmd("yum install -y {}".format(" ".join(names))) # Before it was quiet | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why do you remove the quiet option?
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. To see if somehow one of the packages may fail. Also, during this step installation took so long, so it didn't actually seems to be doing anything, or, better said, it didn't give the sensation of progress. |
||
|
|
||
| def get_installed_version(self, name): | ||
| """Get installed package version.""" | ||
|
|
@@ -117,7 +117,7 @@ def get_backend(): | |
| backend = None | ||
| if distname in ["debian", "debian gnu/linux", "ubuntu", "linuxmint"]: | ||
| backend = DEBPackage | ||
| elif "centos" in distname: | ||
| elif distname in ["centos", "oracle linux server"]: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Be careful here, you're changing the check logic for centos. This was not a strict comparison |
||
| backend = RPMPackage | ||
| else: | ||
| raise NotImplementedError( | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -104,7 +104,7 @@ def get_template_context(self): | |
| ssl_protocols = "!SSLv3" | ||
| if ssl_protocol_parameter == "ssl_min_protocol": | ||
| ssl_protocols = "TLSv1" | ||
| if "centos" in utils.dist_name(): | ||
| if utils.dist_name() in ["centos", "oracle linux server"]: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Be careful here, you're changing the check logic for centos. This was not a strict comparison |
||
| protocols = "protocols = imap lmtp sieve" | ||
| extra_protocols = self.config.get("dovecot", "extra_protocols") | ||
| if extra_protocols: | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,7 +17,7 @@ class Uwsgi(base.Installer): | |
| appname = "uwsgi" | ||
| packages = { | ||
| "deb": ["uwsgi", "uwsgi-plugin-python3"], | ||
| "rpm": ["uwsgi", "uwsgi-plugin-python36"], | ||
| "rpm": ["uwsgi", "uwsgi-plugin-python3"], #Previousli was 36 | ||
| } | ||
|
|
||
| def get_socket_path(self, app): | ||
|
|
@@ -29,7 +29,7 @@ def get_socket_path(self, app): | |
| def get_template_context(self, app): | ||
| """Additionnal variables.""" | ||
| context = super(Uwsgi, self).get_template_context() | ||
| if package.backend.FORMAT == "deb": | ||
| if package.backend.FORMAT == "deb" or True: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why are you doing this ?
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. On oracle linux the default usage of python was also python3. Then, I suggest this to be the default scenario, as I don't know in which distros "python36" is being used. (Reversing the logic might be a better solution: in those distro's special cases, use python36 instead of python3) |
||
| uwsgi_plugin = "python3" | ||
| else: | ||
| uwsgi_plugin = "python36" | ||
|
|
@@ -105,7 +105,7 @@ def post_run(self): | |
| def restart_daemon(self): | ||
| """Restart daemon process.""" | ||
| # Temp. fix for CentOS | ||
| if utils.dist_name().startswith("centos"): | ||
| if utils.dist_name().startswith("centos") or utils.dist_name().startswith("oracle linux server"): | ||
| pw = pwd.getpwnam("uwsgi") | ||
| utils.mkdir( | ||
| "/run/uwsgi", | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -286,7 +286,7 @@ def main(input_args): | |
| ssl_backend.generate_cert() | ||
| for appname in PRIMARY_APPS: | ||
| scripts.install(appname, config, args.upgrade, args.restore) | ||
| system.restart_service("cron") | ||
| system.restart_service("crond") | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Will this work in all cases?
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I could give it a try using Rocky, as CentOS is now unavailable. I haven't installed it on debian based distros. |
||
| package.backend.restore_system() | ||
| if not args.restore: | ||
| utils.success( | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| 20b6ede21173441284efe533627e95ba91bfeb53 | ||
| f38c9eb0bd3558d8c6b162ec5ae8209389b1687c |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file should not be there