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

Cloud

Descubra como o Skaffold pode otimizar seu trabalho com Kubernetes

Olá pessoal! A ideia para este post surgiu quando me deparei com o problema, que todos que trabalham ou vão trabalhar com Kubernetes enfrentam: a necessidade de a cada simples

Big Data

Soft Skills: As Habilidades Essenciais para o Sucesso na Carreira de TI

Soft Skills: As Habilidades Essenciais para o Sucesso na Carreira de TI Em um mercado de tecnologia em constante evolução, as Soft Skills, ou habilidades interpessoais, se tornaram ferramentas indispensáveis

DevOps

Proteja sua infraestrutura com Ansible Vault: segurança e simplicidade

Automatize sua infraestrutura sem correr riscos de segurança O Ansible foi um dos responsáveis pela popularização da automação de configurações por meio das suas playbooks (scripts no formato YAML, onde