Monthly Archive for abril, 2009

BrDesktop Lenny

Fiquei muito contente em saber que saiu a versão do BrDesktop Lenny.

É um ótimo projeto brasuca e que merece nosso aplauso pela dedicação de seus desenvolvedores.

http://br-linux.org/2009/lancamento-do-brdesktop-lenny-501/

Site oficial: http://brdesktop.org/cdd

Velhos conhecidos….

Dabian Lenny 5.0

No mesmo sentido do post do Ubuntu, vai este post indicando algumas dicas para deixar o Debian Lenny mais atraente.

Post do GuiaDoHardware

Post do Alexandre Alencar

Controle manual de transações em testes unitários

Eu criei alguns testes unitários que se utilizam do Hibernate + Spring, facilitando e muito a minha vida para programá-los.

Mas porém, quando me deparei com algumas MATERIALIZED VIEWs do Oracle, que , somente são atualizadas quando é feito um commit, conforme foram criadas aqui no meu banco de dados, sendo assim, eu precisei fazer commit nas transações do Junit.

O que ocorre é que , eu utilizo como classe pai do meu teste unitário uma classe do Spring que controla as transações, abrindo uma para cada método de teste do TU, e faz com que em todos os momentos seja feito rollback no banco, fazendo com que meu teste unitário não reflita no banco de dados. O que me deixa com o mesmo ambiente de teste sempre, sem alteração. Esta classe é a AbstractTransactionalDataSourceSpringContextTests .

Para buscar o controle da transação corrente eu utilizei 3 métodos  bem interessantes, que estão disponíveis na classe mesmo, são eles:

setComplete() -> Chamando este método antes de terminar o TU, a transação será comitada, e não será feito o rollback padrão.
endTransaction() -> Fecha, acaba com a transação atual.
startNewTransaction() -> Abre, inicia uma nova transação

Assim eu consigo efetuar o commit quando preciso, e na hora em que preciso, persistindo assim os dados no meu banco de dados. Claro, que esta situação é uma exceção, onde eu salvo os dados no banco, que por si só atualiza minha materialized view, consulto novamente os dados para validação, e depois executo um teste de exclusão dos mesmos dados inseridos, comitando também.

Ubuntu 9.04

Use Linux ! Seja Livre ! Use Ubuntu ! Baixe por Torrent !

 

 Chegou a nova versão :
Ubuntu Jaunty Jackalope

 

 

Como sempre o ubuntu segue a risca o seu planejamento de lançamentos de versões, de 6 em 6 meses, e neste abril de 2009 chegou o Ubuntu 9.04 – Jaunty Jackalope ( ou “cornoelho garboso” ).

Não preciso apresentar este sistema fabuloso, mas cito aqui algumas fontes interessantes na internet:

  1. O download do sistema pode ser feito nos sites (prefira o Torrent):
    1. Ubuntu.com
    2. Ubuntu-BR.org
  2. Caso você esteja com um pouco de preguiça, pode solicitar seu Cd para a Cannonical via: ShiptIT.  (para o Brasil, leva +- 2 meses para chegar)
  3. Caso queira dispensar alguns passos de configuração, necessários para ter um ambiente mais amigável, teste também a versão já customizada do Linux no PC.
  4. Ou então, depois de baixar o Ubuntu, pode utilizar o script fantástico do Hamacker, o Ubuntu Perfeito.
  5. Ou ainda, a versão (iso) do hackmacker que já está com o Ubuntu Perfeito aplicado, facilitando muito a vida. (atualizado em 07/05/09)
  6. Ou uma outra versão DVD que também está customizada , da Linux Acessivel, que me pareceu bem interessante também ( atualizado em 12/05/09)
  7. E se você tem um netbook, não ficará de fora de utilizar este maravilhoso sistema, tem também a versão específica para este tipo de hardware:  Ubuntu Netbook Remix
  8. Caso queira mais alguns temas para seu Gnome ( themes, wallpapers, icons, etc.etc.etc… ) tem o site: Gnome Look, que é repleto de opções para a troca de seu visual.
  9. Caso não goste do Linux com Gnome, pode usar as outras versões do Ubuntu, com KDE ou XFCE .
  10. E não esquecemos também da versão Server do Ubuntu, feito rodar em seu servidor web, de rede, de arquivos e tudo mais.

Bom, fico por aqui com minhas dicas e felicidades com seu novo a atualizadíssimo Ubuntu !

Seja Livre, Use Linux !

Shell Script + Hudson

Shell Script

