Dicas Azure: Evite Deployments não validados no Windows Azure

Cloud Computing & Microsoft Azure

«««< HEAD

Ai vai mais uma dica de “produtividade” para o Windows Azure. Se tinha uma coisa irritante nas versões anteriores ao SDK 1.4 era a não validação de pacotes para deploy do Azure. Vamos supor o seguinte: Você fez sua aplicação para o Azure e codificou uma class libary chamada MinhaDependencia com suas regras de negócio. Neste ponto seu projeto tem uma dependência do assembly MinhaDependencia.dll. Se por algum motivo esta dependência não estiver anexada ao pacote, seu deploy irá falhar e possivelmente você vai encarar um Deploy Travado em Busy ou Initializing, como já tratei anteriormente.

=======

Ai vai mais uma dica de “produtividade” para o Windows Azure. Se tinha uma coisa irritante nas versões anteriores ao SDK 1.4 era a não validação de pacotes para deploy do Azure. Vamos supor o seguinte: Você fez sua aplicação para o Azure e codificou uma class libary chamada MinhaDependencia com suas regras de negócio. Neste ponto seu projeto tem uma dependência do assembly

MinhaDependencia.dll. Se por algum motivo esta dependência não estiver anexada ao pacote, seu deploy irá falhar e possivelmente você vai encarar um Deploy Travado em Busy ou Initializing, como já tratei anteriormente.

fc19c35aaf9d0aae2c5a94f9ddc93deb1b95af77

Quando iniciamos o deploy, fornecemos dois arquivos: um é o pacote de serviço do aplicativo (.cspkg), o outro é o arquivo de configuração (.cscfg). No momento em que o pacote está sendo gerado, o windows azure faz uma gama de validações para garantir que você não haverá problemas na hora de publicar na nuvem.

 

O problema

Quando o mecanismo de validação encontra algo de errado, é gerado uma advertência. como na imagem abaixo:

01

É uma advertência sobre a falta de uma determinada dependência no pacote gerado. Isso é algo que certamente fará seu deploy falhar, contudo é retornado como uma simples advertência.

No meu ponto de vista, se eu gero um pacote para implantação na nuvem, eu realmente vou querer que ele funcione. Se existe algo nele que vai fazer meu deploy falhar, então deveria ser retornado como erro. Quando estamos trabalhando em um projeto grande, é comum termos algumas “várias” mensagens de advertência, e ter uma algo tão significativo perdido no meio de outras mensagens como variáveis que não estão sendo usadas é algo inconveniente.

 

A solução

Você pode ir nas opções do projeto cloud clicando com o botão direito sobre o projeto, ir na aba Develompent, na sessão Validation e alterar a opção Treat warnings as erros (Tratar avisos como erros) que por padrão é false para true. Como na imagem abaixo:

«««< HEAD

03

=======

03

fc19c35aaf9d0aae2c5a94f9ddc93deb1b95af77

Sendo assim, todas as mensagens que a validação do pacote gerar que antes eram tratadas como  advertências agora serão tratadas como erros. Exatamente como na imagem abaixo:

02

Espero que está dica possa ajudar quem como eu, perdeu um bom tempo por causa de uma simples advertência…

 

Um grande abraço e ótimo estudo a todos!


Author's profile picture

Vitor is a computer scientist who is passionate about creating software that will positively change the world we live in.

MVP Azure - Cloud Architect - Data science enthusiast


3 minutes to read