Powered by Max Banner Ads 

Série Continuous Integration: Criando uma tag no github via Jenkins

January 30th, 2015 No comments

 

jenkinslogo

olá Pessoal,

Hoje vamos ver como criar uma tag em nosso projeto e publicar no github. Considerando que você já tem o seu ambiente Jenkins funcionando.

Lets go..
Starting…

Primeiro passo é instalar o plugin Git Publisher.

Passo 2

Após ter instalado o plugin vá no seu projeto e clique em configuration. Em sourceCode Management clique em Advanced

jenkinsgittagsourcecode

No campo Name que deve está vazio, informe o nome que desejar, eu coloco o nome do projeto.

Passo 3

Adicione um Post-build Actions Step e escolher Git Publisher

jenkinsgitpublisher

Observe que podemos ter um create new tag ou update new tag. Se for uma nova tag escola create new tag. Informe em Tag to Push como será o nome da sua tag.

O ponto mais importante aqui que temos é informar o repositorio que é feito em Target remote name onde informar o nome que definimos nos campo Name em source
code.

Passo 4

Feito isso, salve as alterações e iniciei o build. Após a conclusão do build a tag será criada no github, vá no repositorio e veja se a tag foi criada em
releases

jenkinstaggithubreleased

Simples não? Agora vc tem a criação de tags para o github automatizada.

abraços,

Série AngularJS:Enviando Notificação por E-mail AngularJS + JavaMail + Gmail

January 26th, 2015 No comments

angularjslogo

olá Pessoal,

O post de hoje vamos ver como enviar uma notificação por email, usando JavaMail com AngularJS e tendo o gmail como servidor de email. Aplicação é bem simples e vou usar um dos archetypes maven + angularjs que criei, assim vai poupar bastante tempo de configuração do projeto e podemos focar no que mais interessa para o post.

lets go…

Requisitos:

  • archetype-webapps-java-angularjs-yeoman;
  • JavaMail;
  • Ter uma conta Gmail;

Starting…

Para começar instale o archetype a seguir:

https://github.com/camilolopes/archetype-webapps-java-angularjs-yeoman

O archetype acima, já vem com o Spring, Restful via Jersey, Twitter Bootstrap, AngularJS 1.0, Yeoman etc. Se não tiver o archetype instalado, siga os passos no GitHub do projeto.

O Projeto
O projeto de exemplo,vai simular uma recuperação de senha onde o usuário informa o email cadastro e em seguida receberá um e-mail com as instruções para recuperação de senha. Para envio

Development

Vamos começar a meter mão na massa.Vou ser bem objetivo e considerar que você já conhece AngularJS + Java.

Passo 1

Criando o projeto

emailnotificationmavenarchetype

Escolha o archetype e preencha os campos com o nome do seu projeto.

Passo 2

Apague todos os packages em src/main/java deixando assim:

 

emailnotificationpackages

E apague os packages em src/test/java

Passo 3

No arquivo pom.xml adicione a seguinte dependencia:

E remova a tag

 

 

Passo 4
Abra o arquivo applicationContext.xml e apague todo o código relacionado a banco de dados, deixando o conteúdo assim:

Passo 5

No arquivo web.xml vamos informar o local onde ficará as classes dos serviços restful, no meu caso será:

 

Observe que o caminho para API Restful será /rest/*. Você pode chamar como quiser /api/*.

Passo 6

Vamos desenvolver uma classe que terá o serviço de enviar o e-mail e as configurações do gmail, chamei de EmailNotificationService, veja a seguir (classe e os métodos são auto-explicativos):

 

Passo 7

Criaremos um objeto para representar os dados na tela User.java

 

Passo 8

Agora vamos fazer o Controller e serviço restful:

Agora que temos o back-end pronto, vamos começar com o front-end. Primeiro passo, após a criação do projeto é instalar o bower para baixar as libs necessárias para isso via console vá até a raiz do projeto e depois até a pasta src/main/webapp e digite:

Aguarde a instalação terminar.

Como estamos usando o Yeoman + AngularJS ele já vem com uma estrutura minima funcionando, então vamos reaproveitar.

main.js

Vamos deixar o arquivo assim:

 

Criando EmailService.js

vamos gerar o arquivo para camada de serviço, para digite:

E altere o arquivo emailservice.js deixando assim:

Alterando o arquivo app/index.html
Vamos arrumar o nome do arquivo EmailService.js para forma correta deixando assim, na linha 72:

Criando o views/home.html

Agora precisamos criar a tela que faz a recuperação de senha:

 

Alterando a rota

Em app.js altere a rota deixando assim:

 Testando

Vamos testar aplicação.Primeiro passo é compilar toda aplicação:

Agora vamos subir:

emailnotificationrun

Agora vou informar um e-mail e em seguida verificar se receber o e-mail:

emailnotificationrundata

O email acabou de chegar:

emailnotificationreceived

emailnotificationbodysent

O projeto example está disponível no meu Github

https://github.com/camilolopes/emailNotification-angularjs

Simples não? A aplicação é bem simples, e claro que se fosse um código final tem muita coisa para melhorar. Uma delas é não ter as informações de envio do e-mail (from) hard-code. A autenticação também não deveria está hard-code :D.

Vou ficando por aqui…

See ya!!

Related Posts with Thumbnails