É muito fácil programar em Shell Script.
Agora que realmente precisei desta feature para incrementar os builds do Hudson, aqui no ambiente do trabalho, acabei gostando mesmo.
E com uma fonte de pesquisa muito 10 chamada CANIVETE ( http://aurelio.net/shell/canivete.html ) , do Aurélio, que me ajuda em tudo, ficou mais fácil ainda.

Achei também um tutorial de “Introdução ao Shell Script”, advinha de quem? Aurélio, que me ajudou muito nos passos iniciais e a entender alguns pontos ainda obscuros para mim.

No Hudson, temos como chamar scripts de Shell Script, e estes recebem os parametros do projeto atual, por exemplo:
Tenho um projeto chamado XYZ, este projeto tem como workspace ‘/home/hudson/workspaces/xyz’ e tem um parametro chamado ‘nome’.
Crio um .sh , e mando o projeto executar, clicando em “Add build step->Execute Shell”, informando o caminho para o shell, por exemplo ‘/home/hudson/scripts/meushell.sh’. Ok !

Neste shell, eu tenho disponível uma gama de variáveis de ambiente, disponibilizadas pelo Hudson, como:

$WORKSPACE = Informa o diretorio da workspace do projeto
$BUILD_NUMBER = Numero do build corrente
$BUILD_ID = Id completo , identificador, do build.
$JOB_NAME = Nome do projeto
$JAVA_HOME = Caminho do java que está sendo executado pelo hudson

E por ai vai …

E mais as variáveis que foram definidas como parametros, quando mandamos o projeto construir, será solicitado um valor para cada paremtro definido, e estes valores chegam em forma de variáveis de ambiente em nosso script, como $NOME, no nosso exemplo supra citado.
O script será executado pelo ‘/bin/sh’ passando -xe como parametro, para que seja mostrado cada comando exetudado pelo shell, ou se você configurar um executor shell direfente, este será respeitado (Hudson->Gerenciar Hudson->Configure System->Shell) .

Aliás, eu gosto de fazer uma estrutura simples de diretorios para trabalhar com cada projeto no Hudson, que seria mais ou menos assim:

HOME:/home/hudson
Logs do hudson: $HOME/logs
Scripts ( sejam eles ant, shell, bat, groovy, etc… ) $HOME/scripts
Locais de Trabalho (workspaces) : $HOME/workspaces/[NOME PROJETO]
Local para atualização de códigos do SVN/CVS: $HOME/workspaces/[NOME PROJETO]/SVN
Local para deposito de artefatos gerados ( somente finais ): $HOME/workspaces/[NOME PROJETO]/BUILD
Local para trabalho de scripts dentro de cada projeto ( arquivos temporarios, alterados, movidos. etc… ) : $HOME/workspaces/[NOME PROJETO]/WORK

/home/hudson
/home/hudson/logs
/home/hudson/scripts
/home/hudson/workspaces
/home/hudson/workspaces/[NOME DO PROJETO]
/home/hudson/workspaces/[NOME DO PROJETO]/SVN
/home/hudson/workspaces/[NOME DO PROJETO]/BUILD
/home/hudson/workspaces/[NOME DO PROJETO]/WORK

Assim, mantemos um padrão para todos os projetos, facilita, e muito, a geração de scripts para os builds.

Fica aqui ume pequeniníssima contribuição de um shell, que limpa arquivos .mine, que as vezes são gerados pelo subversion:

#!/bin/sh
echo Verificando arquivos .mine no caminho: `pwd`
for f in `find . -name *.mine` 
do
    echo Removendo mines de: ${f%.mine}
    rm -rf ${f%.mine}* 
done

BI-Campeão Gaúcho 2009

Eu já estou cansado de postar parabéns pelos títulos do inter aqui no blog.. hahehahe

São tantos…

E este gauchão foi especial, primeiro porque foi dobradinha de resultado com o final do gauchão de 2008: INTER 8×1 Adversário, que em 2008 foi o Juventude e este ano foi o Caxias. Ambos de Caxias do Sul. E segundo, que foi invicto ! Isto mesmo, não perdemos 1 partida sequer.

O plantel do inter está cada dia mais unido e todos os jogadores tem muito a dar para esta torcida maravilhosa.

Guina, Dalessandro, Taison, Nilmar, Indio, Kleber, Magrao, e todos os outros…. são exímios jogadores de bola, cada um com sua técnica e sua experiência, e o principal: sem agreções ! Futebol é vida, e desportividade e não violência ! A torcida vermelha e branca dá um show nas arquibancadas a cada jogo, como não acontece com o time da Azenha, que aliás, foi atropelad,o literalmente, neste gauchão, pelo inter, foram 3 grenais de 2×1 para o Inter. hHAhHHA

Bom, parabéns Inter por mais esta conquista ! Que este ano do centenário seja palco de muitos outros capítulos vitoriosos de sua história!

Logotipo Inter-RS 2009BI-CAMPEÃO GAÚCHO 2009 INVICTO

Distribuições

Coloquei recentemente no wiki, uma lista das distros que mais me chamam a  atenção, seja pela sua idéia, seja por ser bonita ou não, seja por ser leve, ou por qq outro item … não importa ! 

Coloquei também os links para seus recpectivos sites e para as suas descrições no Wikipedia.

Hoje utilizo em casa um Ubuntu, e no trabalho tenho utilizado bastante o CentoOS, mas gosto mesmo é do Debian, sebem que o arch é bastante interessante também… ( Nooossaa.. heheheh )

Bom, podem postar comentários sobre suas distros e fazer propagandas das mesmas. Vamos ver como se saem !

[]´s a todos…

Lista de Distribuições Linux




Better Tag Cloud