Files
platform-docs/catalog/component/default/petclinic-demo-jonathan-scaf-2/README.md

3.4 KiB
Raw Blame History

title, generated_by, generated_at, human_edited, source_entity, source_repo
title generated_by generated_at human_edited source_entity source_repo
Petclinic Demo Jonathan Scaf 2 documentor-agent 2026-05-05T11:02:41+00:00 false Component/default/petclinic-demo-jonathan-scaf-2 https://gitea.kyndemo.live/validate/petclinic-demo-jonathan-scaf-2

Petclinic Demo Jonathan Scaf 2

A Spring Bootbased veterinary clinic application deployed via ArgoCD into the demo-apps namespace.

Overview

Petclinic Demo Jonathan Scaf 2 is a deployment of the Spring PetClinic application, a sample project showcasing Spring Boot capabilities. This service provides a web-based interface for managing veterinary clinic operations, including scheduling appointments, managing pet records, and tracking visits. It is designed to demonstrate modern application deployment practices, including GitOps workflows, OpenTelemetry instrumentation, and integration with Kubernetes.

The application is scaffolded using the Backstage Application Migration Factory template, which overlays CI/CD workflows and observability configurations. It is continuously deployed via ArgoCD, ensuring that changes pushed to the repository are automatically synced to the Kubernetes cluster.

Repository

Field Value
Source Repo Petclinic Demo Jonathan Scaf 2
Branch main
ArgoCD App petclinic-demo-jonathan-scaf-2
Namespace demo-apps

Architecture

  • The application is based on the Spring PetClinic project, cloned from https://github.com/spring-projects/spring-petclinic.
  • OpenTelemetry auto-instrumentation is applied via Kustomize overlays, enabling detailed observability for traces, metrics, and logs.
  • ArgoCD manages the deployment, continuously syncing changes from the main branch to the demo-apps namespace.
  • The deployment flow includes CI workflows, Kubernetes manifests, and observability configurations integrated into the repository.

Configuration

Configuration Description
spring.profiles.active Specifies the active Spring profile (mysql, postgres, or default h2).
Database URLs jdbc:h2:mem:<uuid> for H2, or Docker-based MySQL/PostgreSQL configurations.
OpenTelemetry Endpoint http://otel-collector.monitoring.svc.cluster.local:4318

Operations

  • Development Workflow:

    git clone https://gitea.kyndemo.live/validate/petclinic-demo-jonathan-scaf-2.git
    cd petclinic-demo-jonathan-scaf-2
    # make changes, then:
    git add . && git commit -m "your change" && git push origin main
    

    ArgoCD automatically syncs changes to the demo-apps namespace.

  • Rollback:

    1. Open the ArgoCD UI.
    2. Click History and Rollback.
    3. Select the desired revision and click Rollback. Alternatively, revert the commit in Git and push — ArgoCD will auto-sync the rollback.

Observability

Dependencies

  • component:default/argocd-service
  • resource:default/k6-operator
  • resource:default/otel-collector
  • resource:default/veterinary-platform