roundcube: Use drop-in config component for /etc files

Tests:

- Config files are all symlinks in /etc/
- Web interface works
- fail2ban jail is enabled

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Sunil Mohan Adapa 2023-05-16 12:05:42 -07:00 committed by James Valleroy
parent 23f7497c05
commit 8b1dfc525b
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808
4 changed files with 10 additions and 1 deletions

View File

@ -124,3 +124,5 @@ rm_conffile /etc/NetworkManager/dispatcher.d/10-freedombox-batman 23.10~
rm_conffile /etc/pagekite.d/90_freedombox_certs.rc 23.10~
rm_conffile /etc/dpkg/origins/freedombox 23.10~
rm_conffile /etc/apache2/conf-available/radicale2-freedombox.conf 23.10~
rm_conffile /etc/apache2/conf-available/roundcube-freedombox.conf 23.10~
rm_conffile /etc/fail2ban/jail.d/roundcube-auth-freedombox.conf 23.10~

View File

@ -7,6 +7,7 @@ from django.utils.translation import gettext_lazy as _
from plinth import app as app_module
from plinth import frontpage, menu
from plinth.config import DropinConfigs
from plinth.modules.apache.components import Webserver
from plinth.modules.backups.components import BackupRestore
from plinth.modules.firewall.components import Firewall
@ -39,7 +40,7 @@ class RoundcubeApp(app_module.App):
app_id = 'roundcube'
_version = 3
_version = 4
def __init__(self):
"""Create components for the app."""
@ -70,6 +71,12 @@ class RoundcubeApp(app_module.App):
['sqlite3', 'roundcube', 'roundcube-core', 'roundcube-sqlite3'])
self.add(packages)
dropin_configs = DropinConfigs('dropin-configs-roundcube', [
'/etc/apache2/conf-available/roundcube-freedombox.conf',
'/etc/fail2ban/jail.d/roundcube-auth-freedombox.conf',
])
self.add(dropin_configs)
firewall = Firewall('firewall-roundcube', info.name,
ports=['http', 'https'], is_external=True)
self.add(firewall)