title, generated_by, generated_at, human_edited, source_entity, source_repo
| title | generated_by | generated_at | human_edited | source_entity | source_repo |
|---|---|---|---|---|---|
| Petclinic Demo Application | documentor-agent | 2026-05-28T09:07:15+00:00 | false | Component/default/petclinic-demo-andrej4 | https://gitea.kyndemo.live/validate/petclinic-demo-andrej4 |
Overview
The Petclinic Demo Application is a deployment of the Spring PetClinic sample application, tailored for demonstration purposes. It showcases a modern Java-based microservice architecture, leveraging Spring Boot for rapid development and deployment. The application is deployed via ArgoCD into the demo-apps namespace and includes integrations for observability, load testing, and chaos engineering.
This service plays a critical role in demonstrating best practices for application lifecycle management, including CI/CD workflows, OpenTelemetry instrumentation, and Kubernetes-based deployments. It serves as a reference implementation for teams adopting similar technologies and workflows.
Repository
| Property | Value |
|---|---|
| Source Repo | Petclinic Demo Repository |
| Branch | main |
| ArgoCD App | petclinic-demo-andrej4 |
| Namespace | demo-apps |
Architecture
The Petclinic Demo Application is built on the Spring Boot framework and deployed as a containerized service in Kubernetes. Key architectural components include:
- Spring Boot Application: The core service, providing RESTful APIs and a web interface.
- Database: Configurable to use H2 (in-memory), MySQL, or PostgreSQL, depending on the active profile.
- OpenTelemetry Integration: Auto-instrumentation for tracing, metrics, and logs, exported to an OTel Collector.
- ArgoCD: Continuous deployment and synchronization from the
mainbranch. - K6 Load Testing: Configured for performance testing.
- Chaos Mesh: Enabled for chaos engineering experiments.
Data flows through the application from user interactions to backend services, with observability tools providing insights into performance and reliability.
Configuration
| Configuration Item | Description |
|---|---|
spring.profiles.active |
Sets the active profile (default, mysql, postgres). |
OTel Collector URL |
http://otel-collector.monitoring.svc.cluster.local:4318 |
Database URL |
Configurable for H2, MySQL, or PostgreSQL. |
K6 ConfigMap |
k6-test-petclinic-demo-andrej4 |
Operations
Deployment
- Clone the repository:
git clone https://gitea.kyndemo.live/validate/petclinic-demo-andrej4.git cd petclinic-demo-andrej4 - Push changes to the
mainbranch:git add . && git commit -m "your change" && git push origin main - ArgoCD will automatically sync changes to the
demo-appsnamespace.
Rollback
- Open the ArgoCD UI.
- Click History and Rollback.
- Select the desired revision and click Rollback.
Alternatively, revert the commit in Git and push — ArgoCD will auto-sync the rollback.
Observability
This service is fully instrumented with OpenTelemetry. Observability data is visualized in Grafana.
- Grafana Dashboard: View Dashboard
- Alerting: Configured via Grafana with label selector
app.kubernetes.io/instance=petclinic-demo-andrej4.
Not configured — see platform observability docs for additional details.
Dependencies
component:default/argocd-serviceresource:default/k6-operatorresource:default/otel-collector