Como uso os módulos beta Perl de scripts beta Perl?
Se meu código Perl tiver um local de código de produção e um código "beta" (por exemplo, o Perl de produção nos codificará em/usr/code/scripts
, O código BETA Perl está em/usr/code/beta/scripts
; bibliotecas Perl de produção estão em/usr/code/lib/perl
versões BETA e BETA dessas bibliotecas estão em/usr/code/beta/lib/perl
, existe uma maneira fácil de conseguir essa configuração?
Os requisitos exatos são:
O código deve ser o mesmo em produção e local BETA.
Para esclarecer, para promover qualquer código (biblioteca ou script) do BETA para a produção, a ÚNICA coisa que precisa acontecer é literalmente emitircp
comando do BETA ao local do produto -o nome e o conteúdo do arquivo devem permanecer idênticos.
As versões BETA dos scripts devem chamar outros scripts BETA e bibliotecas BETA (se existir) ou bibliotecas de produção (se as bibliotecas BETA não existirem)
Os caminhos de código devem ser os mesmos entre BETA e produção, com exceção do diretório base (/usr/code/
vs/usr/code/beta/
)
Os scripts devem estar todos no mesmo diretório basemas eles podem estar em seus subdiretórios a um nível de profundidade arbitrário (isso exclui o clássicouse lib "$FindBin::Bin/../lib"
solução da seção31.13 use lib do"Programação Perl")
Vou apresentar como resolvemos o problema como resposta a esta pergunta, mas gostaria de saber se existe uma maneira melhor.