Hiába találták fel az egeret, azért a parancssor sokkal jobban használható. Nézzük meg például, hogy hány gomb van az egeren.
Nem véletlen, hogy nem hallottam a drush-ról, mivel magyarul még nem írt róla senki. Szerencsére a multkori DUG-on részese lehettem Várady Zoltán előadásának.
Nos, a drush egy drupal shell, amivel parancssorból lehet sok drupal adminisztrációs dolgot megcsinálni. Fontos tudni, hogy a drush nem egy modul, ezért teljesen máshogy is kell telepíteni. Én így telepítettem:
cd /usr/local
sudo wget http://ftp.drupal.org/files/projects/drush-All-Versions-2.0.tar.gz
sudo tar xvzf drush-All-Versions-2.0.tar.gz
sudo ln -s /usr/local/drush/drush /usr/local/bin
sudo drush
Ha a /usr/local/bin benne van a $PATH-ban, akkor az utolós parancs is le fog futni. Ezt azért kell sudo-val indítani, mert az első futáskor letölt néhány szükséges programkönyvtárat.
Ha lefutott az parancs, és elolvastuk a kiírt dolgokat, akkor szedjük össze a leesett állunkat. Nagyon fontos, hogy a parancsok, csak a drupal gyökér könyvtárában fognak működni, vagy a -r kapcsolóval kell megadni a könyvtárat.
Na, de mit is tud?
Cache-t törölni (drush cache clear).
Modulokat bekapcsolni-kikapcsolni (drush enable, drush disable).
Modulokat update-elni, úgy, hogy le is tölti az új verziókat, lefuttatja a update-et, ráadasúl a régi verziókat elmenti egy backup könyvtárba. (drush update).
SQL dump-ot készíteni, úgy mint a mysqldump, csak nem kell foglalkozni a mysql felhasználónévvel és jelszóval mert ezt a settings.php-ból veszi. (drush sql dump)
Modulokat letölteni (drush dl coder) Ezután még be kell majd kapcsolni, a drush enable-val.
Cron-t futtatni parancssorból. (drush cron)
Ezenkívűl még sok mást, mindenki válassza ki azt, ami szívének kedves.
Úgyhogy, ha az ember több site-ot üzemeltet, érdemes megfontolni a használatát.
Ezenkívűl az egyes modulok saját hook-okat definiálhatnak a drush-hoz. Ilyen van például a coder modulban is, viszont ebben van egy hiba. Itt a coder/coder.drush.inc -ben a 10-dik sorba a t függvényt dt-re kell módosítani, illetve be is kell kapcsolni.
Hibák
Ajándék nőnek ne nézd a lovát (vagy valami ilyesmi), de azért mégis.
Drupal core-t nem tudja frissíteni, pedig nem lenne bonyolult, biztos meg van az oka.
Nincs hozzá autocomple, (magyarul nem tudja tab-ra kiegészíteni az argumentumokat). Szerintem ez lassan meg fog változni, ha sokan használják. Esetleg érdemes lesz csinálni belőle egy debian/ubuntu csomagot és abba beletenni.
Összefoglalva
Nálam ennek a modulnak a CCK és a views modulok mellett van a helye. Szinte már a drupal core lenne a helye, de ugye oda nem lehet betenni.