Ticket #1344 (closed melhoria: fixed)

Opened 9 years ago

Last modified 9 years ago

Informar na tela de login a versão, trunk, tag, etc.

Reported by: antonio-carlos.silva Owned by: antonio-carlos.silva
Priority: alta Milestone: Expresso 2.2
Component: API Version: branch 2.2
Severity: média Keywords: SERPRO 2.2 UNIFICA
Cc: lavoisier.vieira@… WorkGroup: Gestão de Integração

Description

Informar, na tela de login, a versão, trunk, tag, etc. que identifiquem para o usuário o Expresso em uso.

Change History

comment:1 Changed 9 years ago by niltonneto

Interessante. Mas essa informação ficará contida onde, já que normalmente usamos "svn export" do projeto para gerar o pacote para a comunidade? Como vocês implementaram aí no Serpro, para obter essa informação automaticamente, sem os arquivos da pasta ".svn"?

comment:2 Changed 9 years ago by antonio-carlos.silva

No Serpro nós codificamos um script python que "gera" o pacote de distribuição. Criamos uma pasta na raiz do expresso, "infodist".

Esta pasta contem dois arquivos:

Um arquivo com os dados que identificam a versão , branch e tag. Outro com a log do svn até a revisão da distribuição.

O script contata o subversion, faz checkout da pasta "infodist". A seguir gera os arquivos descritos anteriormente, e efetua o commit. Como este commit altera a revisão, esta já foi considerada para construir os arquivos.

Por último é feito o export.

Assim o export já contempla os daddos de distribuição.

O módulo de administração é exibido um link para o administrador ter acesso ao arquivo que lista a log até a revisão distribuída para produção.

A tela de login, no rodapé, exibe os dados que identificam a versão em uso....

comment:3 Changed 9 years ago by zapa

É nosso requisito que tenhamos a versão/revisão no rodapé da tela de login em função da diversidade de clientes, inclusive não administrados por nós. Quando nos reportam problemas/bugs temos como identificar qual a revisão instalada neste cliente, se aplicável ou necessita

upgrade de revisão.

comment:4 Changed 9 years ago by niltonneto

OK, mas essa pasta "infodist" não é exportada na geração, correto? É só pra vocês usarem internamente. E você pretendem disponibilizar essa ferramenta no SVN da comunidade?

comment:5 Changed 9 years ago by antonio-carlos.silva

A pasta "infodist" é exportada contendo os arquivos gerados pelo script python.

E pretendemos disponibilizar o script.

comment:6 Changed 9 years ago by niltonneto

Otimo, colocando no contrib vai ser muito proveitoso mesmo. Obrigado.

comment:7 Changed 9 years ago by zapa

Antonio,

Pelo que entendi o login irá testar a existência deste diretório infodist, se existir

busca as informações da revisão, se não existir deixa como está.

São estas as alterações?

comment:8 Changed 9 years ago by antonio-carlos.silva

Exato.

No caso do login, se não existir o arquivo com os dados de versão, fica como esta hoje.

No caso da log do svn(disponível só para o administrador do expresso), mostra msg alertando que as informações não estão disponíveis.

comment:9 Changed 9 years ago by zapa

Pefeito, contempla para quem tem a necessidade de informação da revisão no login e changelog para o administrador e não interfere para quem não possui a funcionalidade.

comment:10 Changed 9 years ago by eduardoalex

  • Owner changed from ninguem to antonio-carlos.silva
  • Priority changed from normal to alta

Reativado na reunião da comunidade.

comment:11 Changed 9 years ago by antonio-carlos.silva

Implementado na revisão [3480]

Na exibição da log do svn foi incluido um link para o track.

Então ficou assim:

Um script python( configurável) aponta para o subversion da comunidade e mostra os "branches" disponíveis. É possível selecionar um branch para distribuição.

Após a seleção é pedido o preenchimento de um cpo de texto, com no máximo 12 caracteres, para identificar a distribuição. É um texto livre que sera exibido na tela de login com a revisão do subversion que gerou a distribuição.

O script faz um "export" para uma determinada pasta(configuravel) e dentro dela cria outra com o nome "infodist".

Dentro da infodist são gerados dois arquivos:

O primeiro com a log do subversion. Esta podera ser vista pelo usuario administrador no módulo "admin" opções do servidor.

o segundo tem os dados que são mostrados na tela de login logo acima do "Powered by eGroupWare".

Só se a pasta infodist existir, com os arquivos esperados dentro dela ,é que a interface vai mostrar alteração.

comment:12 Changed 9 years ago by antonio-carlos.silva

  • Status changed from new to closed
  • Resolution set to fixed

Incluidos os scripts python em security/distribuição.

Detalhes:

Pre-requisitos dos scripts:

Cliente do subversion instalado na estação. Produto python-svn instalado na estação.

Ao final da execução o script pode fazer o ftp do tgz gerado para um servidor. Isto pode ser configurado em ger2_conf.py

Revisão [3481]

comment:13 Changed 9 years ago by rodsouza

Como faço para que tal funcione corretamente e não gere problemas no PHP por não encontrar o arquivo necesário?

comment:14 Changed 9 years ago by antonio-carlos.silva

Bom dia Rodrigo.

Testando existencia do arquivo antes de efetuar o include, para evitar msg do php.

Alterado na revisão [3503].

comment:15 Changed 9 years ago by antonio-carlos.silva

  • Status changed from closed to reopened
  • Resolution fixed deleted

comment:16 Changed 9 years ago by antonio-carlos.silva

Informações da distribuição incluídos na tela do setup.

Revisão [3540].

Script de distribuição sendo alterado.

comment:17 Changed 9 years ago by antonio-carlos.silva

  • Status changed from reopened to closed
  • Resolution set to fixed

Scripts adicionados no "contrib", pasta scriptGerDistrib.

comitado no "contrib" revisão [3545].

Pasta "security/distribuição" removida na revisão [3546].

comment:18 Changed 9 years ago by niltonneto

Antonio,

Você se baseou no  novo modelo de versionamento?

comment:19 Changed 9 years ago by antonio-carlos.silva

Nilton,

Exato. O script lista os branchs existentes. É possível selecionar um branch para mostrar os tags do branch. Selecionado o tag, o script exporta o codigo do svn, cria a pasta "infodist" com dados do svn. Executa um script, qualquer um que for configurado para executar. Gera um tgz. Faz o ftp do tgz para um servidor de "publicação" do arquivo, se configurado....

Note: See TracTickets for help on using tickets.