plugins

sfPropelSyncContentPlugin: Plugin para importar/exportar o banco de dados entre ambientes (dev/prod)

Saiu no dia 16/10/2008 um novo plugin chamando “sfPropelSyncContentPlugin”:http://www.symfony-project.org/plugins/sfPropelSyncContentPlugin

Esse plugin tem a função de tornar mais prático a manipulação do banco de dados. Com ele podemos facilmente importar todo o banco de dados de produção para desenvolvimento e vice-versa. Ele utiliza o mysqldump e alguns outros comandos do mysql.

Podemos atualizar nossa base de desenvolvimento com os dados de produção com o seguinte comando:

$ symfony propel-sync-content frontend dev from prod@production

Por outro lado, podemos fazer o inverso, ou seja, atualizar a base de produção com os dados de desenvolvimento:

$ symfony propel-sync-content frontend dev to prod@production

O plugin também permite atualização de diretórios. Basta configurar o app.yml em: apps/frontend/config/app.yml

all:
  sfPropelSyncContentPlugin:
    content:
      * "web/uploads"
 

Com a configuração acima, além de atualizarmos a base de dados, vamos atualizar a pasta web/upload também.

Valeu!

plugins
producao
symfony

Comments (0)

Permalink

Instalando plugins no symfony 1.1

No symfony 1.1, o sistema de plugins foi totalmente reescrito. Isto vai permitir melhoras no modo de trabalho e facilitar o uso no seu projeto.

*Instalando um plugin*

Para instalar plugins de um channel padrão (o oficial do symfony), não é mais necessário usar a URL toda. Basta:

$ php symfony plugin:install sfGuardPlugin

Isto irá instalar o plugin sfGuardPlugin. Entretanto, há mais opções disponíveis:

$ php symfony plugin:install –stability=beta sfGuardPlugin

Ele irá instalar a versão beta do plugin no seu projeto, o que é útil se você quiser testar uma versão mais recente, mas não é recomendável pois é uma versão non-stable (instável).

Você pode também especificar qual versão do plugin quer instalar:

$ php symfony plugin:install –release=1.0.0 sfGuardPlugin

Ele irá instalar a versão 1.0.0 do plugin.

Vários plugins são dependentes de outros para funcionar completamente. No symfony 1.0, você tinha que instalar uma série de plugins antes de poder instalar o plugin de sua escolha. No symfony 1.1, basta você digitar o comando a seguir, que irá instalar o plugin e suas dependências:

$ php symfony plugin-install install-deps sfGuardPlugin

Outra melhoria, graças à utilização de canais PEAR é a capacidade de utilização de diversos canais (channels) diferentes.
Por padrão, o symfony usa o channel oficial (plugins.symfony-project.org) que vai pelo nome de symfony-plugins (não precisa especificar na instalação do plugin). Para usar outros, primeiro adicione um novo:

$ php symfony plugin:add-channel custom-channel.example.com

Agora você pode instalar plugins vindo deste canal especificando na instalação:

$ php symfony plugin:install –channel=custom-channel.example.com sfGuardPlugin

Para saber mais parâmetros utilize o help:

$ php symfony help plugin:install

Também é possível fazer uma referência direta ao plugin que quer instalar, tanto usando a URL completa como um caminho local:

$ php symfony plugin:install http://www.example.com/sfGuardPlugin-1.0.0.tgz

ou

$ php symfony plugin:install /home/stefan/plugins/sfGuardPlugin-1.0.0.tgz

*Desinstalando um plugin*

Para desinstalar um plugin do seu projeto continua fácil. Um simples comando fará o truque:

$ php symfony plugin:uninstall sfGuardPlugin

Para desinstalar um plugin vindo de outro canal (channel), você precisa especificá-lo:

$ php symfony plugin:uninstall –channel=custom-channel.example.com sfGuardPlugin

Para saber qual canal o plugin está instalado, use o plugin:list.

*Atualizando um plugin*

Também é muito simples. Basta o comando a seguir, e seu plugin estará com a última versão:

$ php symfony plugin:upgrade sfGuardPlugin

Os parâmetros –stability, –release e –channel, também está disponível para esta tarefa e é aplicada do mesmo modo.

*Listando os plugins instalados*

A tarefa mais fácil de todas é listar os plugins instalados. Para isso, basta o comando:

$ php symfony plugin:list

Este comando não tem parâmetros.

Como você pode ver, a reescrita do sistema de plugins está mais poderosa e permite um gerenciamento mais fácil dos plugins.

Tutorial em “inglês”:http://www.symfony-project.org/blog/2008/06/20/how-to-work-with-plugins-in-symfony-1-1

Até mais.

php
plugins
symfony

Comments (0)

Permalink