DRUSH Navaja Suiza DRUPAL

  • Published on
    13-Mar-2015

  • View
    58

  • Download
    0

Embed Size (px)

DESCRIPTION

linea de comandos para agilizar operaciones en Drupal

Transcript

isaac.el.cecNT021versin:17/06/2009

Nosabemosloquenosabemos R.Ackoff.

DRUPAL NotasTcnicas

IntroaDRUSHLanavajasuizadeDRUPALltimarevisin:3/08/2009 Versionesutilizadas: UBUNTU9.04 DRUSH2.0

Resumen: Comosecomentaensudescripcinenlapginadelproyecto(http://drupal.org/project/drush), drushesunaespeciedeNavajaSuizaparalosqueutilizamosDRUPAL.Otroslocomparanalaorden aptgetoaptitudedeDebian... drushesunaordendelineaparasistemas*NIX(Unix,Linux,...).Enrealidad,msqueunaorden esuninterpretedeordenestiposhell.Sunombreestformadoporlas3primerasletrasdeDRUPAL ylasdosdeSHELL(y,porende,extensintpicadelosscriptsdeshellb>.sh).Enesteartculo vamosarepasaralgunasdesusfuncionalidades,empezando,claroest,porsuinstalacin. Instalacin: A)Obtenerelpaquete.Lopodemosbajardelapginadelproyectohttp://drupal.org/project/drush . HayquesealarquedrushesindependientedelaversindeDRUPAL,perorequierePHP5.2. Atencin:UnodelosproblemastpicosqueaparecenalutilizardrusheslafamosaMemory exahusted.Elmosqueoessupremocuando(comoesmicaso)enelfichero [/etc/php5/apache2/php.ini]tienesladeclaracindememory_limit=128M...(la verdadesquesetequedalacaradetontounrato...;) Elproblemaesquedrushutilizaladeclaracindememory_limitdeesteotrofichero: [/etc/php5/cli/php.ini]... (Claro!!!,piensasluego,drushnoejecutaphpdesdeapache2,sinodesdelalneadeordenes!!!). Quedisavisados. B)Descomprimirelpaquete,bajo[/tmp]porejemplo(odirectamentedondeloqueriscolocar verpuntosiguiente).Comoresultadoobtenemosunnuevodirectoriollamado[drush]. C)Movertodoeldirectorio[drush]adondemasnosconvenga.Atencin:nosetratadeun mduloDRUPAL,sinodeunautilidadaniveldeshelldesistemaoperativo,porloquenohayque ponerloenlainstalacinDRUPAL!!!. D)Dentrodeldirectorio[drush]verificarquelosficheros[drush]y[drush.php]tenganpermisos

Licencia:CreativeCommons3.0ReconoceralAutorPermitidaCopiaNoComercial Vertextocompletodelalicenciaahttp://es.creativecommons.org/ WWW.PROPIUM.ORG Paracontactarconelautor:isaac.el.cec@gmail.com Pgina1de5

isaac.el.cecNT02

Nosabemosloquenosabemos R.Ackoff.

DRUPAL NotasTcnicas

IntroaDRUSHLanavajasuizadeDRUPAL

deejecucinyelrestodelosficherospermisosdelectura.Enotrocaso,daresospermisos. E)Crearunaconexinsimblica(symboliclink)alfichero[drush]deldirectorio[drush]en algndirectorioincluidoenlavariable$PATHdelusuariooenladelsistema.Prestaratencinaeste punto,dadoquepuedehacersedeformaque[drush]seaaccesiblesoloparaunusuario(envariable $PATHdelusuario)oparatodoslosusuariosdelsistema(envariable$PATHdelsistema). Enmicaso,trabandoconUBUNTU,hecreadoundirectorio[bin]bajoeldirectoriobasedemi usuario[$HOME/bin].LainstalacinUBUNTUpordefectoyavieneconelfichero[.profile]de cadausuarioconfiguradodeformaquesiexisteeldirectorio[$HOME/bin],loaadealavariable $PATHdeeseusuario.Sinoesas,solotenisqueaadirelsiguientecdigoalfichero[.profile] devuestrodirectorio$HOME#ParaquePATHincluya,siexiste,eldirectoriobindelusuario: if[d"${HOME}/bin"];then PATH="${HOME}/bin:${PATH}" fi

ATENCIN:Traseditarelfichero[.profile]hayqueejecutarlodenuevoconlaorden: ..profile#=puntoespaciopuntoylapalabraprofile Trasverificarloanterior,hemovidoelcontenidodeldirectorio[/tmp/drush](creadoal descomprimirelpaquete)a[$HOME/bin/drush.dir]yhecreadoen[$HOME/bin/]unlink simblico[$HOME/bin/drush]queapuntaalfichero[$HOME/bin/drush.dir/drush](esteltimo ficheroeselshellscriptdeejecucindeDRUSH.).Laordenparaelloes: cd$HOME/bin lns./drush.dir/drushdrush NotaImportante:Aldirectoriobajo[bin]lohellamado[drush.dir]paraquenoexistaun conflictodenombresconelficherodelinksimblicocuyonombreser[drush]. F)Verificarquefunciona:desdeundirectoriodistinto,porejemplodesdeeldirectorio$HOME delusuario,darlaorden: $drushLicencia:CreativeCommons3.0ReconoceralAutorPermitidaCopiaNoComercial Vertextocompletodelalicenciaahttp://es.creativecommons.org/ WWW.PROPIUM.ORG Paracontactarconelautor:isaac.el.cec@gmail.com Pgina2de5

isaac.el.cecNT02

Nosabemosloquenosabemos R.Ackoff.

DRUPAL NotasTcnicas

IntroaDRUSHLanavajasuizadeDRUPAL

Lasalidahadeseralgoparecidoaesto...Executeadrushcommand.Run`drushhelp[command]`toviewcommandspecifichelp. Examples: drushdlcckzenDownloadCCKmoduleandZentheme. drushuri=http://example.comstatusShowstatuscommandfortheexample.commultisite. drushhelppipeAspacedelimitedlistofcommands Options: r,root=Drupalrootdirectorytouse(default:currentdirectory) l,uri=URIofthedrupalsitetouse(onlyneededinmultisite environments) v,verboseDisplayextrainformationaboutthecommand. d,debugDisplayevenmoreinformation,includinginternal messages. q,quietHidealloutput y,yesAssume'yes'asanswertoallprompts s,simulateSimulateallrelevantactions(don'tactuallychangethe system) i,includeAlistofpathstosearchfordrushcommands c,configSpecifyaconfigfiletouse.Seeexample.drushrc.php u,userSpecifyausertologinwith.Maybeanameoranumber. b,backendHidealloutputandreturnstructureddata(internaluse only). p,pipeEmitacompactrepresentationofthecommandfor scripting. Commands: helpPrintthishelpmessage.Usefiltertolimitcommandlisttoonecommand file(e.g.filter=pm) cronRunallcronhooks. updatedbExecutetheupdate.phpprocessfromthecommandline statusProvidesabirdseyeviewofthecurrentDrupalinstallation,ifany. scriptRunphpscript(s). cacheclearClearallcaches. watchdogshowShowsrecentwatchdoglogmessages.Optionallyfilterforaspecifictype. watchdogdeleteDeleteallmessagesoronlythoseofaspecifiedtype. syncRsynctheDrupaltreeto/fromanotherserverusingssh. evalEvaluatearbitraryphpcodeafterbootstrappingDrupal. enableEnableoneormoremodules. disableDisableoneormoremodules. uninstallUninstalloneormoremodules. statusmodulesShowmoduleenabled/disabledstatus refreshRefreshupdatestatusinformation updatecodeUpdateyourprojectcode updateUpdateyourprojectcodeandapplyanydatabaseupdatesrequired(update.php) infoReleaseinformationforaproject dlDownloadcoreDrupalandprojectslikeCCK,Zen,etc. testmailRunalltestsandmailtheresultstoyourteam. testcleanDeleteleftovertablesandfilesfrompriortestruns. sqlconfPrintdatabaseconnectiondetails. sqlconnectAstringforconnectingtotheDB. sqldumpExportstheDrupalDBasSQLusingmysqldump. sqlqueryExecuteaqueryagainstthesitedatabase. sqlloadCopysourcedatabasetotargetdatabase. sqlcliOpenaSQLcommandlineinterfaceusingDrupalscredentials.

