Após uma postagem no Twitter de Rafael Gomes (Gomex) e Amaury Souza no Slack infraascode citando o Codeac.io, resolvi dedicar um tempo estudar e testar a ferramenta.
Codeac faz a análise da qualidade, olhando não apenas o código da aplicação, mas também do código que gerencia a infraestrutura a ser usada pela aplicação (Exemplo: Dockerfile, Ansible, CloudFormation, Terraform, Shell Script, etc). Há suporte a várias linguagens de programação: https://www.codeac.io/documentation/supported-languages.html.
Nos planos Free ou Pro, a ferramenta não requer a instalação (fica na nuvem) e a integração no pipeline é muito simples: basta configurar a integração com o GitHub, GitLab ou BitBucket. Ele consegue listar todos os repositórios de código associados a conta e analisar apenas o código de repositórios públicos ou privados que você definir. Mais informações podem ser encontradas neste link: https://www.codeac.io/documentation/getting-started.html. A documentação é bem elaborada, clara e simples.
No plano Enterprise, o Codeac pode ser instalado num servidor da rede local da sua empresa ou instituição e pode ser usado para acessar um repositório Git que esteja na rede local.
Configurei a integração do Codeac com esse repositório que mantenho no GitHub: https://github.com/aeciopires/terraform
Os resultados da análise podem ser vistos nas imagens a seguir. Como você pode ver, a interface é simples, intuitiva e mostra as sugestões de melhoria de forma clara.
![](http://blog.aeciopires.com/wp-content/uploads/2019/12/codeac1.png)
![](http://blog.aeciopires.com/wp-content/uploads/2019/12/codeac2.png)
![](http://blog.aeciopires.com/wp-content/uploads/2019/12/codeac3.png)
![](http://blog.aeciopires.com/wp-content/uploads/2019/12/codeac4.png)
![](http://blog.aeciopires.com/wp-content/uploads/2019/12/codeac5.png)
Após os testes iniciais, tive uma ótima surpresa… Jiri Tichy (membro do time do Codeac.io) entrou em contato via Linkedin. Conversamos sobre as primeiras impressõess sobre a ferramenta e pude entender um pouco mais sobre os objetivos da mesma. Durante a conversa recebi um pull request de Michel Simon (criado da ferramenta). Além da contribuição no código, as palavras de motivação para continuar ajudando com o código open source foram muito bem vindas.
Espero que o post tenha sido útil e que de alguma forma possa ajudar você e seu time a escrever códigos ainda melhores para manter a infraestrutura, seja ela na nuvem ou em ambiente local.
Deixe um comentário