--- title: "sonar-test-nest4" generated_by: documentor-agent generated_at: "2026-05-15T15:19:48+00:00" human_edited: false source_entity: "Component/default/sonar-test-nest4" source_repo: "https://gitea.kyndemo.live/validate/sonar-test-nest4" --- ## Overview `sonar-test-nest4` is a stateless microservice built using the `typescript-nestjs` runtime. It was scaffolded from the **Create Microservice** golden-path template on the Kyndryl Platform. The service provides a RESTful API for managing items, including endpoints for creating, retrieving, updating, and deleting items. It is designed with observability in mind, exposing health and metrics endpoints for monitoring. This service plays a critical role in the demo-apps domain, adhering to a structured branch and promotion model (`dev → staging → prod → main`) to ensure quality and reliability across environments. It is deployed to Azure Kubernetes Service (AKS) via Humanitec, leveraging Score for deployment orchestration. ## Repository | Field | Value | |----------------|-----------------------------------------------------------------------------------------------------------------| | Source Repo | [sonar-test-nest4](https://gitea.kyndemo.live/validate/sonar-test-nest4) | | Branch | `dev` | | ArgoCD App | — | | Namespace | `dev` | ## Architecture `sonar-test-nest4` follows a modern microservice architecture: - **Runtime**: `typescript-nestjs` - **Container Port**: `3000` - **Endpoints**: - `/api/items` for CRUD operations on items. - `/health` for health checks. - `/metrics` for Prometheus-compatible metrics. - **Deployment Flow**: - CI/CD pipelines in Gitea Actions handle build, test, and deployment. - Images are pushed to Azure Container Registry (ACR). - Humanitec API orchestrates deployments to AKS using Score. The service is stateless and integrates seamlessly with the platform's observability stack, including OpenTelemetry instrumentation. ## Configuration | Config Key | Value | |------------------|--------------------| | `runtime` | `typescript-nestjs`| | `health_path` | `/health` | | `container_port` | `3000` | Additional configuration details are managed via `.platform/config.yaml` in the repository. ## Operations ### Deployment Steps 1. Push changes to the `dev` branch for automatic deployment to the dev environment. 2. Open a PR for promotion to `staging` or `prod`. Ensure CI tests pass and obtain one approval. 3. Merge PR to trigger deployment to the target environment. ### Runbook Notes - **Health Check**: Verify service health via `/health`. - **Metrics**: Monitor Prometheus metrics at `/metrics`. - **Promotion Flow**: - `dev → staging`: Requires CI gate and approval. - `staging → prod`: Requires CI gate and approval. - `prod → main`: Merge via PR after release. ## Observability - **Grafana Dashboard**: [Opentelemetry Application Observability](https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=sonar-test-nest4) - **Prometheus Metrics**: Exposed at `/metrics`. - **Health Endpoint**: `/health`. ## Dependencies - `api:default/sonar-test-nest4-api` ## Links - [Humanitec Console](https://console.humanitec.dev/orgs/skillful-wild-chicken-2617/projects/domain-demo-apps) - [Grafana Dashboard](https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=sonar-test-nest4) - [Source Repository](https://gitea.kyndemo.live/validate/sonar-test-nest4)