Determine your technical debt using SonarQube - What parts to use?

Sep 11, 2017

TL; DR

Planning, Sources, Build, deployment, testing: VSTS. Analysis: Azure VM (SonarQube), Azure SQL.

Parts of our software factory

Because we use a maximum of services cloud at 2toLead I realized the following installation:

  • Source control: VSTS (git or tfsvc, doesn’t matter)
  • Build system: build 2015 VSTS
  • Build machine: provided by VSTS as a service
  • SonarQube machine: Ubuntu Server hosted in Azure
  • Data SonarQube: Azure SQL Database, 10 DTU

Note that to facilitate the management of the SonarQube “box" we are going to install Docker on the ubuntu machine. Once docker installed, we’ll hydrate two containers, nginx and SonarQube.

Why docker? the philosophy of this article is that processing components are disposable (SonarQube as such). We can replace them quickly if they have stopped working or if a new version of SonarQube is available. Our data will reside in SQL Azure.

Estimated costs

  • VSTS: free because all our developers have MSDN accounts
  • Build machine: charged by the minute (4 hours available for free per month)
  • SonarQube machine: 60CAD per month
  • Database: 5 CAD per month

For 65CAD per month (with public prices), you can have a complete suite of software delivery with work management, source control, continuous integration, automated tests, automated deployments, and automated static analysis.

It took me about 1 hour to install and configure everything from start to finish, and I didn’t have this series of articles to guide me, it’s quite fast to set up.


Last edited Feb 19, 2024 by Vincent Biret


Tags: