docs: generate README for component/default/sonar-test-nest4 [documentor-agent]

This commit is contained in:
2026-05-21 08:46:08 +00:00
parent 5d2e668c68
commit ea04340ef8

View File

@@ -1,7 +1,7 @@
--- ---
title: "sonar-test-nest4" title: "sonar-test-nest4"
generated_by: documentor-agent generated_by: documentor-agent
generated_at: "2026-05-21T07:55:31+00:00" generated_at: "2026-05-21T08:45:51+00:00"
human_edited: false human_edited: false
source_entity: "Component/default/sonar-test-nest4" source_entity: "Component/default/sonar-test-nest4"
source_repo: "https://gitea.kyndemo.live/validate/sonar-test-nest4" source_repo: "https://gitea.kyndemo.live/validate/sonar-test-nest4"
@@ -9,69 +9,64 @@ source_repo: "https://gitea.kyndemo.live/validate/sonar-test-nest4"
## Overview ## 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 REST API for managing items, including CRUD operations, and is instrumented with OpenTelemetry for observability. It is designed to integrate seamlessly into the platform's CI/CD pipeline, leveraging Humanitec for deployment orchestration and Azure Container Registry for image storage. `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 REST API for managing items, including endpoints for CRUD operations. It is designed to be lightweight, scalable, and observable, with integrated OpenTelemetry instrumentation and Prometheus metrics.
The service plays a critical role in the demo-apps domain, showcasing best practices for microservice development, deployment, and observability. It is managed by the platform engineering team and adheres to a strict branch promotion model to ensure quality and stability across environments. This service plays a critical role in the demo-apps domain, serving as a testbed for platform capabilities such as CI/CD pipelines, observability, and load testing. It is managed via Humanitec and deployed to Azure Kubernetes Service (AKS) using Score-based configurations.
## Repository ## Repository
| Field | Value | | Field | Value |
|----------------|------------------------------------------------------------------------------------------------------------------------------------| |----------------|------------------------------------------------------------------------------------------------------------------------------------|
| Source Repo | [validate/sonar-test-nest4](https://gitea.kyndemo.live/validate/sonar-test-nest4) | | Source Repo | [sonar-test-nest4](https://gitea.kyndemo.live/validate/sonar-test-nest4) |
| Branch | `dev` | | Branch | `dev` |
| ArgoCD App | — | | ArgoCD App | — |
| Namespace | `dev` | | Namespace | `dev` |
## Architecture ## Architecture
`sonar-test-nest4` follows a modern microservice architecture: `sonar-test-nest4` follows a modern microservice architecture with the following components:
- **Runtime**: `typescript-nestjs` - **Runtime**: `typescript-nestjs`
- **Container Port**: `3000` - **Container Port**: `3000`
- **Endpoints**: - **Endpoints**:
- `/api/items` for CRUD operations on items. - `/api/items` for CRUD operations
- `/health` for health checks. - `/health` for health checks
- `/metrics` for Prometheus-compatible metrics. - `/metrics` for Prometheus metrics
- **Deployment Flow**: - **Deployment**:
- CI/CD pipelines in Gitea Actions handle build, test, and deployment. - Images are built and pushed to Azure Container Registry (ACR).
- Images are pushed to Azure Container Registry (`bstagecjotdevacr`). - Humanitec API triggers deployments to AKS using Score-based configurations.
- Humanitec orchestrates deployments to AKS using Score files. - **CI/CD**:
- Gitea Actions workflows (`build-push.yml` and `deploy-humanitec.yml`) automate build, test, and deployment processes.
The service is designed for scalability and observability, with OpenTelemetry instrumentation and Prometheus metrics exposed at `/metrics`. - Promotion between environments (`dev → staging → prod`) is gated by CI checks and manual approvals.
## Configuration ## Configuration
| Config Key | Value | | Config Key | Value |
|------------------|------------------| |------------------|--------------------|
| `runtime` | `typescript-nestjs` | | `runtime` | `typescript-nestjs` |
| `health_path` | `/health` | | `health_path` | `/health` |
| `container_port` | `3000` | | `container_port` | `3000` |
Additional configuration details are managed via `.platform/config.yaml` and Humanitec Score files. Additional configuration options are managed via `.platform/config.yaml` and Humanitec score files.
## Operations ## Operations
### Deployment Steps ### Deployment Flow
1. Push changes to the `dev` branch for automatic deployment to the development environment. 1. Push changes to the `dev` branch to trigger automatic builds and deployments to the dev environment.
2. Open a PR for promotion to `staging` or `prod`. Ensure CI tests pass and obtain one approval. 2. Promote changes to `staging` or `prod` via PRs, requiring CI checks and one approval.
3. Merge PR to trigger deployment to the target environment. 3. Use Backstage's CI/CD tab to monitor and trigger promotions between environments.
### Runbook Notes ### Runbook Notes
- **Health Check**: Verify service health at `/health`. - **Health Check**: Verify service health via `/health`.
- **Metrics**: Monitor Prometheus metrics at `/metrics`. - **Metrics**: Access Prometheus metrics at `/metrics`.
- **Promotion Flow**: - **Load Testing**: K6 is enabled for load testing, with configurations stored in the `k6-test-sonar-test-nest4` ConfigMap.
- `dev → staging`: Requires CI gate and approval.
- `staging → prod`: Requires CI gate and approval.
- `prod → main`: Merge via PR after release.
## Observability ## 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) - **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`. - **Prometheus Metrics**: Exposed at `/metrics` on port `3000`.
_Chaos Mesh and K6 load testing are enabled for this service._
## Dependencies ## Dependencies