SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Renato Vasconcellos Gomes
renato@taller.net.br
Drush
O poder do Drupal
na linha de comando
O que vem pela frente?
● O que é Drush
● Instalação
● Documentação
● Links interessantes
● Comandos basicos
● Comandos Personalizados
● Drush make
● Drush para Devs
● Extras
O QUE É DRUSH?
Drush é uma interface
de linha de comando
para o Drupal.
drush.org
PORQUE USAR?
Aumento de
Produtividade
Drush: More beer, less effort
vimeo.com/5207683
● Executar consultas SQL
● Migrações de banco de dados
● Backups
● Recuperar/redefinir senhas
● Execução da cron
● Automação de rotinas
● Comandos personalizados
● Etc
Algumas possibilidades...
Instalação
$ cd $HOME
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
Composer
$ composer global require drush/drush:7.*
$ sed -i '1i export PATH="$HOME/.composer/vendor/bin:$PATH"'
$HOME/.bashrc
$ source $HOME/.bashrc
Drush via Composer
Documentação
Oficial
drush.org
Comunidade
drushcommands.com
IRC
#drush
freenode.org
COMANDOS
BÁSICO
$ drush si standard --db-url=mysql://root:pass@host/db
$ drush ucrt user_name --password=123456
$ drush urol administrator --name=user_name
$ drush arquive-dump default
$ drush sqlq “select * from system”
COMANDOS
PERSONALIZADOS
function my_module_drush_command() {
$items = array();
$items['custom-command'] = array(
‘description’ => ‘My custom command’,
‘alias’ => array(‘ccm’),
);
return $items;
}
function drush_custom_command() {
/* Your code here */
}
my_module.drush.inc
DRUSH MAKE
DRUPAL 7
# Drush make example - Install Drupal 7
core = 7.x
api = 2
projects[] = drupal
https://raw.githubusercontent.com/drush-ops/drush/master/examples/example.make
COMO USAR
$ cd path/to/drupal
$ drush make path/to/file/file_name.make
Site Aliases
$aliases[local] = array(
'uri' => 'example.local',
'root' => str_replace('drush/aliases', 'docroot', dirname
(__FILE__)),
);
$aliases['stage'] = array(
'uri' => 'stage.example.com',
'root' => '/var/www/stage.example.com/docroot',
'remote-host' => 'example.com',
'remote-user' => 'user',
);
project.aliases.drushrc.php
COMO USAR
$ cd path/to/drupal
# Limpar todos os caches de Stage remotamente.
$ drush @project.stage cc all
# importar DB de Stage para Local.
$ drush sql-sync @project.stage @project.local
Módulos
Complementares
Módulo
Módule builder
drupal.org/project/module_builder
Módulo Genova
drupal.org/project/genova
Módulo
Drush Clone
drupal.org/project/drush_clone
Módulo
Drush Entity
drupal.org/project/drush_entity
Módulo
Drush Issue
Queue Commands
drupal.org/project/drush_iq
E NO DRUPAL 8?
DRUPAL CONSOLE
drupalconsole.com
drupalconsole.com
● @revagomes
● about.me/revagomes
● renato@taller.net.br
Obrigado!

Mais conteúdo relacionado

Mais procurados

Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootável
Francis Torres
 

Mais procurados (20)

Python
PythonPython
Python
 
Aula02 - JavaScript
Aula02 - JavaScriptAula02 - JavaScript
Aula02 - JavaScript
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Direccionamiento de los discos duros
Direccionamiento de los discos durosDireccionamiento de los discos duros
Direccionamiento de los discos duros
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para Web
 
Programando com Python
Programando com PythonProgramando com Python
Programando com Python
 
3 DRAEI - Técnicas de diagnóstico e reparação de avarias
3   DRAEI - Técnicas de diagnóstico e reparação de avarias3   DRAEI - Técnicas de diagnóstico e reparação de avarias
3 DRAEI - Técnicas de diagnóstico e reparação de avarias
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Segurança de Rede
Segurança de RedeSegurança de Rede
Segurança de Rede
 
Construcao de Algoritmos - Aula 04
Construcao de Algoritmos - Aula 04Construcao de Algoritmos - Aula 04
Construcao de Algoritmos - Aula 04
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectos
 
Boas práticas no desenvolvimento de software
Boas práticas no desenvolvimento de softwareBoas práticas no desenvolvimento de software
Boas práticas no desenvolvimento de software
 
Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootável
 
correio eletronico
correio eletronicocorreio eletronico
correio eletronico
 
Programação Web com HTML e CSS
Programação Web com HTML e CSSProgramação Web com HTML e CSS
Programação Web com HTML e CSS
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
 
Firewall
FirewallFirewall
Firewall
 
Virus e antivirus
Virus e antivirusVirus e antivirus
Virus e antivirus
 
Aula 1
Aula 1Aula 1
Aula 1
 

Destaque

Introdução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de softwareIntrodução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de software
Jaime Schettini
 
Desenvolvimento Iterativo e Incremental
Desenvolvimento Iterativo e IncrementalDesenvolvimento Iterativo e Incremental
Desenvolvimento Iterativo e Incremental
Robson Silva Espig
 

Destaque (9)

Vocabularios en Drupal 7.15
Vocabularios en Drupal 7.15Vocabularios en Drupal 7.15
Vocabularios en Drupal 7.15
 
UnP Eng. Software - Aula 5
UnP Eng. Software - Aula 5UnP Eng. Software - Aula 5
UnP Eng. Software - Aula 5
 
DrupalCamp Lisboa 2011
DrupalCamp Lisboa 2011DrupalCamp Lisboa 2011
DrupalCamp Lisboa 2011
 
Boas práticas para deploy contínuo com drupal
Boas práticas para deploy contínuo com drupalBoas práticas para deploy contínuo com drupal
Boas práticas para deploy contínuo com drupal
 
