Skip to content

Story 6 — SonarQube CI/CD Modernization

Use for: automation, CI/CD, Docker, Terraform, initiative, reducing manual work.

Search keywords: SonarQube CI/CD Docker Azure Web App Terraform automation manual deployment

30-second answer

At ZOI, a SonarQube deployment was mostly manual: build the Docker image, upload it to Azure Web App, and follow a sequence that was not properly documented. I rebuilt the process as a CI/CD pipeline. A version update triggered container build, registry push, Terraform plan and approval, database backup, and deployment. The result was a repeatable process with human approval retained where a decision was still needed.

STAR answer

Situation

At ZOI, we had a SonarQube deployment process that was mostly manual. The engineer had to build the Docker image manually, upload it to Azure Web App, and follow a sequence that was not properly documented.

The process depended heavily on whoever happened to perform the deployment.

Task

I wanted to make the deployment repeatable and reduce unnecessary manual work and operational risk.

Action

I rebuilt the process as a CI/CD pipeline.

The process starts with a version update in the repository and automatically:

  1. Builds the container image.
  2. Pushes it to the container registry.
  3. Runs a Terraform plan for review and approval.
  4. Backs up the database.
  5. Deploys the new container version.

The remaining manual decision was checking version compatibility.

Result

The deployment became repeatable and no longer depended on someone remembering a manual sequence of steps. It also introduced a proper review point through the Terraform plan before infrastructure changes were applied.

Lesson

Automation is not about automating everything. The real value is removing repetitive manual steps where human effort adds little value while keeping human approval where a decision or validation is important.