mirror of
https://github.com/CachetHQ/Cachet.git
synced 2025-03-14 20:39:44 +01:00
Merge pull request #3150 from nstapelbroek/feature/merge-install-commands
Merge install commands
This commit is contained in:
commit
a79187569e
@ -1,76 +0,0 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of Cachet.
|
||||
*
|
||||
* (c) Alt Three Services Limited
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace CachetHQ\Cachet\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Contracts\Events\Dispatcher;
|
||||
|
||||
/**
|
||||
* This is the app install command.
|
||||
*
|
||||
* @author James Brooks <james@alt-three.com>
|
||||
*/
|
||||
class AppInstallCommand extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'app:install';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Installs the application';
|
||||
|
||||
/**
|
||||
* The events instance.
|
||||
*
|
||||
* @var \Illuminate\Contracts\Events\Dispatcher
|
||||
*/
|
||||
protected $events;
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Dispatcher $events)
|
||||
{
|
||||
$this->events = $events;
|
||||
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$this->events->fire('command.installing', $this);
|
||||
$this->events->fire('command.generatekey', $this);
|
||||
$this->events->fire('command.cacheconfig', $this);
|
||||
$this->events->fire('command.cacheroutes', $this);
|
||||
$this->events->fire('command.publishvendors', $this);
|
||||
$this->events->fire('command.runmigrations', $this);
|
||||
$this->events->fire('command.runseeding', $this);
|
||||
$this->events->fire('command.updatecache', $this);
|
||||
$this->events->fire('command.linkstorage', $this);
|
||||
$this->events->fire('command.extrastuff', $this);
|
||||
$this->events->fire('command.installed', $this);
|
||||
}
|
||||
}
|
@ -14,6 +14,7 @@ namespace CachetHQ\Cachet\Console\Commands;
|
||||
use Dotenv\Dotenv;
|
||||
use Dotenv\Exception\InvalidPathException;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Contracts\Events\Dispatcher;
|
||||
|
||||
/**
|
||||
* This is the install command class.
|
||||
@ -36,6 +37,25 @@ class InstallCommand extends Command
|
||||
*/
|
||||
protected $description = 'Install Cachet';
|
||||
|
||||
/**
|
||||
* The events instance.
|
||||
*
|
||||
* @var \Illuminate\Contracts\Events\Dispatcher
|
||||
*/
|
||||
protected $events;
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @param Dispatcher $events
|
||||
*/
|
||||
public function __construct(Dispatcher $events)
|
||||
{
|
||||
$this->events = $events;
|
||||
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
@ -43,18 +63,28 @@ class InstallCommand extends Command
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
if (!$this->confirm('Do you want to install Cachet?')) {
|
||||
$this->line('Installation aborted. Goodbye!');
|
||||
|
||||
return;
|
||||
if ($this->confirm('Do you want to configure Cachet before installing?')) {
|
||||
$this->configureEnvironmentFile();
|
||||
$this->configureKey();
|
||||
$this->configureDatabase();
|
||||
$this->configureDrivers();
|
||||
$this->configureMail();
|
||||
$this->configureCachet();
|
||||
}
|
||||
|
||||
$this->configureEnvironmentFile();
|
||||
$this->configureKey();
|
||||
$this->configureDatabase();
|
||||
$this->configureDrivers();
|
||||
$this->configureMail();
|
||||
$this->configureCachet();
|
||||
$this->line('Installing Cachet...');
|
||||
|
||||
$this->events->fire('command.installing', $this);
|
||||
$this->events->fire('command.generatekey', $this);
|
||||
$this->events->fire('command.cacheconfig', $this);
|
||||
$this->events->fire('command.cacheroutes', $this);
|
||||
$this->events->fire('command.publishvendors', $this);
|
||||
$this->events->fire('command.runmigrations', $this);
|
||||
$this->events->fire('command.runseeding', $this);
|
||||
$this->events->fire('command.updatecache', $this);
|
||||
$this->events->fire('command.linkstorage', $this);
|
||||
$this->events->fire('command.extrastuff', $this);
|
||||
$this->events->fire('command.installed', $this);
|
||||
|
||||
$this->info('Cachet is installed ⚡');
|
||||
}
|
||||
|
@ -11,7 +11,6 @@
|
||||
|
||||
namespace CachetHQ\Cachet\Console;
|
||||
|
||||
use CachetHQ\Cachet\Console\Commands\AppInstallCommand;
|
||||
use CachetHQ\Cachet\Console\Commands\AppResetCommand;
|
||||
use CachetHQ\Cachet\Console\Commands\AppUpdateCommand;
|
||||
use CachetHQ\Cachet\Console\Commands\BeaconCommand;
|
||||
@ -37,7 +36,6 @@ class Kernel extends ConsoleKernel
|
||||
* @var array
|
||||
*/
|
||||
protected $commands = [
|
||||
AppInstallCommand::class,
|
||||
AppResetCommand::class,
|
||||
AppUpdateCommand::class,
|
||||
BeaconCommand::class,
|
||||
|
@ -15,7 +15,6 @@ use CachetHQ\Cachet\Bus\Events\System\SystemWasInstalledEvent;
|
||||
use CachetHQ\Cachet\Bus\Events\System\SystemWasResetEvent;
|
||||
use CachetHQ\Cachet\Bus\Events\System\SystemWasUpdatedEvent;
|
||||
use CachetHQ\Cachet\Settings\Cache;
|
||||
use Carbon\Carbon;
|
||||
use Exception;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Contracts\Config\Repository;
|
||||
@ -153,11 +152,8 @@ class CommandSubscriber
|
||||
$command->line('Backing up database...');
|
||||
|
||||
try {
|
||||
$command->call('db:backup', [
|
||||
'--compression' => 'gzip',
|
||||
'--database' => $this->config->get('database.default'),
|
||||
'--destination' => 'local',
|
||||
'--destinationPath' => Carbon::now()->format('Y-m-d H.i.s'),
|
||||
$command->call('backup:run', [
|
||||
'--only-db' => true,
|
||||
'--no-interaction' => true,
|
||||
]);
|
||||
} catch (Exception $e) {
|
||||
|
@ -132,7 +132,7 @@ return [
|
||||
'monitorBackups' => [
|
||||
[
|
||||
'name' => config('app.name'),
|
||||
'disks' => ['local'],
|
||||
'disks' => ['database'],
|
||||
'newestBackupsShouldNotBeOlderThanDays' => 1,
|
||||
'storageUsedMayNotBeHigherThanMegabytes' => 5000,
|
||||
],
|
||||
|
Loading…
x
Reference in New Issue
Block a user