Introdução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de softwareIntrodução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de software
 
Continuous Integration, Automated Builds e Continuous Deploy, desenvolvimento...
Continuous Integration, Automated Builds e Continuous Deploy, desenvolvimento...Continuous Integration, Automated Builds e Continuous Deploy, desenvolvimento...
Continuous Integration, Automated Builds e Continuous Deploy, desenvolvimento...
 
Feature injection - descobrindo e entregando valor testável
Feature injection - descobrindo e entregando valor testávelFeature injection - descobrindo e entregando valor testável
Feature injection - descobrindo e entregando valor testável
 
Desenvolvimento Iterativo e Incremental
Desenvolvimento Iterativo e IncrementalDesenvolvimento Iterativo e Incremental
Desenvolvimento Iterativo e Incremental
 
Team building - Software depende de relacionamento
Team building  - Software depende de relacionamentoTeam building  - Software depende de relacionamento
Team building - Software depende de relacionamento
 

Semelhante a Drush - O poder do Drupal na linha de comando

Drupal workshop ist 2014
Drupal workshop ist 2014Drupal workshop ist 2014
Drupal workshop ist 2014
Ricardo Amaro
 
Drupal 7 Direto das Trincheiras
Drupal 7  Direto das TrincheirasDrupal 7  Direto das Trincheiras
Drupal 7 Direto das Trincheiras
Rafael Caceres
 

Semelhante a Drush - O poder do Drupal na linha de comando (20)

Construção e provisionamento de ambientes de desenvolvimento virtualizados
Construção e provisionamento de ambientes  de desenvolvimento virtualizadosConstrução e provisionamento de ambientes  de desenvolvimento virtualizados
Construção e provisionamento de ambientes de desenvolvimento virtualizados
 
MigraçãO
MigraçãOMigraçãO
MigraçãO
 
Containers PostgreSQL com a Crunchy Container Suite
Containers PostgreSQL com a Crunchy Container SuiteContainers PostgreSQL com a Crunchy Container Suite
Containers PostgreSQL com a Crunchy Container Suite
 
Drupal workshop ist 2014
Drupal workshop ist 2014Drupal workshop ist 2014
Drupal workshop ist 2014
 
Drupal 7 Direto das Trincheiras
Drupal 7  Direto das TrincheirasDrupal 7  Direto das Trincheiras
Drupal 7 Direto das Trincheiras
 
Nodejs justdigital
Nodejs justdigitalNodejs justdigital
Nodejs justdigital
 
PHP e a (in)segurança de aplicações
PHP e a (in)segurança de aplicaçõesPHP e a (in)segurança de aplicações
PHP e a (in)segurança de aplicações
 
Docker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG CabreúvaDocker Para Maiores - GDG Cabreúva
Docker Para Maiores - GDG Cabreúva
 
Introdução ao Docker
Introdução ao DockerIntrodução ao Docker
Introdução ao Docker
 
Desenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLIDesenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLI
 
Vagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizadoVagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizado
 
Fundamentos de Programação Front-End
Fundamentos de Programação Front-EndFundamentos de Programação Front-End
Fundamentos de Programação Front-End
 
Docker - minicurso utfpr 2017
Docker -  minicurso utfpr 2017Docker -  minicurso utfpr 2017
Docker - minicurso utfpr 2017
 
Apresentação zend framework 2 parte 1
Apresentação zend framework 2   parte 1 Apresentação zend framework 2   parte 1
Apresentação zend framework 2 parte 1
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo real
 
Opennebula instalação
Opennebula instalaçãoOpennebula instalação
Opennebula instalação
 
Instalando o MySQL em menos de 10 minutos
Instalando o MySQL em menos de 10 minutosInstalando o MySQL em menos de 10 minutos
Instalando o MySQL em menos de 10 minutos
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQL
 
Redis um banco chave valor
Redis um banco chave valorRedis um banco chave valor
Redis um banco chave valor
 
Consegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + PuppetConsegi 2011: Ganeti + Puppet
Consegi 2011: Ganeti + Puppet
 

Mais de Renato Vasconcellos Gomes

Construindo um site com drupal sem saber programar.
Construindo um site com drupal sem saber programar.Construindo um site com drupal sem saber programar.
Construindo um site com drupal sem saber programar.
Renato Vasconcellos Gomes
 

Mais de Renato Vasconcellos Gomes (7)

Workshop - Construindo um site com drupal sem saber programar.
Workshop - Construindo um site com drupal sem saber programar.Workshop - Construindo um site com drupal sem saber programar.
Workshop - Construindo um site com drupal sem saber programar.
 
Construindo um site com drupal sem saber programar.
Construindo um site com drupal sem saber programar.Construindo um site com drupal sem saber programar.
Construindo um site com drupal sem saber programar.
 
Drupal - Perfis de instalacao e Drush make
Drupal - Perfis de instalacao e Drush makeDrupal - Perfis de instalacao e Drush make
Drupal - Perfis de instalacao e Drush make
 
introdução ao drupal
introdução ao drupalintrodução ao drupal
introdução ao drupal
 
Drupal a escolha certa para o seus próximos projetos
Drupal   a escolha certa para o seus próximos projetosDrupal   a escolha certa para o seus próximos projetos
Drupal a escolha certa para o seus próximos projetos
 
Drupal a escolha certa para os seus projetos
Drupal   a escolha certa para os seus projetosDrupal   a escolha certa para os seus projetos
Drupal a escolha certa para os seus projetos
 
Perfis de instalação e distribuições no drupal
Perfis de instalação e distribuições no drupalPerfis de instalação e distribuições no drupal
Perfis de instalação e distribuições no drupal
 

Drush - O poder do Drupal na linha de comando