You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.5 KiB
68 lines
1.5 KiB
<?php |
|
|
|
namespace Laravel\Sail; |
|
|
|
use Illuminate\Contracts\Support\DeferrableProvider; |
|
use Illuminate\Support\ServiceProvider; |
|
use Laravel\Sail\Console\InstallCommand; |
|
use Laravel\Sail\Console\PublishCommand; |
|
|
|
class SailServiceProvider extends ServiceProvider implements DeferrableProvider |
|
{ |
|
/** |
|
* Bootstrap any application services. |
|
* |
|
* @return void |
|
*/ |
|
public function boot() |
|
{ |
|
$this->registerCommands(); |
|
$this->configurePublishing(); |
|
} |
|
|
|
/** |
|
* Register the console commands for the package. |
|
* |
|
* @return void |
|
*/ |
|
protected function registerCommands() |
|
{ |
|
if ($this->app->runningInConsole()) { |
|
$this->commands([ |
|
InstallCommand::class, |
|
PublishCommand::class, |
|
]); |
|
} |
|
} |
|
|
|
/** |
|
* Configure publishing for the package. |
|
* |
|
* @return void |
|
*/ |
|
protected function configurePublishing() |
|
{ |
|
if ($this->app->runningInConsole()) { |
|
$this->publishes([ |
|
__DIR__ . '/../runtimes' => $this->app->basePath('docker'), |
|
], ['sail', 'sail-docker']); |
|
|
|
$this->publishes([ |
|
__DIR__ . '/../bin/sail' => $this->app->basePath('sail'), |
|
], ['sail', 'sail-bin']); |
|
} |
|
} |
|
|
|
/** |
|
* Get the services provided by the provider. |
|
* |
|
* @return array |
|
*/ |
|
public function provides() |
|
{ |
|
return [ |
|
InstallCommand::class, |
|
PublishCommand::class, |
|
]; |
|
} |
|
}
|
|
|