Oslopodiscreer?

Licencia:CreativeCommons3.0ReconoceralAutorPermitidaCopiaNoComercial Vertextocompletodelalicenciaahttp://es.creativecommons.org/ WWW.PROPIUM.ORG Paracontactarconelautor:isaac.el.cec@gmail.com Pgina3de5

isaac.el.cecNT02

Nosabemosloquenosabemos R.Ackoff.

DRUPAL NotasTcnicas

IntroaDRUSHLanavajasuizadeDRUPALATENCIN: Paraquedrushtrabajecorrectamente, esnecesariodarlaordeneneldirectoriorazdelainstalacinDRUPAL.

Algunasfuncionalidadesbsicas: drushpermitedescargar,instalar,habilitar,deshabilitar,desinstalar...yACTUALIZAR!!!los mdulos,plantilla(themes),perfiles(profiles)ytraduccionesdesdelalneadeordenes. Veamosalgnejemplo:

Ordenparadescargarydescomprimirlosmdulos[cck]y[views]en[sites/all/modules]: Ordenparahabilitarlosmdulos[cck]y[views]enlainstalacinDRUPAL. Ordenparadescargarydescomprimirlaplantilla(theme)[marinelli]en[sites/all/themes]: OrdenparaACTUALIZARTODO!!!alasversionesactuales:

$drushdlcckviews

$drushenablecckviews

$drushdlmarinelli

$drushupdate

Licencia:CreativeCommons3.0ReconoceralAutorPermitidaCopiaNoComercial Vertextocompletodelalicenciaahttp://es.creativecommons.org/ WWW.PROPIUM.ORG Paracontactarconelautor:isaac.el.cec@gmail.com Pgina4de5

isaac.el.cecNT02

Nosabemosloquenosabemos R.Ackoff.

DRUPAL NotasTcnicas

IntroaDRUSHLanavajasuizadeDRUPAL

Funcionalidadesdeadministracindelsitio:

Ordenparaconsultarelestatusgeneraldelainstalacin(informadelnombredeusuarioyla palabradepasodelabasededatos...):

$drushstatus

Ordenparalimpiarlasmemoriasintermedias(cache): Ordenparaarrancarelprocesodel[cron]: Ordenparahacerunvolcadodelabasededatossobreelficherodump_BBDD.sql(aviso:si noseponelaopcin[resultfile=xxx]elvolcadosehaceporlasalidaestandard)$drushsqldumpresultfile=dump_BBDD.sql

$drushcacheclear

$drushcron

Haymuchasmsfuncionalidades,peroconestoyapodisirempezando...Porcierto,algunos mdulosaadenfuncionalidadesadrushconsultarhttp://drupal.org/project/modules?text=drush Consejosfinales: Eneldirectorio[drush]encontrareisunficherollamado[example.drushrc.php].Haceduna copiadeesteficheroyllamadla[drushrc.php].Editandoesteltimoficheropodemosconfigurar algunoscomportamientosdedrush,porejemplo,elniveldemensajes(amimegustaenterarmede todo...)

Nota:Heprobadotodasycadaunadelasordenesqueheconsignadoenesteartculosobreunservidorlocal UBUNTU9.04yunainstalacinDRUPAL6.12

Licencia:CreativeCommons3.0ReconoceralAutorPermitidaCopiaNoComercial Vertextocompletodelalicenciaahttp://es.creativecommons.org/ WWW.PROPIUM.ORG Paracontactarconelautor:isaac.el.cec@gmail.com Pgina5de5