When we work in any software project then our main focus is to achieve the ultimate goal which is to finish the functionality and deliver it to the customer in a given timeline. It is so important for us that many times we use to compromise with the code quality, potential bugs, code duplications, and bad distribution of complexity not only that but also we use to left unused variables, methods, etc. Our application would work in the desired way but do you think this is a proper way to deliver the projects? It is Not. We should deliver the software with clean code, without code duplication, less code complexity, and without any potential bugs.
If you want to know how to install and configure SonarQube then refer to my blog SonarQube installation on Ubuntu.
To achieve these qualities in code we should keep that mind and should always follow good coding practice but sometimes it is not possible to follow the rules and maintain the good quality as there may be n number of reasons. So we need a tool that not only works once to check and tell us the issues in code but also track and monitor the code to check continuous code quality in order to achieve continuous code integration and deployment. For these requirements, we have a product SonarQube which has all these features. Now let us discuss more it.
SonarQube is a widely used tool for Continuous Code Quality. SonarQube is open-source software that can be used for continuous tracking of bugs, vulnerabilities, and code smells for more than 20 different programming languages like C#, Java, C, C++, PHP, .Net, JavaScript, Python, etc. SonarQube provides the capability to monitor the health of the application and highlights the newly introduced issues.
If you want to know how to configure SonarQube scaner then please refer to my blog Configure SonarQube Scanner with Jenkins
We can setup SonarQube in a central server to make it visible for developers, leads, managers, and QA, etc so that then all can monitor the code quality to ensure smooth application deployment with quality. A developer can monitor his own code at any point in time by running the sonar scanner on his code and can take the responsibility of his code. To enforce a code quality practice across different teams we can set up a Quality Gate. This core concept of SonarQube is a set of requirements that tells whether or not a new version of a project can go into production.
In SonarQube we have the project listing for multiple projects from where we can pick any project to check its health. Under the project, we have issues that give us full power to analyze in detail what the main issues are, where they are located when they were added to your codebase and who originally introduced them. Thanks to the Activity page we can dig into the details of the history of your project very easily and precisely to better understand what happened in the past. In this way, we must have the SonarQube setup to continuously test our code and to maintain our code in good health.
If you want to know how to analyze the project using SonarQube then refer to the blog Analyze your project with SonarQube.
You can refer to the following list for my previous blogs on Jenkins and SonarQube:
Configure Jenkins for Automated Code Deployment
SonarQube installation on Ubuntu
Install Jenkins on Ubuntu
Configure SonarQube Scanner with Jenkins
Analyze your project with SonarQube
In case of any suggestion or query please leave a comment.
Related Blogs
Introduction to Cloud Computing
Sep 23, 2020, 2:38:00 PM | Anurag Srivastava
Monitoring website uptime using Kibana
Sep 6, 2020, 5:20:33 PM | Anurag Srivastava
Monitoring Application using Elastic APM
Jan 16, 2020, 11:43:29 AM | Anurag Srivastava
Configuring Django application with Elastic APM
Jan 14, 2020, 10:22:34 AM | Anurag Srivastava
Introduction to Elastic APM
Jan 7, 2020, 7:15:34 PM | Anurag Srivastava
Why monitoring is important?
Jan 6, 2020, 7:30:13 PM | Anurag Srivastava
Top Blogs
Configure SonarQube Scanner with Jenkins
Jun 21, 2018, 4:58:11 AM | Anurag Srivastava
Execute Commands on Remote Machines using sshpass
Jul 16, 2018, 5:00:02 PM | Anurag Srivastava
Importing MongoDB data into Elasticsearch
Mar 9, 2019, 8:20:38 AM | Anurag Srivastava
Importing MySQL data into Elasticsearch
Feb 9, 2019, 12:06:18 PM | Anurag Srivastava
Configure Jenkins for Automated Code Deployment
Jun 13, 2018, 3:44:01 PM | Anurag Srivastava
Deploying Angular code using Python script
Jun 26, 2018, 4:50:18 PM | Anurag Srivastava
Comments (3)
Rocky Paul
Apr 29, 2018, 4:17:53 PM
Nice blog. I want to learn data science please let me know how can I start.
Harinath Reddy Konepalli
Jul 17, 2018, 5:06:26 AM
its very nice blog , please prepare material for Chef and ansible
Anurag Srivastava
Aug 14, 2018, 7:00:27 PM
Thanks Harinath. We will do that :)
Leave a comment