Skip to content

Commit

Permalink
New spatie config file
Browse files Browse the repository at this point in the history
  • Loading branch information
snipe committed Jul 25, 2018
1 parent 75b3c66 commit 1473505
Showing 1 changed file with 187 additions and 0 deletions.
187 changes: 187 additions & 0 deletions config/backup.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
<?php

return [

'backup' => [

/*
* The name of this application. You can use this name to monitor
* the backups.
*/
'name' => config('app.name'),

'source' => [

'files' => [

/*
* The list of directories and files that will be included in the backup.
*/
'include' => [
base_path(),
],

/*
* These directories and files will be excluded from the backup.
*
* Directories used by the backup process will automatically be excluded.
*/
'exclude' => [
base_path('vendor'),
base_path('node_modules'),
],

/*
* Determines if symlinks should be followed.
*/
'followLinks' => false,
],

/*
* The names of the connections to the databases that should be backed up
* MySQL, PostgreSQL, SQLite and Mongo databases are supported.
*/
'databases' => [
'mysql',
],
],

/*
* The database dump can be gzipped to decrease diskspace usage.
*/
'gzip_database_dump' => false,

'destination' => [

/*
* The filename prefix used for the backup zip file.
*/
'filename_prefix' => '',

/*
* The disk names on which the backups will be stored.
*/
'disks' => [
'local',
],
],

/*
* The directory where the temporary files will be stored.
*/
'temporary_directory' => storage_path('app/backup-temp'),
],

/*
* You can get notified when specific events occur. Out of the box you can use 'mail' and 'slack'.
* For Slack you need to install guzzlehttp/guzzle.
*
* You can also use your own notification classes, just make sure the class is named after one of
* the `Spatie\Backup\Events` classes.
*/
'notifications' => [

'notifications' => [
\Spatie\Backup\Notifications\Notifications\BackupHasFailed::class => ['mail'],
\Spatie\Backup\Notifications\Notifications\UnhealthyBackupWasFound::class => ['mail'],
\Spatie\Backup\Notifications\Notifications\CleanupHasFailed::class => ['mail'],
\Spatie\Backup\Notifications\Notifications\BackupWasSuccessful::class => ['mail'],
\Spatie\Backup\Notifications\Notifications\HealthyBackupWasFound::class => ['mail'],
\Spatie\Backup\Notifications\Notifications\CleanupWasSuccessful::class => ['mail'],
],

/*
* Here you can specify the notifiable to which the notifications should be sent. The default
* notifiable will use the variables specified in this config file.
*/
'notifiable' => \Spatie\Backup\Notifications\Notifiable::class,

'mail' => [
'to' => '[email protected]',
],

'slack' => [
'webhook_url' => '',

/*
* If this is set to null the default channel of the webhook will be used.
*/
'channel' => null,

'username' => null,

'icon' => null,

],
],

/*
* Here you can specify which backups should be monitored.
* If a backup does not meet the specified requirements the
* UnHealthyBackupWasFound event will be fired.
*/
'monitorBackups' => [
[
'name' => config('app.name'),
'disks' => ['local'],
'newestBackupsShouldNotBeOlderThanDays' => 1,
'storageUsedMayNotBeHigherThanMegabytes' => 5000,
],

/*
[
'name' => 'name of the second app',
'disks' => ['local', 's3'],
'newestBackupsShouldNotBeOlderThanDays' => 1,
'storageUsedMayNotBeHigherThanMegabytes' => 5000,
],
*/
],

'cleanup' => [
/*
* The strategy that will be used to cleanup old backups. The default strategy
* will keep all backups for a certain amount of days. After that period only
* a daily backup will be kept. After that period only weekly backups will
* be kept and so on.
*
* No matter how you configure it the default strategy will never
* delete the newest backup.
*/
'strategy' => \Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::class,

'defaultStrategy' => [

/*
* The number of days for which backups must be kept.
*/
'keepAllBackupsForDays' => 7,

/*
* The number of days for which daily backups must be kept.
*/
'keepDailyBackupsForDays' => 16,

/*
* The number of weeks for which one weekly backup must be kept.
*/
'keepWeeklyBackupsForWeeks' => 8,

/*
* The number of months for which one monthly backup must be kept.
*/
'keepMonthlyBackupsForMonths' => 4,

/*
* The number of years for which one yearly backup must be kept.
*/
'keepYearlyBackupsForYears' => 2,

/*
* After cleaning up the backups remove the oldest backup until
* this amount of megabytes has been reached.
*/
'deleteOldestBackupsWhenUsingMoreMegabytesThan' => 5000,
],
],
];

0 comments on commit 1473505

Please sign in to comment.