feat: enhance TSYSDevStack SupportStack MVP prompt with specific images, health checks, validation, and port configs
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
		| @@ -39,16 +39,28 @@ Create a proof of concept with docker-socket-proxy, homepage, and wakaapi compon | |||||||
| - Resource utilization must be within specified limits before moving to the next component | - Resource utilization must be within specified limits before moving to the next component | ||||||
| - Integration tests with previously completed components must pass before moving forward | - Integration tests with previously completed components must pass before moving forward | ||||||
| - Homepage must automatically detect and display all services with proper labels | - Homepage must automatically detect and display all services with proper labels | ||||||
|  | - Specific validation checkpoints after each service deployment: | ||||||
|  |   - docker-socket-proxy: Validate Docker socket access and network connectivity to Docker daemon | ||||||
|  |   - homepage: Validate homepage starts and can connect to Docker socket proxy, verify UI is accessible | ||||||
|  |   - wakaapi: Validate service starts and can be integrated into homepage with proper labels | ||||||
|  | - Each service must be validated in homepage dashboard after integration | ||||||
|  | - Update STATUS.md with validation results for each component | ||||||
|  |  | ||||||
| ## Technical Specifications | ## Technical Specifications | ||||||
| - No Bitnami images allowed | - No Bitnami images allowed | ||||||
| - Use official or trusted repository images only | - Use official or trusted repository images only: | ||||||
|  |   - docker-socket-proxy: tecnativa/docker-socket-proxy (pinned version tag) | ||||||
|  |   - homepage: gethomepage/homepage (pinned version tag) | ||||||
|  |   - wakaapi: ghcr.io/ekkinox/wakaapi (pinned version tag) | ||||||
| - Implement Docker Compose orchestration | - Implement Docker Compose orchestration | ||||||
| - Use Docker named volumes for ephemeral storage | - Use Docker named volumes for ephemeral storage | ||||||
| - Implement proper resource limits in docker-compose.yml: CPU: 0.5-1.0 cores per service, Memory: 128MB-512MB per service (variable based on service type), Disk: 1GB per service for ephemeral volumes | - Implement proper resource limits in docker-compose.yml: CPU: 0.5-1.0 cores per service, Memory: 128MB-512MB per service (variable based on service type), Disk: 1GB per service for ephemeral volumes | ||||||
| - Implement comprehensive health checks for all services with appropriate intervals and timeouts | - Implement comprehensive health checks for all services with appropriate intervals and timeouts | ||||||
| - Implement proper networking (internal only) | - Implement proper networking (internal only) | ||||||
| - All ports bound to localhost (127.0.0.1) | - All ports bound to localhost (127.0.0.1) with specific port assignments: | ||||||
|  |   - docker-socket-proxy: Internal network only, no external ports exposed | ||||||
|  |   - homepage: Port 3000 (localhost only) - configurable via environment variable | ||||||
|  |   - wakaapi: Port 3001 (localhost only) - configurable via environment variable | ||||||
| - All environment variables must be pre-set in TSYSDevStack-SupportStack-Demo-Settings file (single settings file for simplicity in demo) | - All environment variables must be pre-set in TSYSDevStack-SupportStack-Demo-Settings file (single settings file for simplicity in demo) | ||||||
| - All docker compose files (one per component) should be prefixed with: TSYSDevStack-SupportStack-Demo-DockerCompose- | - All docker compose files (one per component) should be prefixed with: TSYSDevStack-SupportStack-Demo-DockerCompose- | ||||||
| - All docker compose files should use environment variables for everything (variables will be set in TSYSDevStack-SupportStack-Demo-Settings file) | - All docker compose files should use environment variables for everything (variables will be set in TSYSDevStack-SupportStack-Demo-Settings file) | ||||||
| @@ -74,6 +86,9 @@ Create a proof of concept with docker-socket-proxy, homepage, and wakaapi compon | |||||||
|  |  | ||||||
| ## Component Definition of Done | ## Component Definition of Done | ||||||
| - All health checks pass consistently for each component | - All health checks pass consistently for each component | ||||||
|  |   - docker-socket-proxy: HTTP health check on / (internal only) | ||||||
|  |   - homepage: HTTP health check on /api/health (internal only) | ||||||
|  |   - wakaapi: HTTP health check on /health (internal only) | ||||||
| - Test suite passes with 100% success rate (unit, integration, e2e) | - Test suite passes with 100% success rate (unit, integration, e2e) | ||||||
| - Code coverage of >75% for each component | - Code coverage of >75% for each component | ||||||
| - Resource limits properly implemented and validated (CPU: 0.5-1.0 cores, Memory: 128MB-512MB, Disk: 1GB per service) | - Resource limits properly implemented and validated (CPU: 0.5-1.0 cores, Memory: 128MB-512MB, Disk: 1GB per service) | ||||||
| @@ -89,6 +104,7 @@ Create a proof of concept with docker-socket-proxy, homepage, and wakaapi compon | |||||||
| - All dependencies properly specified and resolved using depends_on with health checks | - All dependencies properly specified and resolved using depends_on with health checks | ||||||
| - Component properly labeled with homepage integration labels (homepage.group, homepage.name, homepage.icon, etc.) | - Component properly labeled with homepage integration labels (homepage.group, homepage.name, homepage.icon, etc.) | ||||||
| - Container uses pinned image tags rather than 'latest' | - Container uses pinned image tags rather than 'latest' | ||||||
|  | - Services validate properly in homepage after integration | ||||||
|  |  | ||||||
| ## Testing Requirements | ## Testing Requirements | ||||||
| - Unit tests for each component configuration | - Unit tests for each component configuration | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user