This component provides backup functionality.
It uses Flysystem
component.
composer require 'devhelp/backup:dev-master'
To set up connection between two Flysystem adapters please read documentation
Below you can find simple usage which creates backup between ftp location and locale filesystem:
use Devhelp\Backup\FlysystemBackupFactory;
use Devhelp\Backup\Notification\NullNotification;
use League\Flysystem\Filesystem;
use League\Flysystem\Adapter\Ftp as FtpAdapter;
use League\Flysystem\Adapter\Local as LocalAdapter;
$sourceFilesystem = new Filesystem(new FtpAdapter(array(
'host' => 'example.com',
'username' => 'user',
'password' => 'secret'
)));
$targetFilesystem = new Filesystem(new LocalAdapter('/target/directory'));
$nullNotification = new NullNotification();
$backupManager = (new FlysystemBackupFactory($sourceFilesystem, $targetFilesystem))->create($nullNotification);
$backupManager->runProcess();