New Feature
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
.env file or argument in command can be used both same time.master
parent
be09ad70d9
commit
2467ac62e2
|
|
@ -5,21 +5,21 @@ namespace App\Commands;
|
|||
use Illuminate\Console\Scheduling\Schedule;
|
||||
use LaravelZero\Framework\Commands\Command;
|
||||
|
||||
class InspiringCommand extends Command
|
||||
class AboutCommand extends Command
|
||||
{
|
||||
/**
|
||||
* The signature of the command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'inspiring {name=Artisan}';
|
||||
protected $signature = 'about';
|
||||
|
||||
/**
|
||||
* The description of the command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Display an inspiring quote';
|
||||
protected $description = 'Display about message';
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
|
|
@ -28,7 +28,12 @@ class InspiringCommand extends Command
|
|||
*/
|
||||
public function handle()
|
||||
{
|
||||
$this->info('Simplicity is the ultimate sophistication.');
|
||||
$this->line("<fg=green>Backup manager for backing up Docker Containers to Mega.nz.</>");
|
||||
$this->line("<fg=blue>Developer: </><fg=red>Muhep Atasoy</>");
|
||||
$this->line("<fg=magenta>Github: </>https://github.com/muhep06");
|
||||
$this->line("<fg=red>Gitea: </>https://git.muhepatasoy.xyz/muhep");
|
||||
$this->line("<fg=yellow>Drone: </>https://drone.muhepatasoy.xyz/muhep/dgd-backupper-php");
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -37,7 +42,7 @@ class InspiringCommand extends Command
|
|||
* @param \Illuminate\Console\Scheduling\Schedule $schedule
|
||||
* @return void
|
||||
*/
|
||||
public function schedule(Schedule $schedule)
|
||||
public function schedule(Schedule $schedule): void
|
||||
{
|
||||
// $schedule->command(static::class)->everyMinute();
|
||||
}
|
||||
|
|
@ -2,10 +2,7 @@
|
|||
|
||||
namespace App\Commands;
|
||||
|
||||
use App\Utils\BackupManager;
|
||||
use App\Utils\Builders\ContainerBuilder;
|
||||
use Illuminate\Console\Scheduling\Schedule;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
use LaravelZero\Framework\Commands\Command;
|
||||
|
||||
class BackupCommand extends Command
|
||||
|
|
|
|||
|
|
@ -15,7 +15,9 @@ class ContainerBackupCommand extends Command
|
|||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'backup:container {containers*}';
|
||||
protected $signature = 'backup:container
|
||||
{containers* : Name or ID of the containers to be backed up.}
|
||||
{--folder= : Export folder for backed up containers.}';
|
||||
|
||||
/**
|
||||
* The description of the command.
|
||||
|
|
@ -33,8 +35,13 @@ class ContainerBackupCommand extends Command
|
|||
public function handle()
|
||||
{
|
||||
$containers = $this->argument('containers');
|
||||
$backupFolder = $this->option('folder');
|
||||
if (!$backupFolder) {
|
||||
$backupFolder = env('BACKUP_FOLDER');
|
||||
}
|
||||
|
||||
$backupManager = new BackupManager();
|
||||
$backupManager->setBackupFolder(env('BACKUP_FOLDER'));
|
||||
$backupManager->setBackupFolder($backupFolder);
|
||||
foreach ($containers as $container) {
|
||||
$this->line("<fg=blue>|-> Backing up {$container}...</>");
|
||||
$builder = new ContainerBuilder();
|
||||
|
|
|
|||
|
|
@ -15,7 +15,9 @@ class DataBackupCommand extends Command
|
|||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'backup:data';
|
||||
protected $signature = 'backup:data
|
||||
{--data= : You can use it to back up the data folder of all containers or any folder. }
|
||||
{--folder= : Export folder for backed up folder. }';
|
||||
|
||||
/**
|
||||
* The description of the command.
|
||||
|
|
@ -34,10 +36,19 @@ class DataBackupCommand extends Command
|
|||
{
|
||||
$this->line("<fg=blue>|-> Backing up data folder...</>");
|
||||
|
||||
$backupFolder = $this->option('folder');
|
||||
$dataFolder = $this->option('data');
|
||||
if (!$backupFolder) {
|
||||
$backupFolder = env('BACKUP_FOLDER');
|
||||
}
|
||||
if (!$dataFolder) {
|
||||
$dataFolder = env('DATA_FOLDER');
|
||||
}
|
||||
|
||||
$bm = new BackupManager();
|
||||
$builder = new DataBuilder();
|
||||
$builder->setDataFolder(env('DATA_FOLDER'));
|
||||
$bm->setBackupFolder(env('BACKUP_FOLDER'))
|
||||
$builder->setDataFolder($dataFolder);
|
||||
$bm->setBackupFolder($backupFolder)
|
||||
->setBuilder($builder)->execute();
|
||||
|
||||
if ($bm->getShell()->getReturnValue() == 0) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,11 @@ class MysqlBackupCommand extends Command
|
|||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'backup:mysql {--container=} {--user=} {--password=}';
|
||||
protected $signature = 'backup:mysql
|
||||
{--container= : Mysql container name or id}
|
||||
{--user= : Mysql username}
|
||||
{--password= : Mysql password}
|
||||
{--folder= : Export folder for backup}';
|
||||
|
||||
/**
|
||||
* The description of the command.
|
||||
|
|
@ -46,7 +50,12 @@ class MysqlBackupCommand extends Command
|
|||
$builder->setCredential($credentials);
|
||||
$builder->setContainerName($container);
|
||||
|
||||
$bm->setBackupFolder(env('BACKUP_FOLDER'))
|
||||
$backupFolder = $this->option('folder');
|
||||
if (!$backupFolder) {
|
||||
$backupFolder = env('BACKUP_FOLDER');
|
||||
}
|
||||
|
||||
$bm->setBackupFolder($backupFolder)
|
||||
->setBuilder($builder)->execute();
|
||||
|
||||
if ($bm->getShell()->getReturnValue() == 0) {
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ class InspiringCommandTest extends TestCase
|
|||
*/
|
||||
public function testInspiringCommand()
|
||||
{
|
||||
$this->artisan('inspiring')
|
||||
$this->artisan('about')
|
||||
->expectsOutput('Simplicity is the ultimate sophistication.')
|
||||
->assertExitCode(0);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue