feat: modernize application — source, platform artifacts, CI/CD
- chore: ingest source code 108 files from https://github.com/spring-projects/spring-petclinic - feat: add platform deployment artifacts - feat: add CI/CD workflow automation
This commit is contained in:
25
docs/api.md
Normal file
25
docs/api.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# API Reference
|
||||
|
||||
## Endpoints
|
||||
|
||||
### Health Check
|
||||
|
||||
```
|
||||
GET /health
|
||||
```
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{"status": "UP", "service": "jonathan-demo-02"}
|
||||
```
|
||||
|
||||
### Root
|
||||
|
||||
```
|
||||
GET /
|
||||
```
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{"service": "jonathan-demo-02", "description": "Modernized jonathan-demo-02 service", "version": "1.0.0"}
|
||||
```
|
||||
15
docs/architecture.md
Normal file
15
docs/architecture.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# Architecture
|
||||
|
||||
## Service Design
|
||||
|
||||
jonathan-demo-02 is a microservice following cloud-native patterns.
|
||||
|
||||
## Technology Stack
|
||||
|
||||
- **Runtime**: Java Spring Boot
|
||||
- **Deployment**: Humanitec Platform Orchestrator
|
||||
- **CI/CD**: Gitea Actions → ACR → Humanitec
|
||||
|
||||
## Dependencies
|
||||
|
||||
See `score.yaml` for external resource dependencies.
|
||||
32
docs/index.md
Normal file
32
docs/index.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# jonathan-demo-02
|
||||
|
||||
Modernized jonathan-demo-02 service
|
||||
|
||||
## Overview
|
||||
|
||||
This service is built with **Java Spring Boot** and follows the Golden Path architecture patterns.
|
||||
|
||||
### Key Features
|
||||
|
||||
- 🚀 Production-ready configuration
|
||||
- 📊 Prometheus metrics exposed
|
||||
- 🏥 Health check endpoints
|
||||
- 🔒 Security scanning in CI/CD
|
||||
- 📦 Containerized deployment
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
git clone https://gitea.kyndemo.live/kyndryl-demos/jonathan-demo-02.git
|
||||
cd jonathan-demo-02
|
||||
```
|
||||
|
||||
## Monitoring
|
||||
|
||||
- **Metrics**: Prometheus metrics at `/metrics`
|
||||
- **Health**: `/health`
|
||||
- **Grafana**: [View Dashboard](https://grafana.kyndemo.live/d/app-jonathan-demo-02)
|
||||
|
||||
## Support
|
||||
|
||||
Contact the Platform Engineering team.
|
||||
42
docs/migration-plan.md
Normal file
42
docs/migration-plan.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Modernization Plan for jonathan-demo-02
|
||||
|
||||
## Application Type
|
||||
Java Application
|
||||
|
||||
## Selected Modernization Strategy
|
||||
- **Migration Approach**: containerize-optimize
|
||||
- **Target Platform**: humanitec-v2
|
||||
- **Observability**: ENABLED (Prometheus metrics, health checks, tracing)
|
||||
- **Security Scanning**: ENABLED (Trivy vulnerability scanning)
|
||||
|
||||
## Discovery Summary
|
||||
### Discovery Report
|
||||
|
||||
#### Application Overview
|
||||
The application appears to be a Java-based project using the Spring framework. It is structured with Maven and Gradle build systems, indicating flexibility in dependency management. The presence of Spring Boot starter dependencies suggests it is a web application, likely following the Spring Boot architecture.
|
||||
|
||||
#### Technology Stack
|
||||
- **Language**: Java
|
||||
- **Framework**: Spring Boot
|
||||
- **Build Tools**: Maven and Gradle
|
||||
- **Database**: H2 (in-memory),...
|
||||
|
||||
## Generated Artifacts
|
||||
1. **Dockerfile**: Optimized with health checks and metrics endpoints
|
||||
2. **score.yaml**: Platform intent with service ports and DNS resource
|
||||
3. **CI Workflow**: Automated build/push to ACR with Trivy security scanning
|
||||
|
||||
## Next Steps
|
||||
1. Review and customize generated artifacts
|
||||
2. Test container build and run
|
||||
3. Deploy to development environment using score.yaml
|
||||
4. Validate application functionality
|
||||
5. Promote to staging/production via Humanitec
|
||||
|
||||
## Migration Strategy Details
|
||||
|
||||
### Containerize Optimize
|
||||
Add cloud-native patterns: health checks, metrics, optimized base images.
|
||||
|
||||
### Platform: humanitec-v2
|
||||
score.yaml optimized for Azure Container Apps with managed scaling and Azure-specific configuration.
|
||||
Reference in New Issue
Block a user