Você está aqui: Página Inicial Notícias Extraia as versões do seu Buildout a partir do script instance do Zope

Extraia as versões do seu Buildout a partir do script instance do Zope

por Davi Lima última modificação 27/02/2012 19:26
Não sabia que tinha que fixar versões no começo do projeto? Sem problemas. Obtenha um versions.cfg a partir do script 'bin/instance'.

Esta dica foi publicada originalmente no blog de David JB.

Basicamente ele usa comandos do shell para transformar o formato do script "bin/instance1" para o formato do versions.cfg:

cat bin/instance1 | grep eggs | sed -r 's#.*eggs/(.*)-py2.[0-9].*#\1#g' | sed -r 's#-# = #g' | sed -r 's#_#-#g' | grep -E ' = [0-9\.]' | xargs -0 echo -e "[versions]\n" | sed -r 's#^\s+##g' > versions.cfg; cat versions.cfg

Observe que ele deu o exemplo com "instance1", provavelmente porque está aplicando a solução que apresentou em um servidor de produção com múltiplas instâncias de Zope. Caso esteja rodando em um ambiente local, simplesmente substitua "bin/instance1" no comando abaixo por "bin/instance".

Outro caminho: buildout-versions ou buildout.dumppickedversions

Em ambientes de produção, você não pode se dar ao luxo de re-executar um 'bin/buildout -N' com o pacote buildout.dumppickedversions (ou o novo buildout-versions) instalado. Isso resultaria em uma lista dos pacotes utilizados, mas poderia gerar instabilidade no seu ambiente e servidor. Esses produtos devem ser usados somente em ambientes de desenvolvimento ou homologação, cópias fiéis do ambiente de produção, e como nem sempre isso é possível, vale guardar a dica do David JB.