Commit 52d696d0 authored by Nicolas Widart's avatar Nicolas Widart

Fix merge conflict

parents 58eec741 ec7b8142
...@@ -8,19 +8,19 @@ use Modules\User\Repositories\UserRepository; ...@@ -8,19 +8,19 @@ use Modules\User\Repositories\UserRepository;
class InstallCommand extends Command class InstallCommand extends Command
{ {
/** /**
* The console command name. * The console command name.
* *
* @var string * @var string
*/ */
protected $name = 'platform:install'; protected $name = 'platform:install';
/** /**
* The console command description. * The console command description.
* *
* @var string * @var string
*/ */
protected $description = 'Install the Platform CMS'; protected $description = 'Install the Platform CMS';
/** /**
* @var UserRepository * @var UserRepository
...@@ -39,38 +39,53 @@ class InstallCommand extends Command ...@@ -39,38 +39,53 @@ class InstallCommand extends Command
* @param Filesystem $finder * @param Filesystem $finder
* @return \Modules\Core\Console\InstallCommand * @return \Modules\Core\Console\InstallCommand
*/ */
public function __construct($user, Filesystem $finder) public function __construct($user, Filesystem $finder)
{ {
parent::__construct(); parent::__construct();
$this->user = $user; $this->user = $user;
$this->finder = $finder; $this->finder = $finder;
} }
/** /**
* Execute the actions * Execute the actions
* *
* @return mixed * @return mixed
*/ */
public function fire() public function fire()
{ {
$this->info('Starting the installation process...'); $this->info('Starting the installation process...');
$this->configureDatabase(); $this->configureDatabase();
if ($this->confirm('Do you wish to init sentinel and create its first user? [yes|no]')) {
$this->runUserCommands();
}
$this->runMigrations(); $this->runMigrations();
$this->runSeeds(); $this->publishAssets();
$this->createFirstUser(); $this->blockMessage(
'Success!',
'Platform ready! You can now login with your username and password at /backend'
);
}
$this->publishAssets(); /**
*
*/
private function runUserCommands()
{
$this->runSentinelMigrations();
$this->runUserSeeds();
$this->createFirstUser();
$this->blockMessage('Success!', 'Platform ready! You can now login with your username and password at /backend'); $this->info('User commands done.');
} }
/** /**
* Create the first user that'll have admin access * Create the first user that'll have admin access
*/ */
private function createFirstUser() private function createFirstUser()
{ {
$this->line('Creating an Admin user account...'); $this->line('Creating an Admin user account...');
...@@ -86,29 +101,39 @@ class InstallCommand extends Command ...@@ -86,29 +101,39 @@ class InstallCommand extends Command
'email' => $email, 'email' => $email,
'password' => Hash::make($password), 'password' => Hash::make($password),
]; ];
$this->user->createWithRoles($userInfo, ['1']); $this->user->createWithRoles($userInfo, ['admin']);
$this->info('Admin account created!'); $this->info('Admin account created!');
} }
/**
* Run migrations specific to Sentinel
*/
private function runSentinelMigrations()
{
$this->call('migrate', ['--package' => 'cartalyst/sentinel']);
}
/** /**
* Run the migrations * Run the migrations
*/ */
private function runMigrations() private function runMigrations()
{ {
$this->call('migrate', ['--package' => 'cartalyst/sentinel']);
$this->call('module:migrate', ['module' => 'Setting']); $this->call('module:migrate', ['module' => 'Setting']);
$this->info('Application migrated!'); $this->info('Application migrated!');
} }
private function runUserSeeds()
{
$this->call('module:seed', ['module' => 'User']);
}
/** /**
* Run the seeds * Run the seeds
*/ */
private function runSeeds() private function runSeeds()
{ {
$this->call('module:seed', ['module' => 'User']);
$this->info('Application seeded!'); $this->info('Application seeded!');
} }
...@@ -117,7 +142,7 @@ class InstallCommand extends Command ...@@ -117,7 +142,7 @@ class InstallCommand extends Command
* @param $title * @param $title
* @param $message * @param $message
* @param string $style * @param string $style
*/ */
protected function blockMessage($title, $message, $style = 'info') protected function blockMessage($title, $message, $style = 'info')
{ {
$formatter = $this->getHelperSet()->get('formatter'); $formatter = $this->getHelperSet()->get('formatter');
...@@ -128,7 +153,7 @@ class InstallCommand extends Command ...@@ -128,7 +153,7 @@ class InstallCommand extends Command
/** /**
* Publish the CMS assets * Publish the CMS assets
*/ */
private function publishAssets() private function publishAssets()
{ {
$this->call('module:publish', ['module' => 'Core']); $this->call('module:publish', ['module' => 'Core']);
...@@ -136,7 +161,7 @@ class InstallCommand extends Command ...@@ -136,7 +161,7 @@ class InstallCommand extends Command
/** /**
* Configuring the database information * Configuring the database information
*/ */
private function configureDatabase() private function configureDatabase()
{ {
// Ask for credentials // Ask for credentials
...@@ -153,7 +178,7 @@ class InstallCommand extends Command ...@@ -153,7 +178,7 @@ class InstallCommand extends Command
* @param $databaseName * @param $databaseName
* @param $databaseUsername * @param $databaseUsername
* @param $databasePassword * @param $databasePassword
*/ */
private function configureEnvironmentFile($databaseName, $databaseUsername, $databasePassword) private function configureEnvironmentFile($databaseName, $databaseUsername, $databasePassword)
{ {
Dotenv::makeMutable(); Dotenv::makeMutable();
...@@ -187,7 +212,7 @@ class InstallCommand extends Command ...@@ -187,7 +212,7 @@ class InstallCommand extends Command
* @param $databaseName * @param $databaseName
* @param $databaseUsername * @param $databaseUsername
* @param $databasePassword * @param $databasePassword
*/ */
private function setLaravelConfiguration($databaseName, $databaseUsername, $databasePassword) private function setLaravelConfiguration($databaseName, $databaseUsername, $databasePassword)
{ {
$this->laravel['config']['database.connections.mysql.database'] = $databaseName; $this->laravel['config']['database.connections.mysql.database'] = $databaseName;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment