Download the PHP package backup-manager/laravel without Composer
On this page you can find all versions of the php package backup-manager/laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download backup-manager/laravel
More information about backup-manager/laravel
Files in backup-manager/laravel
Package laravel
Short Description Database backup manager seamlessly integrated with Laravel 4 or 5 with user-definable procedures and support for S3, Dropbox, FTP, SFTP, and more.
License MIT
Informations about the package laravel
Laravel Driver for the Database Backup Manager
This package pulls in the framework agnostic Backup Manager and provides seamless integration with Laravel.
Watch a video tour to get an idea what is possible with this package.
Note: This package is for Laravel integration only. For information about the framework-agnostic core package (or the Symfony driver) please see the base package repository.
Table of Contents
- Stability Notice
- Requirements
- Installation
- Scheduling Backups
- Contribution Guidelines
- Maintainers
- License
- Changelog
Stability Notice
It's stable enough, you'll need to understand filesystem permissions.
This package is being actively developed, and we would like to get feedback to improve it. Please feel free to submit feedback.
Requirements
- PHP 7.3+
- Laravel 5.5+
- MySQL support requires
mysqldump
andmysql
command-line binaries - PostgreSQL support requires
pg_dump
andpsql
command-line binaries - Gzip support requires
gzip
andgunzip
command-line binaries
Installation
Composer
Run the following to include this via Composer
Then, you'll need to select the appropriate packages for the adapters that you want to use.
Laravel 5 Configuration
To install into a Laravel project, first do the composer install then add ONE of the following classes to your config/app.php service providers list.
Publish the storage configuration file.
The Backup Manager will make use of Laravel's database configuration. But, it won't know about any connections that might be tied to other environments, so it can be best to just list multiple connections in the config/database.php
file.
We can also add extra parameters on our backup manager commands by configuring extra params on .env
file:
Lumen Configuration
To install into a Lumen project, first do the composer install then add the configuration file loader and ONE of the following service providers to your bootstrap/app.php
.
Copy the vendor/backup-manager/laravel/config/backup-manager.php
file to config/backup-manager.php
and configure it to suit your needs.
IoC Resolution
BackupManager\Manager
can be automatically resolved through constructor injection thanks to Laravel's IoC container.
It can also be resolved manually from the container.
Artisan Commands
There are three commands available db:backup
, db:restore
and db:list
.
All will prompt you with simple questions to successfully execute the command.
Example Command for 24hour scheduled cronjob
This command will backup your database to dropbox using mysql and gzip compresion in path /backups/project/DATE.gz (ex: /backups/project/31-7-2015.gz)
Scheduling Backups
It's possible to schedule backups using Laravel's scheduler.
Contribution Guidelines
We recommend using the vagrant configuration supplied with this package for development and contribution. Simply install VirtualBox, Vagrant, and Ansible then run vagrant up
in the root folder. A virtualmachine specifically designed for development of the package will be built and launched for you.
When contributing please consider the following guidelines:
- please conform to the code style of the project, it's essentially PSR-2 with a few differences.
- The NOT operator when next to parenthesis should be surrounded by a single space.
if ( ! is_null(...)) {
. - Interfaces should NOT be suffixed with
Interface
, Traits should NOT be suffixed withTrait
.
- The NOT operator when next to parenthesis should be surrounded by a single space.
- All methods and classes must contain docblocks.
- Ensure that you submit tests that have minimal 100% coverage.
- When planning a pull-request to add new functionality, it may be wise to submit a proposal to ensure compatibility with the project's goals.
Maintainers
This package is maintained by Shawn McCool and open-source heroes.
License
This package is licensed under the MIT license.
Changelog
2.0
Released on 2020-04-30
Remove support for all Laravel versions below 5.5. All older versions should use the backup-manager ^1.0
.
Since so many dependencies in Laravel / Symfony have changed it became impossible to support newer versions in the same code-base. Release ^1.0
is stable and is always accepting new stability fixes (we haven't seen anything to fix in a long time).
All versions of laravel with dependencies
php Version ^7.3||^7.4
symfony/process Version ^3||^4||^5
illuminate/support Version ^5.5||^6||^7
illuminate/container Version ^5.5||^6||^7
illuminate/console Version ^5.5||^6||^7