{"id":54702,"date":"2022-02-22T23:58:15","date_gmt":"2022-02-22T18:28:15","guid":{"rendered":"https:\/\/2thenew.online\/blog\/?p=54702"},"modified":"2022-02-22T23:58:15","modified_gmt":"2022-02-22T18:28:15","slug":"how-to-setup-sonarqube","status":"publish","type":"post","link":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/","title":{"rendered":"How to setup SonarQube"},"content":{"rendered":"<p><b>What is SonarQube?<\/b><\/p>\n<p><span style=\"font-weight: 400;\">SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it&#8217;s usage includes:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Catch tricky bugs to prevent undefined behaviour from impacting end-users<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Fix vulnerabilities that compromise your app, and learn AppSec along the way with Security Hotspots<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Make sure your codebase is clean and maintainable, to increase developer velocity<\/span><\/li>\n<li>Covers <a href=\"https:\/\/www.sonarqube.org\/features\/multi-languages\">various<\/a> languages<\/li>\n<\/ol>\n<p><b>Pre-requisites to using SonarQube<\/b><\/p>\n<ol>\n<li style=\"font-weight: 400;\"><b>Docker <\/b><span style=\"font-weight: 400;\">(<\/span><a href=\"https:\/\/docs.docker.com\/get-docker\/\"><span style=\"font-weight: 400;\">click<\/span><\/a><span style=\"font-weight: 400;\"> here to install)<\/span><\/li>\n<li style=\"font-weight: 400;\"><b>Docker compose <\/b><span style=\"font-weight: 400;\">(<\/span><a href=\"https:\/\/docs.docker.com\/compose\/install\/\"><span style=\"font-weight: 400;\">click<\/span><\/a><span style=\"font-weight: 400;\"> here to install)<\/span><\/li>\n<\/ol>\n<p><b>Setting up SonarQube<\/b><\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Install sonarqube using docker (create a new directory with sonarqube name and copy below docker-compose.yml into it)<br \/>\n<\/span><\/p>\n<pre>version: \"3\"\r\n<i>services:<\/i><i>\u00a0\u00a0sonarqube:<\/i><i>\u00a0\u00a0\u00a0\u00a0image: sonarqube<\/i>\r\n<i> \u00a0\u00a0\u00a0expose:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- 9000<\/i>\r\n<i> \u00a0\u00a0\u00a0ports:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- \"9000:9000\"<\/i>\r\n<i> \u00a0\u00a0\u00a0networks:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarnetwork<\/i>\r\n<i> \u00a0\u00a0\u00a0environment:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- SONARQUBE_JDBC_URL=jdbc:postgresql:\/\/db:5432\/sonar<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- SONARQUBE_JDBC_USERNAME=sonar<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- SONARQUBE_JDBC_PASSWORD=sonar<\/i>\r\n<i> \u00a0\u00a0\u00a0volumes:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarqube_conf:\/opt\/sonarqube\/conf<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarqube_data:\/opt\/sonarqube\/data<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarqube_extensions:\/opt\/sonarqube\/extensions<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarqube_bundled-plugins:\/opt\/sonarqube\/lib\/bundled-plugins<\/i>\r\n<i> \u00a0db:<\/i>\r\n<i> \u00a0\u00a0\u00a0image: postgres<\/i>\r\n<i> \u00a0\u00a0\u00a0networks:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- sonarnetwork<\/i>\r\n<i> \u00a0\u00a0\u00a0environment:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- POSTGRES_USER=sonar<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- POSTGRES_PASSWORD=sonar<\/i>\r\n<i> \u00a0\u00a0\u00a0volumes:<\/i>\r\n<i> \u00a0\u00a0\u00a0\u00a0\u00a0- postgresql:\/var\/lib\/postgresql<\/i>\r\n<i>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0- postgresql_data:\/var\/lib\/postgresql\/data<\/i>\r\n<i>networks:<\/i>\r\n<i>\u00a0\u00a0sonarnetwork:<\/i>\r\n<i>volumes:<\/i>\r\n<i> \u00a0sonarqube_conf:<\/i>\r\n<i> \u00a0sonarqube_data:<\/i>\r\n<i> \u00a0sonarqube_extensions:<\/i>\r\n<i> \u00a0sonarqube_bundled-plugins:<\/i>\r\n<i> \u00a0postgresql:<\/i>\r\n<i> \u00a0postgresql_data:<\/i><\/pre>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Now run <\/span><b><i>sudo<\/i><\/b> <b><i>docker-compose up<\/i><\/b> <span style=\"font-weight: 400;\">command (this command will turn up sonarqube)<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Now install sonar-scanner<br \/>\n<b><\/b><\/span><b><i>wget https:\/\/binaries.sonarsource.com\/Distribution\/sonar-scanner-cli\/sonar-scanner-cli-4.2.0.1873-linux.zip<br \/>\n<\/i><\/b><b><i>unzip sonar-scanner-cli-4.2.0.1873-linux.zip<\/i><\/b><b><i>sudo mv sonar-scanner-4.2.0.1873-linux \/opt\/sonar-scanner<\/i><\/b><\/li>\n<li><span style=\"font-weight: 400;\">Edit the sonar-scanner.properties file.<br \/>\n<\/span><b>sudo<\/b> <b><i>vi \/opt\/sonar-scanner\/conf\/sonar-scanner.properties<\/i><\/b><\/li>\n<li><span style=\"font-weight: 400;\">Configure the SonarQube scanner to connect to your SonarQube server.<br \/>\n<\/span><b><i>sonar.host.url=http:\/\/localhost:9000<\/i><\/b><b><i>sonar.sourceEncoding=UTF-8<\/i><\/b><\/li>\n<li><span style=\"font-weight: 400;\">We need to add the sonar-scanner command to the PATH variable. <\/span>Let\u2019s create a file to automate the required environment variables configuration.<br \/>\n<b>sudo nano \/etc\/profile.d\/sonar-scanner.sh<\/b><span style=\"font-weight: 400;\">Here is the sonar-scanner.sh file content.<\/span><b><i>#\/bin\/bash<\/i><\/b><b><i>export PATH=&#8221;$PATH:\/opt\/sonar-scanner\/bin&#8221;<\/i><\/b><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Reboot your computer or use the source command to add the sonar scanner command to the PATH variable.<br \/>\n<\/span><b><i>reboot<\/i><\/b><b><i>source \/etc\/profile.d\/sonar-scanner.sh<\/i><\/b><\/li>\n<li><span style=\"font-weight: 400;\">Use the following command to verify if the PATH variable was changed as expected.<br \/>\n<\/span><b><i>env | grep PATH<\/i><\/b><span style=\"font-weight: 400;\">Here is the command output:<\/span><b><i>PATH=\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/usr\/games:\/usr\/local\/games:\/snap\/bin:\/opt\/sonar-scanner\/bin<\/i><\/b><span style=\"font-weight: 400;\">In our example, the \/opt\/sonar-scanner\/bin directory was added to the PATH variable.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Use the following to verify the SonarQube scanner version installed<br \/>\n<\/span><b><i>sonar-scanner -v<\/i><\/b><span style=\"font-weight: 400;\">Here is the command output.<\/span><b><i>INFO: Scanner configuration file: \/opt\/sonar-scanner\/conf\/sonar-scanner.properties<\/i><\/b><b><i>INFO: Project root configuration file: NONE<\/i><\/b><b><i>INFO: SonarQube Scanner 4.2.0.1873<\/i><\/b><b><i>INFO: Java 11.0.3 AdoptOpenJDK (64-bit)<\/i><\/b><b><i>INFO: Linux 5.3.0-18-generic amd64<\/i><\/b><\/li>\n<\/ol>\n<h2><b>SonarQube &#8211; How to Scan project Code<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">First, you need to access the SonarQube web interface and create a new project. <\/span><span style=\"font-weight: 400;\">Open your browser and enter the IP address of your web server plus: 9000. <\/span><span style=\"font-weight: 400;\">In our example, the following URL was entered in the Browser:<\/span><\/p>\n<ul>\n<li><a href=\"http:\/\/localhost:9000\/\"><span style=\"font-weight: 400;\">http:\/\/localhost:9000\/<\/span><\/a><span style=\"font-weight: 400;\">(in case if you are facing memory problem then need to increase it &#8211; see &#8211; <\/span><a href=\"https:\/\/stackoverflow.com\/questions\/51445846\/elasticsearch-max-virtual-memory-areas-vm-max-map-co\"><span style=\"font-weight: 400;\">https:\/\/stackoverflow.com\/questions\/51445846\/elasticsearch-max-virtual-memory-areas-vm-max-map-co<\/span><\/a><span style=\"font-weight: 400;\">)<br \/>\n<\/span><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-54697 size-medium\" src=\"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-54-07-300x195.png\" alt=\"Blog image\" width=\"300\" height=\"195\" srcset=\"https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-54-07-300x195.png 300w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-54-07.png 381w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Click on the Login button and use the SonarQube default username and password.<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> Default Username: admin<\/span><\/li>\n<li><span style=\"font-weight: 400;\"> Default Password: admin<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">After a successful login, you will be sent to the SonarQube Dashboard.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Create a new project.(e.g. GIH)<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">Project Key &#8211; GIH<br \/>\n<\/span><span style=\"font-weight: 400;\">Display name &#8211; GIH<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-54698 size-medium\" src=\"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-57-37-300x210.png\" alt=\"Blog image\" width=\"300\" height=\"210\" srcset=\"https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-57-37-300x210.png 300w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-57-37.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Enter a string for the project token name and click on the Generate button. <\/span><span style=\"font-weight: 400;\">The token is used to identify you when an analysis is performed. <\/span><span style=\"font-weight: 400;\">Click on the Continue button.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-54699 size-medium\" src=\"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-38-300x173.png\" alt=\"Blog image\" width=\"300\" height=\"173\" srcset=\"https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-38-300x173.png 300w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-38-624x359.png 624w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-38.png 629w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">On the Next screen, select your project language. <\/span><span style=\"font-weight: 400;\">In our example, we selected the option: Other (JS, TS, Go, Python, PHP, &#8230;)<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-54700 size-medium\" src=\"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-39-300x88.png\" alt=\"Blog image\" width=\"300\" height=\"88\" srcset=\"https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-39-300x88.png 300w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-02-39.png 426w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Select the Linux operating system. <\/span><span style=\"font-weight: 400;\">The system will show you the command-line that you should use to scan the GIH project.<\/span><\/p>\n<p><b><i>sonar-scanner \\<\/i><\/b><\/p>\n<p><b><i>\u00a0<\/i><\/b><b><i>\u00a0-Dsonar.projectKey=GIH \\<\/i><\/b><\/p>\n<p><b><i>\u00a0<\/i><\/b><b><i>\u00a0-Dsonar.sources=. \\<\/i><\/b><\/p>\n<p><b><i>\u00a0<\/i><\/b><b><i>\u00a0-Dsonar.host.url=http:\/\/192.168.15.15:9000 \\<\/i><\/b><\/p>\n<p><b><i>\u00a0<\/i><\/b><b><i>\u00a0-Dsonar.login=<\/i><\/b><b>9ecdeb28268d24f0b08da716ae67f72a8a530392<\/b><\/p>\n<p><span style=\"font-weight: 400;\">In adobe command you can add an exclusion param as some directory like vendor or node_modules generate automatically when we run composer or npm so we can exclude these directory for scan. After add exclusion param above command will look like this<\/span><\/p>\n<p><b>sonar-scanner \u00a0 -Dsonar.projectKey=GIH \u00a0 -Dsonar.sources=. \u00a0 -Dsonar.host.url=http:\/\/localhost:9000 \u00a0 -Dsonar.login=9ecdeb28268d24f0b08da716ae67f72a8a530392 -Dsonar.exclusions=**\/vendor\/**,**\/node_modules\/**,**\/core\/**,**\/sites\/**,**\/contrib\/**,**\/drush\/**,**\/files\/**,**\/default* ,**\/libraries\/**<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Note &#8211; every time you have to run the above command inside your project root to see SonarQube dashboard. <\/span><span style=\"font-weight: 400;\">Once you run above command by terminal you will get a url of sonarqube dashboard<\/span><\/p>\n<p><span style=\"font-weight: 400;\">E.g ANALYSIS SUCCESSFUL, you can browse <\/span><a href=\"http:\/\/localhost:9000\/dashboard?id=GIH\"><span style=\"font-weight: 400;\">http:\/\/localhost:9000\/dashboard?id=GIH<\/span><\/a><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-54701 size-full\" src=\"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-07-08.png\" alt=\"Blog image\" width=\"652\" height=\"778\" srcset=\"https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-07-08.png 652w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-07-08-251x300.png 251w, https:\/\/2thenew.online\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-from-2022-02-14-14-07-08-624x745.png 624w\" sizes=\"auto, (max-width: 652px) 100vw, 652px\" \/><\/p>\n<div class=\"ap-custom-wrapper\"><\/div><!--ap-custom-wrapper-->","protected":false},"excerpt":{"rendered":"<p>What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it&#8217;s usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that [&hellip;]<\/p>\n","protected":false},"author":1428,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":136,"footnotes":""},"categories":[2348,3602,1994],"tags":[4057],"class_list":["post-54702","post","type-post","status-publish","format-standard","hentry","category-devops-technology","category-drupal","category-software-development","tag-sonarqube"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it&#039;s usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Rahul Kumar Khandelwal\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"TO THE NEW BLOG\" \/>\n\t\t<meta property=\"og:type\" content=\"blog\" \/>\n\t\t<meta property=\"og:title\" content=\"How to setup SonarQube | TO THE NEW Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it&#039;s usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@tothenew\" \/>\n\t\t<meta name=\"twitter:title\" content=\"How to setup SonarQube | TO THE NEW Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it&#039;s usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#article\",\"name\":\"How to setup SonarQube | TO THE NEW Blog\",\"headline\":\"How to setup SonarQube\",\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/rahul-khandelwal\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"\\\/blog\\\/wp-ttn-blog\\\/uploads\\\/2022\\\/02\\\/Screenshot-from-2022-02-14-13-54-07-300x195.png\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#articleImage\"},\"datePublished\":\"2022-02-22T23:58:15+05:30\",\"dateModified\":\"2022-02-22T23:58:15+05:30\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#webpage\"},\"articleSection\":\"DevOps, Drupal, Software development, sonarqube\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/software-development\\\/#listItem\",\"name\":\"Software development\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/software-development\\\/#listItem\",\"position\":2,\"name\":\"Software development\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/software-development\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#listItem\",\"name\":\"How to setup SonarQube\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#listItem\",\"position\":3,\"name\":\"How to setup SonarQube\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/software-development\\\/#listItem\",\"name\":\"Software development\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\",\"name\":\"TO THE NEW Blog\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/rahul-khandelwal\\\/#author\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/rahul-khandelwal\\\/\",\"name\":\"Rahul Kumar Khandelwal\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#authorImage\",\"url\":\"https:\\\/\\\/newersworld-sf-static.tothenew.net\\\/prod\\\/profilePicFolder\\\/cabb4262-b706-4e8d-a5e7-7dceb0a82a26_Rahul-Kumar-Khandelwal-Profile-Pitcure.jpeg\",\"width\":96,\"height\":96,\"caption\":\"Rahul Kumar Khandelwal\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#webpage\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/\",\"name\":\"How to setup SonarQube | TO THE NEW Blog\",\"description\":\"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it's usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-setup-sonarqube\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/rahul-khandelwal\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/rahul-khandelwal\\\/#author\"},\"datePublished\":\"2022-02-22T23:58:15+05:30\",\"dateModified\":\"2022-02-22T23:58:15+05:30\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\",\"name\":\"TO THE NEW Blog\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"How to setup SonarQube | TO THE NEW Blog","description":"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it's usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that","canonical_url":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#article","name":"How to setup SonarQube | TO THE NEW Blog","headline":"How to setup SonarQube","author":{"@id":"https:\/\/2thenew.online\/blog\/author\/rahul-khandelwal\/#author"},"publisher":{"@id":"https:\/\/2thenew.online\/blog\/#organization"},"image":{"@type":"ImageObject","url":"\/blog\/wp-ttn-blog\/uploads\/2022\/02\/Screenshot-from-2022-02-14-13-54-07-300x195.png","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#articleImage"},"datePublished":"2022-02-22T23:58:15+05:30","dateModified":"2022-02-22T23:58:15+05:30","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#webpage"},"isPartOf":{"@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#webpage"},"articleSection":"DevOps, Drupal, Software development, sonarqube"},{"@type":"BreadcrumbList","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog#listItem","position":1,"name":"Home","item":"https:\/\/2thenew.online\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/software-development\/#listItem","name":"Software development"}},{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/software-development\/#listItem","position":2,"name":"Software development","item":"https:\/\/2thenew.online\/blog\/category\/software-development\/","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#listItem","name":"How to setup SonarQube"},"previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#listItem","position":3,"name":"How to setup SonarQube","previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/software-development\/#listItem","name":"Software development"}}]},{"@type":"Organization","@id":"https:\/\/2thenew.online\/blog\/#organization","name":"TO THE NEW Blog","url":"https:\/\/2thenew.online\/blog\/"},{"@type":"Person","@id":"https:\/\/2thenew.online\/blog\/author\/rahul-khandelwal\/#author","url":"https:\/\/2thenew.online\/blog\/author\/rahul-khandelwal\/","name":"Rahul Kumar Khandelwal","image":{"@type":"ImageObject","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#authorImage","url":"https:\/\/newersworld-sf-static.tothenew.net\/prod\/profilePicFolder\/cabb4262-b706-4e8d-a5e7-7dceb0a82a26_Rahul-Kumar-Khandelwal-Profile-Pitcure.jpeg","width":96,"height":96,"caption":"Rahul Kumar Khandelwal"}},{"@type":"WebPage","@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#webpage","url":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/","name":"How to setup SonarQube | TO THE NEW Blog","description":"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it's usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/2thenew.online\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/#breadcrumblist"},"author":{"@id":"https:\/\/2thenew.online\/blog\/author\/rahul-khandelwal\/#author"},"creator":{"@id":"https:\/\/2thenew.online\/blog\/author\/rahul-khandelwal\/#author"},"datePublished":"2022-02-22T23:58:15+05:30","dateModified":"2022-02-22T23:58:15+05:30"},{"@type":"WebSite","@id":"https:\/\/2thenew.online\/blog\/#website","url":"https:\/\/2thenew.online\/blog\/","name":"TO THE NEW Blog","inLanguage":"en-US","publisher":{"@id":"https:\/\/2thenew.online\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"TO THE NEW BLOG","og:type":"blog","og:title":"How to setup SonarQube | TO THE NEW Blog","og:description":"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it's usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that","og:url":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/","og:image":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","og:image:secure_url":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","twitter:card":"summary","twitter:site":"@tothenew","twitter:title":"How to setup SonarQube | TO THE NEW Blog","twitter:description":"What is SonarQube? SonarQube is the code inspection tool that analyses and covers the code and generates reports for the areas that need to be improved to keep the code as clean as possible. Some of the advantages of it's usage includes: Catch tricky bugs to prevent undefined behaviour from impacting end-users Fix vulnerabilities that","twitter:image":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png"},"aioseo_meta_data":{"post_id":"54702","title":null,"description":null,"keywords":[],"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":[],"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":{"id":"#aioseo-article-65e0647cc6d32","slug":"article","graphName":"Article","label":"Article","properties":{"type":"BlogPosting","name":"#post_title","headline":"#post_title","description":"#post_excerpt","image":"","keywords":"","author":{"name":"#author_name","url":"#author_url"},"dates":{"include":true,"datePublished":"","dateModified":""}}},"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":"{\"article\":{\"articleType\":\"BlogPosting\"},\"course\":{\"name\":\"\",\"description\":\"\",\"provider\":\"\"},\"faq\":{\"pages\":[]},\"product\":{\"reviews\":[]},\"recipe\":{\"ingredients\":[],\"instructions\":[],\"keywords\":[]},\"software\":{\"reviews\":[],\"operatingSystems\":[]},\"webPage\":{\"webPageType\":\"WebPage\"}}","pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"limit_modified_date":false,"created":"2022-02-22 18:16:46","updated":"2024-02-29 11:03:24","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.online\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.online\/blog\/category\/software-development\/\" title=\"Software development\">Software development<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHow to setup SonarQube\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/2thenew.online\/blog"},{"label":"Software development","link":"https:\/\/2thenew.online\/blog\/category\/software-development\/"},{"label":"How to setup SonarQube","link":"https:\/\/2thenew.online\/blog\/how-to-setup-sonarqube\/"}],"_links":{"self":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts\/54702","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/users\/1428"}],"replies":[{"embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/comments?post=54702"}],"version-history":[{"count":2,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts\/54702\/revisions"}],"predecessor-version":[{"id":54720,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts\/54702\/revisions\/54720"}],"wp:attachment":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/media?parent=54702"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/categories?post=54702"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/tags?post=54702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}