Skip to content

SonarQube

Big Bang deploys SonarQube as the sonarqube add-on in the sonarqube namespace. The package wraps the upstream chart with Iron Bank images, FIPS-host compatibility options, bb-common ingress, network, and Istio resources, monitoring, OpenShift support, SAML bootstrap, and UI/SSO test support.

For SonarQube product use, project administration, quality gates, scanners, and full configuration, use the SonarQube documentation and the versioned upstream chart values.

Configuration entry points

Enable and configure the package through the umbrella’s canonical packages.sonarqube configuration. The legacy addons.sonarqube path remains supported for compatibility. Big Bang owns package source selection, namespace, image-pull credentials, dependency ordering, and the package-to-chart values mapping; this repository owns the chart values consumed by the release.

Use the package upstream value only for settings passed to the bundled upstream chart. The wrapper’s values.yaml contains the Big Bang overrides and links to the complete upstream values surface; do not copy upstream defaults into an umbrella override. Package-specific SSO, OpenShift, and test values are top-level chart values. Shared Istio, route, and network-policy values are under the bb-common key.

Prerequisites and persistence

SonarQube includes Elasticsearch and needs Linux kernel limits on every node where its pod can be scheduled. Configure the host through the operating-system or cluster provisioning workflow before installation; do not use a privileged application init container to modify node settings. Follow the SonarQube Linux host prerequisites for the version in use.

Use persistent storage appropriate for the workload. For production, use a supported external PostgreSQL database. The umbrella supplies the external database connection details and creates the JDBC Secret when all database fields are configured. Treat the database credentials and Secret, SonarQube version, schema migration, and verified backups as one upgrade boundary. See database guidance and the upgrade guide.

This chart supports only replicaCount: 0 or 1; do not connect multiple SonarQube instances to the same database. Quiesce the existing instance before a database migration or cutover.

Security and SSO

Big Bang keeps forced authentication and disabled telemetry in its SonarQube properties. Properties supplied by an operator can override UI configuration, so preserve those controls and the FIPS Java options when replacing the properties or environment map. SonarQube is not FIPS compatible; Big Bang sets -Dcom.redhat.fips=false for FIPS-enabled Kubernetes hosts.

When SAML SSO is enabled with Keycloak, the umbrella supplies the SAML client and attribute mapping and makes SonarQube depend on Keycloak. The chart’s pre-install/pre-upgrade Job retrieves trusted IdP metadata and writes the SAML certificate Secret using namespace-scoped RBAC. Review IdP URL trust, required egress, certificate lifecycle, redirect URI, and SAML attributes together. Use the SAML integration guide for Big Bang-specific behavior and the SonarQube SAML documentation for product configuration.

Upgrade notice: bb-common values

This release moves the chart’s shared Big Bang settings from the former top-level istio, routes, and networkPolicies keys to bb-common.istio, bb-common.routes, and bb-common.networkPolicies. Update existing SonarQube overrides before upgrading; the former paths are not aliases and are no longer consumed. The wrapper-only networkPolicies.egressHttps key is also removed; express required egress through the corresponding bb-common definition and route values.

The Big Bang 4.0 compatibility migration for packages.sonarqube.values.networkPolicies.allowEgress.enabled is removed. That legacy switch no longer enables marketplace or repository egress. Configure only the required traffic through bb-common.networkPolicies definitions and bb-common.routes.outbound; explicitly enable marketplace egress when plugins require it. Legacy istio.hardened.customServiceEntries and istio.hardened.customAuthorizationPolicies overrides are no longer migrated; move them to bb-common.istio.serviceEntries.custom and bb-common.istio.authorizationPolicies.custom, respectively.

Ingress, mesh, and network policy

The package publishes an inbound route for sonarqube.<domain> through the selected Istio gateway. The umbrella maps its gateway selection and enables Istio dependencies; the chart renders route, Istio, and network-policy resources from bb-common.routes, bb-common.istio, and bb-common.networkPolicies. When network policies are enabled, explicitly allow only the required database, IdP, code-repository, marketplace/plugin, test, and monitoring traffic. Marketplace plugins and repository integrations require intentional outbound access; review plugin provenance and compatibility rather than enabling unrestricted egress.

See network policy guidance and the bb-common integration guide.

Monitoring and operations

When umbrella monitoring is enabled, the chart enables the JMX exporter and renders a ServiceMonitor for the web, compute-engine, and system metrics endpoints. The umbrella adds the JMX service ports when Istio and monitoring are enabled. Protect the system passcode and verify the ServiceMonitor, network policy, and sidecar-versus-ambient TLS/scheme settings together. See Prometheus integration.

SonarQube MCP remains disabled because its image is not available in Iron Bank; the chart rejects upstream.mcp.enabled: true. OpenShift support uses the chart’s compatible security settings rather than custom SCCs. Before an upgrade, review the upstream release and upgrade notes, back up persistent data and the external database, validate in a representative environment, and plan rollback before running an irreversible schema migration.