Skip to content
Snippets Groups Projects
Verified Commit c1c54eaa authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Integrate django_cron to automatically run backups.

parent e1927dd5
No related branches found
No related tags found
No related merge requests found
from django.conf import settings
from django.core import management
from django_cron import CronJobBase, Schedule
class Backup(CronJobBase):
RUN_AT_TIMES = settings.DBBACKUP_CRON_TIMES
schedule = Schedule(run_at_times=RUN_AT_TIMES)
code = 'biscuit.core.Backup'
def do(self):
management.call_command('dbbackup', ['-z'])
management.call_command('mediabackup' ['-z'])
......@@ -52,6 +52,7 @@ INSTALLED_APPS = [
'sass_processor',
'easyaudit',
'dbbackup',
'django_cron',
'bootstrap4',
'fa',
'django_any_js',
......@@ -302,7 +303,12 @@ DBBACKUP_STORAGE = _settings.get('backup.storage', 'dbbackup.storage.filesystem_
DBBACKUP_STORAGE_OPTIONS = {
'location': _settings.get('backup.location', '/var/backups/biscuit')
}
DBBACKUP_CLEANUP_KEEP = _settings('backup.keep.database', 10)
DBBACKUP_CLEANUP_KEEP_MEDIA = _settings('backup.keep.media', 10)
DBBACKUP_CLEANUP_KEEP = _settings.get('backup.keep.database', 10)
DBBACKUP_CLEANUP_KEEP_MEDIA = _settings.get('backup.keep.media', 10)
DBBACKUP_CRON_TIMES = _settings.get('backup.times', ['03:57'])
CRON_CLASSES = [
'biscuit.core.cronjobs.Backup'
]
_settings.populate_obj(sys.modules[__name__])
......@@ -45,6 +45,7 @@ django-contact-form = "^1.7"
django-impersonate = "^1.4"
python-memcached = "^1.59"
django-dbbackup = "^3.2"
django-cron = "^0.5.1"
[tool.poetry.extras]
ldap = ["django-auth-ldap"]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment