diff --git a/laravel/cli/artisan.php b/laravel/cli/artisan.php index b81355e6..eef931a8 100644 --- a/laravel/cli/artisan.php +++ b/laravel/cli/artisan.php @@ -17,31 +17,7 @@ * us to seamlessly add tasks to the CLI so that the Task class * doesn't have to worry about how to resolve core tasks. */ - -/** - * The bundle task is responsible for the installation of bundles - * and their dependencies. It utilizes the bundles API to get the - * meta-data for the available bundles. - */ -IoC::register('task: bundle', function() -{ - return new Tasks\Bundle\Bundler; -}); - -/** - * The migrate task is responsible for running database migrations - * as well as migration rollbacks. We will also create an instance - * of the migration resolver and database classes, which are used - * to perform various support functions for the migrator. - */ -IoC::register('task: migrate', function() -{ - $database = new Tasks\Migrate\Database; - - $resolver = new Tasks\Migrate\Resolver($database); - - return new Tasks\Migrate\Migrator($resolver, $database); -}); +require SYS_PATH.'cli/dependencies'.EXT; /** * We will wrap the command execution in a try / catch block and diff --git a/laravel/cli/command.php b/laravel/cli/command.php index dbd226ba..21ec8731 100644 --- a/laravel/cli/command.php +++ b/laravel/cli/command.php @@ -27,6 +27,9 @@ public static function run($arguments = array()) // via the container instead of by this class. if (Bundle::exists($bundle)) Bundle::start($bundle); + // Once the bundle has been started, we will attempt to resolve the + // task instance. Tasks may be resolved through the file system or + // through the application IoC container. if (is_null($task = static::resolve($bundle, $task))) { throw new \Exception("Sorry, I can't find that task."); @@ -47,7 +50,7 @@ protected static function parse($task) // Extract the task method from the task string. Methods are called // on tasks by separating the task and method with a single colon. - // If no task is specified, "run" is used as the default method. + // If no task is specified, "run" is used as the default. if (str_contains($task, ':')) { list($task, $method) = explode(':', $task); diff --git a/laravel/cli/dependencies.php b/laravel/cli/dependencies.php new file mode 100644 index 00000000..2e1cab05 --- /dev/null +++ b/laravel/cli/dependencies.php @@ -0,0 +1,57 @@ +