Dependencia entre plugins

Bráulio Bhavamitra braulio at eita.org.br
Wed Sep 18 09:59:59 BRT 2013


2013/9/15 Antonio Terceiro <terceiro at colivre.coop.br>

> On Fri, Sep 13, 2013 at 03:29:16PM -0300, Bráulio Bhavamitra wrote:
> > Oi Terceiro, Rodrigo e comunidade,
> >
> > Uma dúvida que resta é sobre qual seria o melhor lugar para colocar a
> lista
> > de outros plugins que um plugin depende.
> >
> > Se se colocar num método da classe do plugin (por exemplo
> > ShoppingCartPlugin), então o script/noosfero-plugins vai ter dificuldade
> de
> > acessar.
> >
> > Outra alternativa seria criar um arquivo yml (um plugin.yml) e colocar lá
> > esta configuração. Aí fica um pouco mais fácil para o
> > script/noosfero-plugins pegar a informação.
>
> a segunda alternativa é 800% melhor ...
>
Ok. Note que ainda é uma gambiarra. No plugin.yml vai ficar algo como:
dependencies: solr, shopping_cart
(
O certo seria
dependencies:
  - solr
  - shopping_cart

Mais isto é muito mais difícil para via shell script
)

Aí no shell script teria algo como
echo 'dependencies: solr, shopping_cart' | grep 'dependencies:' | sed
's/dependencies: //g' | sed 's/,//'

Veja, isso ainda não rola, não tem como o shell script não depender do
ruby, pois o algoritmo de checagem de dependencias é recursivo e também é
necessário que seja feito via ruby para a ativação do plugin no ambiente. O
código tem que existir de qq forma no ruby.

Ou seja, a única via que vejo é que o script/noosfero-plugins chame um
script ruby que retorne a lista completa de dependencias (os nós árvore de
dependência)


>
> <elocubração>
> no futuro provavelmente seria bom a gente fazer os plugins serem engines
> -- eles praticamente já são isso de qualquer forma.
>
Sim, há várias semelhanças. Mas isso é com certeza um passo maior. Não
posso dizer mais pois não estudei o rails engines.

>
> Aí a gente não precisa de um mecanismo de dependência próprio, a gente
> pode gerar um diretório pra incluir no path do rubygems dinamicamente e
> e deixar o rubygems resolver as dependências.
> </elocubração>
>
Ora ora, isto foi o que já implementei e enviei no outro email. Via require
já funciona :)
http://listas.softwarelivre.org/pipermail/noosfero-br/2013-May/000733.html

Isto já está dado. A questão que resta é as duas ativações (via script e no
ambiente) levando em consideração as dependências.

abraços,
bráulio


> --
> Antonio Terceiro <terceiro at colivre.coop.br>
> Colivre - Cooperativa de Tecnologias Livres
> http://www.colivre.coop.br/
>
>
>
> _______________________________________________
> Noosfero-br mailing list
> Noosfero-br at listas.softwarelivre.org
> http://listas.softwarelivre.org/cgi-bin/mailman/listinfo/noosfero-br
>
>


-- 
"Lute pela sua ideologia. Seja um com sua ideologia. Viva pela sua
ideologia. Morra por sua ideologia" P.R. Sarkar

EITA - Educação, Informação e Tecnologias para Autogestão
http://cirandas.net/brauliobo
http://eita.org.br

"Paramapurusha é meu pai e Parama Prakriti é minha mãe. O universo é meu
lar e todos nós somos cidadãos deste cosmo. Este universo é a imaginação da
Mente Macrocósmica, e todas as entidades estão sendo criadas, preservadas e
destruídas nas fases de extroversão e introversão do fluxo imaginativo
cósmico. No âmbito pessoal, quando uma pessoa imagina algo em sua mente,
naquele momento, essa pessoa é a única proprietária daquilo que ela
imagina, e ninguém mais. Quando um ser humano criado mentalmente caminha
por um milharal também imaginado, a pessoa imaginada não é a propriedade
desse milharal, pois ele pertence ao indivíduo que o está imaginando. Este
universo foi criado na imaginação de Brahma, a Entidade Suprema, por isso
a propriedade deste universo é de Brahma, e não dos microcosmos que também
foram criados pela imaginação de Brahma. Nenhuma propriedade deste mundo,
mutável ou imutável, pertence a um indivíduo em particular; tudo é o
patrimônio comum de todos."
Restante do texto em
http://cirandas.net/brauliobo/blog/a-problematica-de-hoje-em-dia
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.softwarelivre.org/pipermail/noosfero-br/attachments/20130918/eea43f10/attachment.html>


More information about the Noosfero-br mailing list