InRelease

No TechEd North America desse ano foi demonstrado uma nova ferramenta para realizar Continuous Delivery chamada InRelease, veja o vídeo de apresentação no Channel 9

Em muitos clientes onde tenho passado implantando ALM e TFS a maioria deles tem problemas para gerenciar seu processo de deploy, eles necessitam responder perguntas báscias como:

  • Qual o pacote está em produção?
  • Esse pacote passou pelo ambiente de QA?
  • Passou pelo ambiente de HML?

Na maioria das vezes para resolver esse tipo de problema, o que vemos são soluções caseiras, algumas são muito boas, outras nem tanto. O fato é, que o TFS sempre deixava o gerenciamento do deploy para ser customizado para cada cenário e cliente.

Agora o conceito está mudando, o InRelease foi desenvolvido por uma empresa parceira da Microsoft e que se tornou tão útil que foi adquirida pela própria Microsoft e agora será incorporada ao produto na versão do TFS 2013.

O que é o InRelease?

InRelease é uma solução de Continuous Delivery que tem o objetivo de automatizar todo o processo de release através do Visual Studio Team Foundation Server (TFS) conseguindo realizar entregas mais rápidas eficientes e simples. Com um workflow de liberação pré-definidos, o InRelease implanta automaticamente seu aplicativo para vários ambientes. O objetivo do InRelease é melhorar a coordenação e comunicação entre o time de desenvolvimento e operações.

Arquitetura

Na imagem abaixo podemos ver a arquitetura do InRelease

Arquitetura do InRelease

O InRelease está divida em 3 partes:

Client: Na verdade temos dois clients, um feito em WPF para realizar todo o gerenciamento e configuração e outra aplicação web para gerenciar as aprovações dos pacotes.

Server: Essa camada é o coração do InRelease, é uma combinação de Windows Services e Web Services.

Deployer: Os deployers é um serviço que é executado para realizar o deploy dos pacotes, esses servições devem ser instalados nos ambientes de destino.

No InRelease temos três principais passos:

1 – Configurar os ambientes

Nessa tela podemos configurar qual o processo e a ordem dos ambientes onde queremos implantar nossos pacotes. Nesse caso temos 3 ambientes

Ambientes

2- Configurar o Workflow

Após configurar os ambientes, temos que definir qual o sequência que vamos executar para implantar os pacotes nos servidores.

Sequência

3 – Fazer a aprovação

Após de criar um novo pacote do projeto, teremos que aprovar a promoção desse pacote para os ambientes que configuramos.

Aprovação

Abaixo podemos ver todo os passos da execução da implantação de um pacote.

Histórico

O InRelease é uma ferramenta ótima, onde conseguimos gerenciar de maneira muito fácil os deploys das nossas aplicações

Nos próximos posts veremos como usar o InRelease.

Até a próxima!

Sobre Leandro Prado

Leandro Silveira Prado é Premier Field Engineer na Microsoft especializado em Application Lifecycle Management.