Question

I've updated my Laravel installation with the following commands today (which is a few days after Laravel 4's release date):

php composer self-update
php composer update

You can have a look at my composer.json file here: http://paste.laravel.com/umX

In the Docs I've found out about the Maintenance Mode... (http://laravel.com/docs/configuration#maintenance-mode) Trying to use it returns:

[InvalidArgumentException]      
Command "down" is not defined.

Command I've entered in the terminal for this exception:

php artisan down

My current version:

php artisan --version
Laravel Framework version 4.0.0

Any ideas? Did i miss something, am I still on some old version possibly?

Thanks in advance and best regards, Martin.

Was it helpful?

Solution 2

The first thing I suggest you do is just run php artisan list to get a list of all the available commands. If the up and down commands aren't listed then you probably aren't fully updated.

If you have a bootstrap/compiled.php file try deleting it. Also make sure you pull the latest changes in from the laravel/laravel GitHub repository to update your application skeleton.

Once you've done the above you can again check for the existence of the commands by running php artisan list.

OTHER TIPS

The fix for me was to update the 'providers' array in ./app/config/app.php. I thought I was doing a pretty good job of manually updating the L4 skeleton near the end of the beta period, but there was a minor change in that array (not sure which line) that allowed the 'down' command to finally appear in artisan.

In app/start/global.php (or app/start/artisan.php), you need:

App::down(function() { return Response::make("Be right back!", 503); });

don't you?

Perhaps you could also try updating laravel via composer "composer update" in CLI.

I've just installed a clean Laravel 4 clone and tryed the maintenance mode with it.

Everything's working as supposed...

I've also compared the composer.json files + I'm pretty sure I've done nothing wrong updating to the stable release version even thought my app/start/* php-files remain unchanged.

Summary:

Composer seems to not override the php files in app/start/* which would be needed in order to get the maintenance mode working correctly. Probably there are even more files not being updated. This also makes a lot of sense, since you could have done some important customizations to your application there.

Correct me if I'm wrong... I'll start importing my package into a clean install thought. Don't want to run into more trouble due to this.

Best Regards, Martin.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top