Como Implementar a Análise de Qualidade de Código com DevOps e SonarQube

Como Implementar a Análise de Qualidade de Código com DevOps e SonarQube

Dentro da ótica do DevOps e de como implementar agilidade com qualidade, temos os testes automatizados como um dos principais pilares para manter a essência do CI (Continuous Integration), porém apenas esses testes não conseguem garantir que de fato o código terá qualidade. Para remediar essa situação, há ferramentas que promovem a análise do código fonte da aplicação e que, com isso, permite a avaliação dessa qualidade de código. Mas antes de abordamos a parte de ferramenta, vamos entender o que vem a ser a Análise de Qualidade dentro da programação ?

Analise de Qualidade

Em termo gerais, realizar a analise de qualidade em um código fonte é conseguir medir se o código atende requisitos pré definidos para garantir que o código não esteja defasado ou para validar se há redundância de código, por exemplo.

É importante destacar que a qualidade do código irá depender de como a cultura de desenvolvimento está implementada e quais são os critérios de boas práticas que farão o código em questão responde se é possível ou não colocar aquele programa em produção.

Quality Gate

Quality Gate define as políticas de qualidade para o código, baseado em valores definidos em uma estrutura de confiabilidade.

Definindo Quality Gate no SonarQube

Utilizando o Jenkins com SonarQube, a definição do Quality Gate se torna essencial. Pois, o resultado dele que irá permitir ou não que a pipeline tenha continuidade.

Para integrar o Jenkins com o SonarQube, antes leia: Análise SAST com SonarQube

Após instalar e já integrar o Jenkins com o SonarQube, podemos definir um Quality Gate personalizado, com os seguintes passos:

  •  Clique em Quality Gate no menu superior
  • Após isso clicar, no canto esquerdo, em Create
  • Adicionar nome Quality Gate
  • Após isso, já é possível adicionar as Condições do Quality Gate clicando em Add Condition
  • Nesse momento é possível adicionar as regras conforme a cultura desenvolvimento empregadas.
  • Abaixo um exemplo de Quality Gate criado pelo SonarQube.
  • E para finalizar, após criar as métricas é possível defini-la como Default, sendo assim, os projetos,  terão esse Quality Gate como padrão ou também, escolher projetos específicos para ter essas políticas

OU

Sendo assim é possível, além de testar, mediar e registrar a qualidade de qualquer código fonte antes de ir para produção, garantindo a segurança e o valor da sua aplicação.

 

CURSOSCONSULTORIA    CONTATO

Anterior Certificação LPIC-3: Domine a Segurança em Servidores Linux
Próxima Descubra como o Vagrant pode agilizar a configuração de ambientes virtuais

About author

Yago Ésquines
Yago Ésquines 5 posts

Yago Ésquines, atua como Coordenador de TI em Software Livre, formado em Ciência da Computação pela Universidade Paulista (UNIP) e em Segurança da Informação pela FATEC São Caetano. Atua com foco em Linux, Automação, DevOps e DevSecOps, possuindo mais de 10 anos de experiência profissional em Tecnologia da Informação. Detém expertise como instrutor de cursos voltados ao Sistema Operacional Linux, Infraestrutura Ágil, DevSecOps e Kubernetes, além ser Certificado Linux Engineer(LPIC-2), CKA (Certified Kubernetes Administrator) e DevOps Essentials.

View all posts by this author →

Você pode gostar também

DevOps

GitLab CI – Integração Contínua sem sair do repositório

Ferramentas de CI/CD hoje em dia andam de mãos dadas com os nossos projetos – dificilmente vemos um repositório no GitHub, GitLab, Bitbucket, Gitea… sem alguma configuração de integração contínua.

DevOps

Descubra as Oportunidades no Mercado DevOps em Ascensão

Oportunidades no Mercado DevOps O mercado de trabalho para quem conhece DevOps está em acensão, e atualmente é uma das áreas que mais contrata funcionários tanto no Brasil quanto no

DevOps

DataOps: A solução para otimizar o ciclo de vida dos dados

Grandes empresas tendem a se concentrar em tecnologias de Big Data usadas para construir aplicações inovadoras. Algumas dessas empresas são obcecadas por Kakfa, Hadoop, Spark e Kubernetes, mas falham em